File: 11gp-3-Engel-Id-i

package info (click to toggle)
gap-anupq 3.3.1-1
  • links: PTS
  • area: main
  • in suites: trixie
  • size: 8,076 kB
  • sloc: ansic: 15,243; xml: 5,208; sh: 1,611; makefile: 275; perl: 260; javascript: 155
file content (22 lines) | stat: -rw-r--r-- 904 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#Example: "11gp-3-Engel-Id-i" . . . 3-Engel grp for prime 11
#Variation of "11gp-3-Engel-Id" broken down into its lower-level component
#command parts.
#vars: F, a, b, G, f, procId, Q;
#options: 
F := FreeGroup("a", "b"); a := F.1; b := F.2;
G := F/[ a^11, b^11 ];
## All word pairs u, v in the pc generators of the 11-quotient Q of G 
## must satisfy the Engel identity: [u, v, v, v] = 1.
f := function(u, v) return PqLeftNormComm( [u, v, v, v] ); end;
procId := PqStart( G : Prime := 11 );
PqPcPresentation( procId : ClassBound := 1);;
PqEvaluateIdentities( procId : Identities := [f] );;
for c in [2 .. 4] do
  PqNextClass( procId : Identities := [] ); #reset `Identities' option
  PqEvaluateIdentities( procId : Identities := [f] );
od;
Q := PqCurrentGroup( procId );
## We do a ``sample'' check that pairs of elements of Q do satisfy
## the given identity:
f( Random(Q), Random(Q) );
f( Q.1, Q.2 );