-2

我在 GAP 的环境中有以下输入:

在此处输入图像描述

我想检查我的自由组的某个元素是否组中,所以我使用了代码:

    > a in e;

并期望得到

    [ true

但它没有用:

    [ false

但是当我手动消除上图中的长绿色 [ 时,答案就很清楚了:

在此处输入图像描述

我可以请求帮助不要用手做吗?谢谢。

编辑:这是我为两个生成器的免费组所做的代码。看看最后的结果。

在此处输入图像描述

4

1 回答 1

1

实际上,GAP 在这里表现正确:a是 的元素f而不是w. 如果您想访问新创建的有限呈现组的生成器,请使用GeneratorsOfGroup(w)获取它们的列表。

一个基于原始问题的示例,同时也演示了如何使用ParseRelators来简化输入:

gap> f:=FreeGroup("a","b");
<free group on the generators [ a, b ]>
gap> w:=f/ParseRelators(f,"a^2,b^3,(ab)^4");
<fp group on the generators [ a, b ]>
gap> Size(w);
24
gap> e:=Elements(w);
[ <identity ...>, a*b*a*b^-1*a*b, b, (a*b)^2, b*a*b^-1*a*b, a*b^-1*a*b*a, 
  b^-1*a*b^-1, a, b^-1, a*b^-1*a, a*b*a*b^-1, (a*b^-1)^2, a*b*a*b^-1*a, 
  b*a*b^-1, b^-1*a, b*a*b, b*a*b^-1*a, a*b^-1*a*b, b^-1*a*b*a, a*b^-1, b*a, 
  a*b, a*b*a, b^-1*a*b ]
gap> gens:=GeneratorsOfGroup(w);
[ a, b ]
gap> a:=gens[1];
a
gap> a in e;
true

现在相当技术细节:确实,a来自fa来自w属于不同的家庭:

gap> FamilyObj(GeneratorsOfGroup(f)[1]) = FamilyObj(GeneratorsOfGroup(w)[1]);
false

这就是为什么你要false进入你的例子。

于 2013-08-08T22:56:30.827 回答