diff --git a/books/bookvol10.3.pamphlet b/books/bookvol10.3.pamphlet
index 27d1d8a..3d9290d 100644
--- a/books/bookvol10.3.pamphlet
+++ b/books/bookvol10.3.pamphlet
@@ -99529,8 +99529,104 @@ Permutation(S:SetCategory): public == private where
 )set message auto off
 )clear all
 
---S 1 of 1
-)show PermutationGroup
+--S 1 of 68
+x : PERM INT := [[1,3,5],[7,11,9]]
+--R 
+--R
+--R   (1)  (1 3 5)(7 11 9)
+--R                                                   Type: Permutation(Integer)
+--E 1
+
+--S 2 of 68
+y : PERM INT := [[3,5,7,9]]
+--R 
+--R
+--R   (2)  (3 5 7 9)
+--R                                                   Type: Permutation(Integer)
+--E 2
+
+--S 3 of 68
+z : PERM INT := [1,3,11]
+--R 
+--R
+--R   (3)  (1 3 11)
+--R                                                   Type: Permutation(Integer)
+--E 3
+
+--S 4 of 68
+g1 : PERMGRP INT := [ x , y ]
+--R 
+--R
+--R   (4)  <(1 3 5)(7 11 9),(3 5 7 9)>
+--R                                              Type: PermutationGroup(Integer)
+--E 4
+
+--S 5 of 68
+g2 : PERMGRP INT := [ x , z ]
+--R 
+--R
+--R   (5)  <(1 3 5)(7 11 9),(1 3 11)>
+--R                                              Type: PermutationGroup(Integer)
+--E 5
+
+--S 6 of 68
+g3 : PERMGRP INT := [ y , z ]
+--R 
+--R
+--R   (6)  <(3 5 7 9),(1 3 11)>
+--R                                              Type: PermutationGroup(Integer)
+--E 6
+
+--S 7 of 68
+order g1
+--R 
+--R
+--R   (7)  720
+--R                                                        Type: PositiveInteger
+--E 7
+
+--S 8 of 68
+degree g3
+--R 
+--R
+--R   (8)  6
+--R                                                        Type: PositiveInteger
+--E 8
+
+--S 9 of 68
+movedPoints g2
+--R 
+--R
+--R   (9)  {1,3,5,7,9,11}
+--R                                                           Type: Set(Integer)
+--E 9
+
+--S 10 of 68
+orbit (g1, 3)
+--R 
+--R
+--R   (10)  {1,3,5,7,9,11}
+--R                                                           Type: Set(Integer)
+--E 10
+
+--S 11 of 68
+orbits g3
+--R 
+--R
+--R   (11)  {{1,3,5,7,9,11}}
+--R                                                      Type: Set(Set(Integer))
+--E 11
+
+--S 12 of 68
+member? ( y , g2 )
+--R 
+--R
+--R   (12)  false
+--R                                                                Type: Boolean
+--E 12
+
+--S 13 of 68
+)sh PERMGRP
 --R 
 --R PermutationGroup(S: SetCategory)  is a domain constructor
 --R Abbreviation for PermutationGroup is PERMGRP 
@@ -99561,27 +99657,1031 @@ Permutation(S:SetCategory): public == private where
 --R wordInStrongGenerators : (Permutation(S),%) -> List(NonNegativeInteger)
 --R wordsForStrongGenerators : % -> List(List(NonNegativeInteger))
 --R
---E 1
+--E 13
+
+)spool
+)lisp (bye)
+\end{chunk}
+\begin{chunk}{PermutationGroup.help}
+====================================================================
+PermutationGroup examples
+====================================================================
+
+PermutationGroup implements permutation groups acting on a set S, 
+i.e. all subgroups of the symmetric group of S, represented as a list 
+of permutations (generators). Note that therefore the objects are not 
+members of the Axiom category Group.
+
+Using the idea of base and strong generators by Sims, basic routines 
+and algorithms are implemented so that the word problem for permutation 
+groups can be solved.
+
+   x : PERM INT := [[1,3,5],[7,11,9]]
+
+      (1 3 5)(7 11 9)
+
+   y : PERM INT := [[3,5,7,9]]
+
+      (3 5 7 9)
+
+   z : PERM INT := [1,3,11]
+
+      (1 3 11)
+
+   g1 : PERMGRP INT := [ x , y ]
+
+      <(1 3 5)(7 11 9),(3 5 7 9)>
+
+   g2 : PERMGRP INT := [ x , z ]
+
+      <(1 3 5)(7 11 9),(1 3 11)>
+
+   g3 : PERMGRP INT := [ y , z ]
+
+      <(3 5 7 9),(1 3 11)>
+
+   order g1
+
+      720
+
+   degree g3
+
+      6
+
+   movedPoints g2
+
+      {1,3,5,7,9,11}
+
+   orbit (g1, 3)
+
+      {1,3,5,7,9,11}
+
+   orbits g3
+
+      {{1,3,5,7,9,11}}
+
+   member? ( y , g2 )
+
+      false
+
+See Also:
+o )show PermutationGroup
+o )help coerce
+o )help generators
+o )help elt
+o )help random
+o )help order
+o )help degree
+o )help base
+o )help wordsForStrongGenerators
+o )help permutationGroup
+o )help orbit
+o )help orbits
+o )help member?
+o )help wordInStrongGenerators
+o )help wordInGenerators
+o )help movedPoints
+o )help initializeGroupForWordProblem
+
+\end{chunk}
+
+\begin{chunk}{coerce.help}
+====================================================================
+coerce from PermutationGroup (PERMGRP)
+====================================================================
+
+NAME
+====
+
+   coerce
+
+DOMAIN
+======
+
+   PermutationGroup (PERMGRP)
+
+SYNOPSYS
+========
+
+   coerce : % -> List Permutation SetCategory
+   coerce : List Permutation SetCategory  -> %
+
+DESCRIPTION
+===========
+
+   coerce : % -> List Permutation SetCategory
+
+     coerce(gp) returns the generators of the group gp.
+
+   coerce : List Permutation SetCategory  -> %
+
+      coerce(ls) coerces a list of permutations ls to the group
+      generated by this list.
+
+ARGUMENTS
+=========
+
+RETURN VALUE
+============
+
+EXAMPLES
+========
+
+   x : PERM INT := [[1,3,5],[7,11,9]]
+
+      (1 3 5)(7 11 9)
+
+   y : PERM INT := [[3,5,7,9]]
+
+      (3 5 7 9)
+
+   z : PERM INT := [1,3,11]
+
+      (1 3 11)
+
+   g1 : PERMGRP INT := [ x , y ]
+
+      <(1 3 5)(7 11 9),(3 5 7 9)>
+
+   g2 : PERMGRP INT := [ x , z ]
+
+      <(1 3 5)(7 11 9),(1 3 11)>
+
+   g3 : PERMGRP INT := [ y , z ]
+
+      <(3 5 7 9),(1 3 11)>
+
+NOTES
+=====
+
+REFERENCES
+==========
+
+SEE ALSO
+========
+
+o )show PermutationGroup
+o )d op coerce
+
+\end{chunk}
+
+\begin{chunk}{generators.help}
+====================================================================
+generators from PermutationGroup (PERMGRP)
+====================================================================
+
+NAME
+====
+
+   generators 
+
+DOMAIN
+======
+
+   PermutationGroup (PERMGRP)
+
+SYNOPSYS
+========
+
+   generators : % -> List Permuation SetCategory
+
+     generators(gp) returns the generators of the group gp.
+
+DESCRIPTION
+===========
+
+ARGUMENTS
+=========
+
+RETURN VALUE
+============
+
+EXAMPLES
+========
+
+NOTES
+=====
+
+REFERENCES
+==========
+
+SEE ALSO
+========
+
+o )show PermutationGroup
+o )d op generators
+
+\end{chunk}
+
+\begin{chunk}{elt.help}
+====================================================================
+elt from PermutationGroup (PERMGRP)
+====================================================================
+
+NAME
+====
+
+   elt
+
+DOMAIN
+======
+
+   PermutationGroup (PERMGRP)
+
+SYNOPSYS
+========
+
+   elt : (%,NonNegativeInteger) -> Permutation SetCategory
+
+     elt(gp,i) returns the i-th generator of the group gp.
+
+DESCRIPTION
+===========
+
+ARGUMENTS
+=========
+
+RETURN VALUE
+============
+
+EXAMPLES
+========
+
+NOTES
+=====
+
+REFERENCES
+==========
+
+SEE ALSO
+========
+
+o )show PermutationGroup
+o )d op elt
+
+\end{chunk}
+
+\begin{chunk}{random.help}
+====================================================================
+random from PermutationGroup (PERMGRP)
+====================================================================
+
+NAME
+====
+
+   random
+
+DOMAIN
+======
+
+   PermutationGroup (PERMGRP)
+
+SYNOPSYS
+========
+
+    random : (%,Integer) -> Permutation SetCategory
+
+      random(gp,i) returns a random product of maximal i generators
+      of the group gp.
+
+    random : % -> Permutation SetCategory
+
+      random(gp) returns a random product of maximal 20 generators
+      of the group gp.
+      Note: random(gp)=random(gp,20).
+
+DESCRIPTION
+===========
+
+ARGUMENTS
+=========
+
+RETURN VALUE
+============
+
+EXAMPLES
+========
+
+NOTES
+=====
+
+REFERENCES
+==========
+
+SEE ALSO
+========
+
+o )show PermutationGroup
+o )d op random
+
+\end{chunk}
+
+\begin{chunk}{order.help}
+====================================================================
+order from PermutationGroup (PERMGRP)
+====================================================================
+
+NAME
+====
+
+   order
+
+DOMAIN
+======
+
+   PermutationGroup (PERMGRP)
+
+SYNOPSYS
+========
+
+   order : % -> NonNegativeInteger
+
+      order(gp) returns the order of the group gp.
+
+DESCRIPTION
+===========
+
+ARGUMENTS
+=========
+
+RETURN VALUE
+============
+
+EXAMPLES
+========
+
+   x : PERM INT := [[1,3,5],[7,11,9]]
+
+      (1 3 5)(7 11 9)
+
+   y : PERM INT := [[3,5,7,9]]
+
+      (3 5 7 9)
+
+   g : PERMGRP INT := [ x , y ]
+
+      <(1 3 5)(7 11 9),(3 5 7 9)>
+
+   order g
+
+      720
+
+NOTES
+=====
+
+REFERENCES
+==========
+
+SEE ALSO
+========
+
+o )show PermutationGroup
+o )d op order
+
+\end{chunk}
+
+\begin{chunk}{degree.help}
+====================================================================
+degree from PermutationGroup (PERMGRP)
+====================================================================
+
+NAME
+====
+
+   degree
+
+DOMAIN
+======
+
+   PermutationGroup (PERMGRP)
+
+SYNOPSYS
+========
+
+   degree : % -> NonNegativeInteger
+
+      degree(gp) returns the number of points moved by all permutations
+      of the group gp.
+
+DESCRIPTION
+===========
+
+ARGUMENTS
+=========
+
+RETURN VALUE
+============
+
+EXAMPLES
+========
+
+   y : PERM INT := [[3,5,7,9]]
+
+      (3 5 7 9)
+
+   z : PERM INT := [1,3,11]
+
+      (1 3 11)
+
+   g : PERMGRP INT := [ y , z ]
+
+      <(3 5 7 9),(1 3 11)>
+
+   degree g
+
+      6
+
+NOTES
+=====
+
+REFERENCES
+==========
+
+SEE ALSO
+========
+
+o )show PermutationGroup
+o )d op degree
+
+\end{chunk}
+  
+\begin{chunk}{base.help}
+====================================================================
+base from PermutationGroup (PERMGRP)
+====================================================================
+
+NAME
+====
+
+   base
+
+DOMAIN
+======
+
+   PermutationGroup (PERMGRP)
+
+SYNOPSYS
+========
+
+   base : % -> List SetCategory
+
+      base(gp) returns a base for the group gp.
+
+DESCRIPTION
+===========
+
+ARGUMENTS
+=========
+
+RETURN VALUE
+============
+
+EXAMPLES
+========
+
+NOTES
+=====
+
+REFERENCES
+==========
+
+SEE ALSO
+========
+
+o )show PermutationGroup
+o )d op base
+
+\end{chunk}
+  
+\begin{chunk}{wordsForStrongGenerators.help}
+====================================================================
+wordsForStrongGenerators from PermutationGroup (PERMGRP)
+====================================================================
+
+NAME
+====
+
+   wordsForStrongGenerators 
+
+DOMAIN
+======
+
+   PermutationGroup (PERMGRP)
+
+SYNOPSYS
+========
+
+   wordsForStrongGenerators : % -> List List NonNegativeInteger
+
+      wordsForStrongGenerators(gp) returns the words for the strong
+      generators of the group gp in the original generators of
+      gp, represented by their indices in the list, given by
+      generators.
+
+DESCRIPTION
+===========
+
+ARGUMENTS
+=========
+
+RETURN VALUE
+============
+
+EXAMPLES
+========
+
+NOTES
+=====
+
+REFERENCES
+==========
+
+SEE ALSO
+========
+
+o )show PermutationGroup
+o )d op wordsForStrongGenerators 
+
+\end{chunk}
+  
+\begin{chunk}{permutationGroup.help}
+====================================================================
+permutationGroup from PermutationGroup (PERMGRP)
+====================================================================
+
+NAME
+====
+
+   permutationGroup 
+
+DOMAIN
+======
+
+   PermutationGroup (PERMGRP)
+
+SYNOPSYS
+========
+
+   permutationGroup : List Permutation SetCategory  -> %
+
+      permutationGroup(ls) coerces a list of permutations ls to
+      the group generated by this list.
+
+DESCRIPTION
+===========
+
+ARGUMENTS
+=========
+
+RETURN VALUE
+============
+
+EXAMPLES
+========
+
+NOTES
+=====
+
+REFERENCES
+==========
+
+SEE ALSO
+========
+
+o )show PermutationGroup
+o )d op permutationGroup
+
+\end{chunk}
+
+\begin{chunk}{orbit.help}
+====================================================================
+orbit from PermutationGroup (PERMGRP)
+====================================================================
+
+NAME
+====
+
+   orbit 
+
+DOMAIN
+======
+
+   PermutationGroup (PERMGRP)
+
+SYNOPSYS
+========
+
+   orbit : (%,SetCategory) -> Set SetCategory
+
+      orbit(gp,el) returns the orbit of the element el under the
+      group gp, i.e. the set of all points gained by applying
+      each group element to el.
+
+   orbit : (%,Set SetCategory)-> Set Set SetCategory
+
+      orbit(gp,els) returns the orbit of the unordered
+      set els under the group gp.
+
+   orbit : (%,List SetCategory)   -> Set List SetCategory
+
+      orbit(gp,ls) returns the orbit of the ordered
+      list ls under the group gp.
+
+DESCRIPTION
+===========
+
+ARGUMENTS
+=========
+
+RETURN VALUE
+============
+
+EXAMPLES
+========
+
+   x : PERM INT := [[1,3,5],[7,11,9]]
+
+      (1 3 5)(7 11 9)
+
+   y : PERM INT := [[3,5,7,9]]
+
+      (3 5 7 9)
+
+   g : PERMGRP INT := [ x , y ]
+
+      <(1 3 5)(7 11 9),(3 5 7 9)>
+
+   orbit(g, 3)
+
+      {1,3,5,7,9,11}
+
+NOTES
+=====
+
+REFERENCES
+==========
+
+SEE ALSO
+========
+
+o )show PermutationGroup
+o )d op orbit
+
+\end{chunk}
+
+\begin{chunk}{orbits.help}
+====================================================================
+orbits from PermutationGroup (PERMGRP)
+====================================================================
+
+NAME
+====
+
+   orbits 
+
+DOMAIN
+======
+
+   PermutationGroup (PERMGRP)
+
+SYNOPSYS
+========
+
+   orbits : % -> Set Set SetCategory
+
+      orbits(gp) returns the orbits of the group gp, i.e.
+      it partitions the (finite) of all moved points.
+
+DESCRIPTION
+===========
+
+ARGUMENTS
+=========
+
+RETURN VALUE
+============
+
+EXAMPLES
+========
+
+   y : PERM INT := [[3,5,7,9]]
+
+      (3 5 7 9)
+
+   z : PERM INT := [1,3,11]
+
+      (1 3 11)
+
+   g : PERMGRP INT := [ y , z ]
+
+      <(3 5 7 9),(1 3 11)>
+
+   orbits g
+
+      {{1,3,5,7,9,11}}
+
+NOTES
+=====
+
+REFERENCES
+==========
+
+SEE ALSO
+========
+
+o )show PermutationGroup
+o )d op orbits
+
+\end{chunk}
+
+\begin{chunk}{member?.help}
+====================================================================
+member? from PermutationGroup (PERMGRP)
+====================================================================
+
+NAME
+====
+
+   member? 
+
+DOMAIN
+======
+
+   PermutationGroup (PERMGRP)
+
+SYNOPSYS
+========
+
+   member? : (Permutation Set, %)-> Boolean
+
+      member?(pp,gp) answers the question, whether the
+      permutation pp is in the group gp or not.
+
+DESCRIPTION
+===========
+
+ARGUMENTS
+=========
+
+RETURN VALUE
+============
+
+EXAMPLES
+========
+
+   x : PERM INT := [[1,3,5],[7,11,9]]
+
+      (1 3 5)(7 11 9)
+
+   y : PERM INT := [[3,5,7,9]]
+
+      (3 5 7 9)
+
+   z : PERM INT := [1,3,11]
+
+      (1 3 11)
+
+   g : PERMGRP INT := [ x , z ]
+
+      <(1 3 5)(7 11 9),(1 3 11)>
+
+   member? ( y , g )
+
+      false
+
+NOTES
+=====
+
+REFERENCES
+==========
+
+SEE ALSO
+========
+
+o )show PermutationGroup
+o )d op member
 
-)spool
-)lisp (bye)
 \end{chunk}
-\begin{chunk}{PermutationGroup.help}
+
+\begin{chunk}{wordInStrongGenerators.help}
 ====================================================================
-PermutationGroup examples
+wordInStrongGenerators from PermutationGroup (PERMGRP)
 ====================================================================
 
-PermutationGroup implements permutation groups acting on a set S, 
-i.e. all subgroups of the symmetric group of S, represented as a list 
-of permutations (generators). Note that therefore the objects are not 
-members of the Axiom category Group.
+NAME
+====
 
-Using the idea of base and strong generators by Sims, basic routines 
-and algorithms are implemented so that the word problem for permutation 
-groups can be solved.
+   wordInStrongGenerators 
+
+DOMAIN
+======
+
+   PermutationGroup (PERMGRP)
+
+SYNOPSYS
+========
+
+   wordInStrongGenerators : (Permatation Set, %)-> List NonNegativeInteger
+
+      wordInStrongGenerators(p,gp) returns the word for the
+      permutation p in the strong generators of the group gp,
+      represented by the indices of the list, given by strongGenerators.
+
+DESCRIPTION
+===========
+
+ARGUMENTS
+=========
+
+RETURN VALUE
+============
+
+EXAMPLES
+========
+
+NOTES
+=====
+
+REFERENCES
+==========
+
+SEE ALSO
+========
+
+o )show PermutationGroup
+o )d op wordInStrongGenerators 
+
+\end{chunk}
+
+\begin{chunk}{wordInGenerators.help}
+====================================================================
+wordInGenerators from PermutationGroup (PERMGRP)
+====================================================================
+
+NAME
+====
+
+   wordInGenerators 
+
+DOMAIN
+======
+
+   PermutationGroup (PERMGRP)
+
+SYNOPSYS
+========
+
+   wordInGenerators : (Permutation Set, %)-> List NonNegativeInteger
+
+      wordInGenerators(p,gp) returns the word for the permutation p
+      in the original generators of the group gp,
+      represented by the indices of the list, given by generators.
+
+DESCRIPTION
+===========
+
+ARGUMENTS
+=========
+
+RETURN VALUE
+============
+
+EXAMPLES
+========
+
+NOTES
+=====
+
+REFERENCES
+==========
+
+SEE ALSO
+========
+
+o )show PermutationGroup
+o )d op wordInGenerators
+
+\end{chunk}
+
+\begin{chunk}{movedPoints.help}
+====================================================================
+movedPoints from PermutationGroup (PERMGRP)
+====================================================================
+
+NAME
+====
+
+   movedPoints 
+
+DOMAIN
+======
+
+   PermutationGroup (PERMGRP)
+
+SYNOPSYS
+========
+
+   movedPoints : % -> Set SetCategory
+
+      movedPoints(gp) returns the points moved by the group gp.
+
+DESCRIPTION
+===========
+
+ARGUMENTS
+=========
+
+RETURN VALUE
+============
+
+EXAMPLES
+========
+
+   x : PERM INT := [[1,3,5],[7,11,9]]
+
+      (1 3 5)(7 11 9)
+
+   z : PERM INT := [1,3,11]
+
+      (1 3 11)
+
+   g : PERMGRP INT := [ x , z ]
+
+      <(1 3 5)(7 11 9),(1 3 11)>
+
+   movedPoints g
+
+      {1,3,5,7,9,11}
+
+NOTES
+=====
+
+REFERENCES
+==========
+
+SEE ALSO
+========
+
+o )show PermutationGroup
+o )d op movedPoints
+
+\end{chunk}
+
+\begin{chunk}{initializeGroupForWordProblem.help}
+====================================================================
+initializeGroupForWordProblem from PermutationGroup (PERMGRP)
+====================================================================
+
+NAME
+====
+
+   initializeGroupForWordProblem 
+
+DOMAIN
+======
+
+   PermutationGroup (PERMGRP)
+
+SYNOPSYS
+========
+
+   initializeGroupForWordProblem : %   -> Void
+
+      initializeGroupForWordProblem(gp) initializes the group gp
+      for the word problem.
+
+DESCRIPTION
+===========
+
+ARGUMENTS
+=========
+
+RETURN VALUE
+============
+
+EXAMPLES
+========
+
+NOTES
+=====
+
+   It calls the other function of this name with parameters
+   0 and 1: initializeGroupForWordProblem(gp,0,1).
+
+   (1) be careful: invoking this routine will destroy the
+   possibly information about your group (but will recompute it again)
+
+   (2) users need not call this function normally for the soultion of
+   the word problem.
+
+REFERENCES
+==========
+
+SEE ALSO
+========
 
-See Also:
 o )show PermutationGroup
+o )d op initializeGroupForWordProblem 
 
 \end{chunk}
 
@@ -99657,77 +100757,135 @@ PermutationGroup(S:SetCategory): public == private where
 
   public ==> SetCategory with
 
-    coerce           : %         -> L PERM S
+    coerce : % -> L PERM S
       ++ coerce(gp) returns the generators of the group gp.
+      ++
+      ++X x : PERM INT := [[1,3,5],[7,11,9]]
+
+    coerce : L PERM S  -> %
+      ++ coerce(ls) coerces a list of permutations ls to the group
+      ++ generated by this list.
+      ++
+      ++X y : PERM INT := [[3,5,7,9]]
+      ++X z : PERM INT := [1,3,11]
+      ++X g : PERMGRP INT := [ y , z ]
+
     generators           : %         -> L PERM S
       ++ generators(gp) returns the generators of the group gp.
+
     elt              : (%,NNI)   -> PERM S
       ++ elt(gp,i) returns the i-th generator of the group gp.
+
     random           : (%,I)     -> PERM S
       ++ random(gp,i) returns a random product of maximal i generators
       ++ of the group gp.
+
     random           : %         -> PERM S
       ++ random(gp) returns a random product of maximal 20 generators
       ++ of the group gp.
       ++ Note: random(gp)=random(gp,20).
+
     order            : %         -> NNI
       ++ order(gp) returns the order of the group gp.
+      ++
+      ++X x : PERM INT := [[1,3,5],[7,11,9]]
+      ++X y : PERM INT := [[3,5,7,9]]
+      ++X g : PERMGRP INT := [ x , y ]
+      ++X order g
+
     degree           : %         -> NNI
       ++ degree(gp) returns the number of points moved by all permutations
       ++ of the group gp.
+      ++
+      ++X y : PERM INT := [[3,5,7,9]]
+      ++X z : PERM INT := [1,3,11]
+      ++X g : PERMGRP INT := [ y , z ]
+      ++X degree g
+
     base             : %         -> L S
       ++ base(gp) returns a base for the group gp.
+
     strongGenerators : %         -> L PERM S
       ++ strongGenerators(gp) returns strong generators for
       ++ the group gp.
+
     wordsForStrongGenerators      : %         -> L L NNI
       ++ wordsForStrongGenerators(gp) returns the words for the strong
       ++ generators of the group gp in the original generators of
       ++ gp, represented by their indices in the list, given by
       ++ generators.
-    coerce           : L PERM S  -> %
-      ++ coerce(ls) coerces a list of permutations ls to the group
-      ++ generated by this list.
+
     permutationGroup          : L PERM S  -> %
       ++ permutationGroup(ls) coerces a list of permutations ls to
       ++ the group generated by this list.
+
     orbit            : (%,S)     -> FSET S
       ++ orbit(gp,el) returns the orbit of the element el under the
       ++ group gp, i.e. the set of all points gained by applying
       ++ each group element to el.
-    orbits           : %         -> FSET FSET S
-      ++ orbits(gp) returns the orbits of the group gp, i.e.
-      ++ it partitions the (finite) of all moved points.
+
     orbit            : (%,FSET S)-> FSET FSET S
       ++ orbit(gp,els) returns the orbit of the unordered
       ++ set els under the group gp.
+
     orbit            : (%,L S)   -> FSET L S
       ++ orbit(gp,ls) returns the orbit of the ordered
       ++ list ls under the group gp.
       ++ Note: return type is L L S temporarily because FSET L S has an error.
-      -- (GILT DAS NOCH?)
+      ++
+      ++X x : PERM INT := [[1,3,5],[7,11,9]]
+      ++X y : PERM INT := [[3,5,7,9]]
+      ++X g : PERMGRP INT := [ x , y ]
+      ++X orbit(g, 3)
+
+    orbits           : %         -> FSET FSET S
+      ++ orbits(gp) returns the orbits of the group gp, i.e.
+      ++ it partitions the (finite) of all moved points.
+      ++
+      ++X y : PERM INT := [[3,5,7,9]]
+      ++X z : PERM INT := [1,3,11]
+      ++X g : PERMGRP INT := [ y , z ]
+      ++X orbits g
+
     member?          : (PERM S, %)-> B
       ++ member?(pp,gp) answers the question, whether the
       ++ permutation pp is in the group gp or not.
+      ++
+      ++X x : PERM INT := [[1,3,5],[7,11,9]]
+      ++X y : PERM INT := [[3,5,7,9]]
+      ++X z : PERM INT := [1,3,11]
+      ++X g : PERMGRP INT := [ x , z ]
+      ++X member? ( y , g )
+
     wordInStrongGenerators : (PERM S, %)-> L NNI
       ++ wordInStrongGenerators(p,gp) returns the word for the
       ++ permutation p in the strong generators of the group gp,
       ++ represented by the indices of the list, given by strongGenerators.
+
     wordInGenerators : (PERM S, %)-> L NNI
       ++ wordInGenerators(p,gp) returns the word for the permutation p
       ++ in the original generators of the group gp,
       ++ represented by the indices of the list, given by generators.
+
     movedPoints      : %         -> FSET S
       ++ movedPoints(gp) returns the points moved by the group gp.
+      ++
+      ++X x : PERM INT := [[1,3,5],[7,11,9]]
+      ++X z : PERM INT := [1,3,11]
+      ++X g : PERMGRP INT := [ x , z ]
+      ++X movedPoints g
+
     "<"              : (%,%)     -> B
       ++ gp1 < gp2 returns true if and only if gp1
       ++ is a proper subgroup of gp2.
+
     "<="             : (%,%)     -> B
       ++ gp1 <= gp2 returns true if and only if gp1
       ++ is a subgroup of gp2.
       ++ Note: because of a bug in the parser you have to call this
       ++ function explicitly by gp1 <=$(PERMGRP S) gp2.
       -- (GILT DAS NOCH?)
+
     initializeGroupForWordProblem : %   -> Void
       ++ initializeGroupForWordProblem(gp) initializes the group gp
       ++ for the word problem.
@@ -99737,6 +100895,7 @@ PermutationGroup(S:SetCategory): public == private where
       ++ possibly information about your group (but will recompute it again)
       ++ (2) users need not call this function normally for the soultion of
       ++ the word problem.
+
     initializeGroupForWordProblem :(%,I,I) -> Void
       ++ initializeGroupForWordProblem(gp,m,n) initializes the group
       ++ gp for the word problem.
diff --git a/books/bookvolbib.pamphlet b/books/bookvolbib.pamphlet
index c417014..2783275 100644
--- a/books/bookvolbib.pamphlet
+++ b/books/bookvolbib.pamphlet
@@ -22,6 +22,22 @@ paragraph for those unfamiliar with the terms.
 
 \section{Algebra Documentation References}
 
+\index{Sims, Charles}
+\begin{chunk}{axiom.bib}
+@article{Sims71,
+  author = "Sims, Charles",
+  title = "Determining the Conjugacy Classes of a Permutation Group",
+  journal = "Computers in Algebra and Number Theory, SIAM-AMS Proc.",
+  volume = "4",
+  publisher = "American Math. Soc.",
+  year = "1991",
+  pages = "191--195",
+  comment = "documentation for PermutationGroup"
+
+}
+
+\end{chunk}
+
 \index{W\"orz-Busekros, A.}
 \begin{chunk}{axiom.bib}
 @article{Worz80,
@@ -15201,15 +15217,6 @@ Mathematics and Computers in Simulation 42 pp 509-528 (1996)
 
 \end{chunk}
 
-\index{Sims, Charles}
-\begin{chunk}{ignore}
-\bibitem[Sims 71]{Sims71} Sims, C.
-  title = "Determining the Conjugacy Classes of a Permutation Group",
-Computers in Algebra and Number Theory, SIAM-AMS Proc., Vol. 4,
-American Math. Soc., 1991, pp191-195
-
-\end{chunk}
-
 \index{Singer, Michael F.}
 \begin{chunk}{ignore}
 \bibitem[Singer 89]{Sing89} Singer, M.F.
diff --git a/changelog b/changelog
index 2fee24c..19e879d 100644
--- a/changelog
+++ b/changelog
@@ -1,3 +1,5 @@
+20141117 tpd src/axiom-website/patches.html 20141117.02.tpd.patch
+20141117 tpd books/bookvol10.3 help files for PermutationGroup
 20141117 tpd src/axiom-website/patches.html 20141117.01.tpd.patch
 20141117 tpd books/bookvol5 newHelpSpad2Cmd now recognizes )help abbreviations
 20141116 tpd src/axiom-website/patches.html 20141116.03.tpd.patch
diff --git a/patch b/patch
index 18a0aec..8f086ad 100644
--- a/patch
+++ b/patch
@@ -1,5 +1,8 @@
-books/bookvol5 newHelpSpad2Cmd now recognizes )help abbreviations
+books/bookvol10.3 help files for PermutationGroup
 
 The )help command now recognizes
-  )help Integer 
-  )help INT
+  )help PermutationGroup     -- the constructor name
+  )help PERMGRP              -- the abbreviation
+  )help order                -- the function implementations from PERMGRP
+all of which open in an edit window
+
diff --git a/src/axiom-website/patches.html b/src/axiom-website/patches.html
index 05ef12e..154893b 100644
--- a/src/axiom-website/patches.html
+++ b/src/axiom-website/patches.html
@@ -4708,6 +4708,8 @@ books/bookvol10.3 help file for AlgebraGivenByStructuralConstants<br/>
 src/input/Makefile remove gonshor.input<br/>
 <a href="patches/20141117.01.tpd.patch">20141117.01.tpd.patch</a>
 books/bookvol5 newHelpSpad2Cmd now recognizes )help abbreviations<br/>
+<a href="patches/20141117.02.tpd.patch">20141117.02.tpd.patch</a>
+books/bookvol10.3 help files for PermutationGroup<br/>
  </body>
 </html>
 
diff --git a/src/input/grpthry.input.pamphlet b/src/input/grpthry.input.pamphlet
index 194723d..39c5457 100644
--- a/src/input/grpthry.input.pamphlet
+++ b/src/input/grpthry.input.pamphlet
@@ -21,156 +21,24 @@
 )set message auto off
 )clear all
  
---S 1 of 68
-x : PERM INT := [[1,3,5],[7,11,9]]
---R 
---R
---R   (1)  (1 3 5)(7 11 9)
---R                                                   Type: Permutation(Integer)
---E 1
-
---S 2 of 68
-y : PERM INT := [[3,5,7,9]]
---R 
---R
---R   (2)  (3 5 7 9)
---R                                                   Type: Permutation(Integer)
---E 2
-
---S 3 of 68
-z : PERM INT := [1,3,11]
---R 
---R
---R   (3)  (1 3 11)
---R                                                   Type: Permutation(Integer)
---E 3
-
---S 4 of 68
-g1 : PERMGRP INT := [ x , y ]
---R 
---R
---R   (4)  <(1 3 5)(7 11 9),(3 5 7 9)>
---R                                              Type: PermutationGroup(Integer)
---E 4
-
---S 5 of 68
-g2 : PERMGRP INT := [ x , z ]
---R 
---R
---R   (5)  <(1 3 5)(7 11 9),(1 3 11)>
---R                                              Type: PermutationGroup(Integer)
---E 5
-
---S 6 of 68
-g3 : PERMGRP INT := [ y , z ]
---R 
---R
---R   (6)  <(3 5 7 9),(1 3 11)>
---R                                              Type: PermutationGroup(Integer)
---E 6
-
---S 7 of 68
-order g1
---R 
---R
---R   (7)  720
---R                                                        Type: PositiveInteger
---E 7
-
---S 8 of 68
-degree g3
---R 
---R
---R   (8)  6
---R                                                        Type: PositiveInteger
---E 8
-
---S 9 of 68
-movedPoints g2
---R 
---R
---R   (9)  {1,3,5,7,9,11}
---R                                                           Type: Set(Integer)
---E 9
-
---S 10 of 68
-orbit (g1, 3)
---R 
---R
---R   (10)  {1,3,5,7,9,11}
---R                                                           Type: Set(Integer)
---E 10
-
---S 11 of 68
-orbits g3
---R 
---R
---R   (11)  {{1,3,5,7,9,11}}
---R                                                      Type: Set(Set(Integer))
---E 11
-
---S 12 of 68
-member? ( y , g2 )
---R 
---R
---R   (12)  false
---R                                                                Type: Boolean
---E 12
-
---S 13 of 68
-)sh PERMGRP
---R 
---R PermutationGroup(S: SetCategory)  is a domain constructor
---R Abbreviation for PermutationGroup is PERMGRP 
---R This constructor is exposed in this frame.
---R Issue )edit bookvol10.3.pamphlet to see algebra source code for PERMGRP 
---R
---R------------------------------- Operations --------------------------------
---R ?<? : (%,%) -> Boolean                ?<=? : (%,%) -> Boolean
---R ?=? : (%,%) -> Boolean                base : % -> List(S)
---R coerce : % -> OutputForm              degree : % -> NonNegativeInteger
---R hash : % -> SingleInteger             latex : % -> String
---R movedPoints : % -> Set(S)             orbit : (%,Set(S)) -> Set(Set(S))
---R orbit : (%,S) -> Set(S)               orbits : % -> Set(Set(S))
---R order : % -> NonNegativeInteger       random : % -> Permutation(S)
---R ?~=? : (%,%) -> Boolean              
---R coerce : List(Permutation(S)) -> %
---R coerce : % -> List(Permutation(S))
---R ?.? : (%,NonNegativeInteger) -> Permutation(S)
---R generators : % -> List(Permutation(S))
---R initializeGroupForWordProblem : (%,Integer,Integer) -> Void
---R initializeGroupForWordProblem : % -> Void
---R member? : (Permutation(S),%) -> Boolean
---R orbit : (%,List(S)) -> Set(List(S))
---R permutationGroup : List(Permutation(S)) -> %
---R random : (%,Integer) -> Permutation(S)
---R strongGenerators : % -> List(Permutation(S))
---R wordInGenerators : (Permutation(S),%) -> List(NonNegativeInteger)
---R wordInStrongGenerators : (Permutation(S),%) -> List(NonNegativeInteger)
---R wordsForStrongGenerators : % -> List(List(NonNegativeInteger))
---R
---E 13
-
-)clear all
-
---S 14 of 68
+--S 1 of 55
 ptn9 := partitions 9
 --R 
 --R
 --R   (1)
 --R   [[9],[8,1],[7,2],[7,1,1],[6,3],[6,2,1],[6,1,1,1],[5,4],[5,3,1],[5,2,2],...]
 --R                                                  Type: Stream(List(Integer))
---E 14
+--E 1
 
---S 15 of 68
+--S 2 of 55
 map(dimensionOfIrreducibleRepresentation, ptn9)
 --R 
 --R
 --R   (2)  [1,8,27,28,48,105,56,42,162,120,...]
 --R                                             Type: Stream(NonNegativeInteger)
---E 15
+--E 2
 
---S 16 of 68
+--S 3 of 55
 yt := listYoungTableaus [4,2]
 --R 
 --R
@@ -182,9 +50,9 @@ yt := listYoungTableaus [4,2]
 --R    |          |, |          |, |          |, |          |]
 --R    +2  5  0  0+  +3  4  0  0+  +3  5  0  0+  +4  5  0  0+
 --R                                                  Type: List(Matrix(Integer))
---E 16
+--E 3
 
---S 17 of 68
+--S 4 of 55
 r1 := irreducibleRepresentation([4,2],[1,2,4,5,3,6])
 --R 
 --R
@@ -206,9 +74,9 @@ r1 := irreducibleRepresentation([4,2],[1,2,4,5,3,6])
 --R        |                                           |
 --R        + 0    0    0    1    0    0    0    0    0 +
 --R                                                        Type: Matrix(Integer)
---E 17
+--E 4
 
---S 18 of 68
+--S 5 of 55
 r2 := irreducibleRepresentation([4,2],[3,2,1,5,6,4])
 --R 
 --R
@@ -230,9 +98,9 @@ r2 := irreducibleRepresentation([4,2],[3,2,1,5,6,4])
 --R        |                                           |
 --R        + 0   - 1   0    0   - 1   0   - 1   0    0 +
 --R                                                        Type: Matrix(Integer)
---E 18
+--E 5
 
---S 19 of 68
+--S 6 of 55
 r3 := irreducibleRepresentation([4,2],[4,2,1,3,6,5])
 --R 
 --R
@@ -254,17 +122,17 @@ r3 := irreducibleRepresentation([4,2],[4,2,1,3,6,5])
 --R        |                                       |
 --R        +0   0    0   0   0    1    0    0    0 +
 --R                                                        Type: Matrix(Integer)
---E 19
+--E 6
 
---S 20 of 68
+--S 7 of 55
 (r3 = r1*r2) :: Boolean
 --R 
 --R
 --R   (7)  false
 --R                                                                Type: Boolean
---E 20
+--E 7
 
---S 21 of 68
+--S 8 of 55
 irreducibleRepresentation [4,4,1]
 --R 
 --R
@@ -1284,11 +1152,11 @@ irreducibleRepresentation [4,4,1]
 --R     ]
 --R     ]
 --R                                                  Type: List(Matrix(Integer))
---E 21
+--E 8
 
 )clear all
 
---S 22 of 68
+--S 9 of 55
 permutationRepresentation [2,3,1,4,6,5,11,10,7,8,9]
 --R 
 --R
@@ -1314,9 +1182,9 @@ permutationRepresentation [2,3,1,4,6,5,11,10,7,8,9]
 --R        |                               |
 --R        +0  0  0  0  0  0  1  0  0  0  0+
 --R                                                        Type: Matrix(Integer)
---E 22
+--E 9
 
---S 23 of 68
+--S 10 of 55
 gm2 := createGenericMatrix 2
 --R 
 --R
@@ -1326,9 +1194,9 @@ gm2 := createGenericMatrix 2
 --R        |x     x   |
 --R        + 2,1   2,2+
 --R                                            Type: Matrix(Polynomial(Integer))
---E 23
+--E 10
 
---S 24 of 68
+--S 11 of 55
 symmetricTensors (gm2,2)
 --R 
 --R
@@ -1343,9 +1211,9 @@ symmetricTensors (gm2,2)
 --R        |2x   x     2x   x     x   x    + x   x   |
 --R        +  1,1 2,1    1,2 2,2   1,1 2,2    1,2 2,1+
 --R                                            Type: Matrix(Polynomial(Integer))
---E 24
+--E 11
 
---S 25 of 68
+--S 12 of 55
 gm3 := createGenericMatrix 3
 --R 
 --R
@@ -1358,9 +1226,9 @@ gm3 := createGenericMatrix 3
 --R        |x     x     x   |
 --R        + 3,1   3,2   3,3+
 --R                                            Type: Matrix(Polynomial(Integer))
---E 25
+--E 12
 
---S 26 of 68
+--S 13 of 55
 antisymmetricTensors (gm3,2)
 --R 
 --R
@@ -1373,9 +1241,9 @@ antisymmetricTensors (gm3,2)
 --R        |x   x    - x   x     x   x    - x   x     x   x    - x   x   |
 --R        + 2,1 3,2    2,2 3,1   2,1 3,3    2,3 3,1   2,2 3,3    2,3 3,2+
 --R                                            Type: Matrix(Polynomial(Integer))
---E 26
+--E 13
 
---S 27 of 68
+--S 14 of 55
 tensorProduct(gm2,gm2)
 --R 
 --R
@@ -1393,9 +1261,9 @@ tensorProduct(gm2,gm2)
 --R        | x        x   x     x   x      x      |
 --R        +  2,1      2,1 2,2   2,1 2,2    2,2   +
 --R                                            Type: Matrix(Polynomial(Integer))
---E 27
+--E 14
 
---S 28 of 68
+--S 15 of 55
 )sh REP1
 --R 
 --R RepresentationPackage1(R: Ring)  is a package constructor
@@ -1418,18 +1286,18 @@ tensorProduct(gm2,gm2)
 --R tensorProduct : Matrix(R) -> Matrix(R)
 --R tensorProduct : List(Matrix(R)) -> List(Matrix(R))
 --R
---E 28
+--E 15
 
 )clear all
 
---S 29 of 68
+--S 16 of 55
 r0 := irreducibleRepresentation [2,2,2,1,1];
 --R 
 --R
 --R                                                  Type: List(Matrix(Integer))
---E 29
+--E 16
 
---S 30 of 68
+--S 17 of 55
 r28 := meatAxe (r0::(LIST MATRIX PF 2))
 --R 
 --R   Fingerprint element in generated algebra is singular
@@ -1552,9 +1420,9 @@ r28 := meatAxe (r0::(LIST MATRIX PF 2))
 --R      +0  1  1  1  1  0  0  0  1  1  1  1  1  1+
 --R     ]
 --R                                      Type: List(List(Matrix(PrimeField(2))))
---E 30
+--E 17
 
---S 31 of 68
+--S 18 of 55
 areEquivalent? (r28.1, r28.2)
 --R 
 --R   Dimensions of kernels differ
@@ -1563,9 +1431,9 @@ areEquivalent? (r28.1, r28.2)
 --R
 --R   (3)  [0]
 --R                                                  Type: Matrix(PrimeField(2))
---E 31
+--E 18
 
---S 32 of 68
+--S 19 of 55
 meatAxe r28.2
 --R 
 --R   Fingerprint element in generated algebra is non-singular
@@ -1638,9 +1506,9 @@ meatAxe r28.2
 --R      +0  1  0  1  1  0  0  0  0  1  1  0  1  1+
 --R     ]
 --R                                      Type: List(List(Matrix(PrimeField(2))))
---E 32
+--E 19
 
---S 33 of 68 random generation, FAILURE OK.
+--S 20 of 55 random generation, FAILURE OK.
 isAbsolutelyIrreducible? r28.2
 --R 
 --R   Random element in generated algebra does
@@ -1659,9 +1527,9 @@ isAbsolutelyIrreducible? r28.2
 --R
 --R   (5)  true
 --R                                                                Type: Boolean
---E 33
+--E 20
 
---S 34 of 68
+--S 21 of 55
 ma := meatAxe r28.1
 --R 
 --R   Fingerprint element in generated algebra is singular
@@ -1699,9 +1567,9 @@ ma := meatAxe r28.1
 --R     |                | |                |
 --R     +1  1  1  0  0  0+ +0  1  1  1  0  1+
 --R                                      Type: List(List(Matrix(PrimeField(2))))
---E 34
+--E 21
 
---S 35 of 68 random generation, FAILURE OK.
+--S 22 of 55 random generation, FAILURE OK.
 isAbsolutelyIrreducible? ma.1
 --R 
 --R   Random element in generated algebra does
@@ -1718,9 +1586,9 @@ isAbsolutelyIrreducible? ma.1
 --R
 --R   (7)  true
 --R                                                                Type: Boolean
---E 35
+--E 22
 
---S 36 of 68
+--S 23 of 55
 isAbsolutelyIrreducible? ma.2
 --R 
 --R   Random element in generated algebra has
@@ -1733,91 +1601,91 @@ isAbsolutelyIrreducible? ma.2
 --R
 --R   (8)  true
 --R                                                                Type: Boolean
---E 36
+--E 23
 
 )clear all
 
---S 37 of 68
+--S 24 of 55
 px : PERM PF 29 := cycles [[1,3,5],[7,11,9]]
 --R 
 --R
 --R   (1)  (1 3 5)(7 11 9)
 --R                                            Type: Permutation(PrimeField(29))
---E 37
+--E 24
 
---S 38 of 68
+--S 25 of 55
 py : PERM PF 29 := cycles [[3,5,7,9]]
 --R 
 --R
 --R   (2)  (3 5 7 9)
 --R                                            Type: Permutation(PrimeField(29))
---E 38
+--E 25
 
---S 39 of 68
+--S 26 of 55
 pz : PERM PF 29 := cycle [1,3,11]
 --R 
 --R
 --R   (3)  (1 3 11)
 --R                                            Type: Permutation(PrimeField(29))
---E 39
+--E 26
 
---S 40 of 68
+--S 27 of 55
 px * pz
 --R 
 --R
 --R   (4)  (1 5)(3 9 7 11)
 --R                                            Type: Permutation(PrimeField(29))
---E 40
+--E 27
 
---S 41 of 68
+--S 28 of 55
 py ** 3
 --R 
 --R
 --R   (5)  (3 9 7 5)
 --R                                            Type: Permutation(PrimeField(29))
---E 41
+--E 28
 
---S 42 of 68
+--S 29 of 55
 inv px
 --R 
 --R
 --R   (6)  (1 5 3)(7 9 11)
 --R                                            Type: Permutation(PrimeField(29))
---E 42
+--E 29
 
---S 43 of 68
+--S 30 of 55
 order px
 --R 
 --R
 --R   (7)  3
 --R                                                        Type: PositiveInteger
---E 43
+--E 30
 
---S 44 of 68
+--S 31 of 55
 movedPoints py
 --R 
 --R
 --R   (8)  {3,5,7,9}
 --R                                                    Type: Set(PrimeField(29))
---E 44
+--E 31
 
---S 45 of 68
+--S 32 of 55
 orbit ( pz , 3 )
 --R 
 --R
 --R   (9)  {3,11,1}
 --R                                                    Type: Set(PrimeField(29))
---E 45
+--E 32
 
---S 46 of 68
+--S 33 of 55
 eval ( py , 7 )
 --R 
 --R
 --R   (10)  9
 --R                                                         Type: PrimeField(29)
---E 46
+--E 33
 
---S 47 of 68
+--S 34 of 55
 )sh PERM
 --R 
 --R Permutation(S: SetCategory)  is a domain constructor
@@ -1857,19 +1725,19 @@ eval ( py , 7 )
 --R min : (%,%) -> % if S has FINITE or S has ORDSET
 --R numberOfCycles : % -> NonNegativeInteger
 --R
---E 47
+--E 34
 
 )clear all
 
---S 48 of 68
+--S 35 of 55
 genA6 : List PERM INT := [cycle [1,2,3],cycle [2,3,4,5,6]]
 --R 
 --R
 --R   (1)  [(1 2 3),(2 3 4 5 6)]
 --R                                             Type: List(Permutation(Integer))
---E 48
+--E 35
 
---S 49 of 68
+--S 36 of 55
 pRA6 := permutationRepresentation (genA6,6)
 --R 
 --R
@@ -1885,9 +1753,9 @@ pRA6 := permutationRepresentation (genA6,6)
 --R         |                | |                |
 --R         +0  0  0  0  0  1+ +0  0  0  0  1  0+
 --R                                                  Type: List(Matrix(Integer))
---E 49
+--E 36
 
---S 50 of 68
+--S 37 of 55
 sp0 := meatAxe (pRA6::(List Matrix PF 2))
 --R 
 --R   Fingerprint element in generated algebra is singular
@@ -1906,9 +1774,9 @@ sp0 := meatAxe (pRA6::(List Matrix PF 2))
 --R          |             | |             |
 --R          +0  0  0  0  1+ +0  0  0  1  0+
 --R                                      Type: List(List(Matrix(PrimeField(2))))
---E 50
+--E 37
 
---S 51 of 68
+--S 38 of 55
 sp1 := meatAxe sp0.1
 --R 
 --R   Fingerprint element in generated algebra is singular
@@ -1932,9 +1800,9 @@ sp1 := meatAxe sp0.1
 --R                    |          | |          |
 --R                    +0  0  0  1+ +1  1  1  1+
 --R                                      Type: List(List(Matrix(PrimeField(2))))
---E 51
+--E 38
 
---S 52 of 68 random generation, FAILURE OK.
+--S 39 of 55 random generation, FAILURE OK.
 isAbsolutelyIrreducible? sp1.2
 --R 
 --R   Random element in generated algebra has
@@ -1947,9 +1815,9 @@ isAbsolutelyIrreducible? sp1.2
 --R
 --I   (5)  true
 --R                                                                Type: Boolean
---E 52
+--E 39
 
---S 53 of 68
+--S 40 of 55
 d2211 := irreducibleRepresentation ([2,2,1,1],genA6)
 --R 
 --R
@@ -1972,9 +1840,9 @@ d2211 := irreducibleRepresentation ([2,2,1,1],genA6)
 --R    |                                     | |                                 |
 --R    +0  0  0   0    0    1    0    0    0 + + 0    0   0  - 1  0  0  - 1  0  0+
 --R                                                  Type: List(Matrix(Integer))
---E 53
+--E 40
 
---S 54 of 68
+--S 41 of 55
 d2211m2 := (d2211::(List Matrix PF 2)); sp2 := meatAxe d2211m2
 --R 
 --R   Fingerprint element in generated algebra is singular
@@ -1993,9 +1861,9 @@ d2211m2 := (d2211::(List Matrix PF 2)); sp2 := meatAxe d2211m2
 --R          +0  1  0  0+ +0  1  0  1+   |             | |             |
 --R                                      +0  1  1  1  0+ +1  0  0  1  1+
 --R                                      Type: List(List(Matrix(PrimeField(2))))
---E 54
+--E 41
 
---S 55 of 68 random generation, FAILURE OK.
+--S 42 of 55 random generation, FAILURE OK.
 isAbsolutelyIrreducible? sp2.1
 --R 
 --R   Random element in generated algebra has
@@ -2008,9 +1876,9 @@ isAbsolutelyIrreducible? sp2.1
 --R
 --R   (8)  true
 --R                                                                Type: Boolean
---E 55
+--E 42
 
---S 56 of 68 random generation, FAILURE OK.
+--S 43 of 55 random generation, FAILURE OK.
 areEquivalent? (sp2.1, sp1.2)
 --R 
 --R   Random element in generated algebra does
@@ -2023,9 +1891,9 @@ areEquivalent? (sp2.1, sp1.2)
 --R
 --R   (9)  [0]
 --R                                                  Type: Matrix(PrimeField(2))
---E 56
+--E 43
 
---S 57 of 68
+--S 44 of 55
 dA6d16 := tensorProduct(sp2.1,sp1.2); meatAxe dA6d16
 --R 
 --R   Fingerprint element in generated algebra is non-singular
@@ -2123,9 +1991,9 @@ dA6d16 := tensorProduct(sp2.1,sp1.2); meatAxe dA6d16
 --R      +0  0  0  0  1  1  0  1  1  1  0  1  1  1  0  1+
 --R     ]
 --R                                      Type: List(List(Matrix(PrimeField(2))))
---E 57
+--E 44
 
---S 58 of 68
+--S 45 of 55
 isAbsolutelyIrreducible? dA6d16
 --R 
 --R   Random element in generated algebra does
@@ -2183,9 +2051,9 @@ isAbsolutelyIrreducible? dA6d16
 --R
 --R   (11)  false
 --R                                                                Type: Boolean
---E 58
+--E 45
 
---S 59 of 68
+--S 46 of 55
 sp3 := meatAxe (dA6d16 :: (List Matrix FF(2,2)))
 --R 
 --R   Fingerprint element in generated algebra is non-singular
@@ -2280,9 +2148,9 @@ sp3 := meatAxe (dA6d16 :: (List Matrix FF(2,2)))
 --R      +  %A    %A  %A + 1  %A + 1    %A      %A      0       1   +
 --R     ]
 --R                                   Type: List(List(Matrix(FiniteField(2,2))))
---E 59
+--E 46
 
---S 60 of 68 random generation, FAILURE OK.
+--S 47 of 55 random generation, FAILURE OK.
 isAbsolutelyIrreducible? sp3.1
 --R 
 --R   Random element in generated algebra does
@@ -2309,9 +2177,9 @@ isAbsolutelyIrreducible? sp3.1
 --R
 --R   (13)  true
 --R                                                                Type: Boolean
---E 60
+--E 47
 
---S 61 of 68 random generation, FAILURE OK.
+--S 48 of 55 random generation, FAILURE OK.
 isAbsolutelyIrreducible? sp3.2
 --R 
 --R   Random element in generated algebra does
@@ -2330,9 +2198,9 @@ isAbsolutelyIrreducible? sp3.2
 --R
 --R   (14)  true
 --R                                                                Type: Boolean
---E 61
+--E 48
 
---S 62 of 68 random generation, FAILURE OK.
+--S 49 of 55 random generation, FAILURE OK.
 areEquivalent? (sp3.1,sp3.2)
 --R 
 --R   Random element in generated algebra does
@@ -2358,17 +2226,17 @@ areEquivalent? (sp3.1,sp3.2)
 --R
 --R   (15)  [0]
 --R                                               Type: Matrix(FiniteField(2,2))
---E 62
+--E 49
 
---S 63 of 68
+--S 50 of 55
 sp0.2
 --R 
 --R
 --R   (16)  [[1],[1]]
 --R                                            Type: List(Matrix(PrimeField(2)))
---E 63
+--E 50
 
---S 64 of 68
+--S 51 of 55
 sp1.2
 --R 
 --R
@@ -2380,9 +2248,9 @@ sp1.2
 --R          |          | |          |
 --R          +0  0  0  1+ +1  1  1  1+
 --R                                            Type: List(Matrix(PrimeField(2)))
---E 64
+--E 51
 
---S 65 of 68
+--S 52 of 55
 sp2.1
 --R 
 --R
@@ -2394,9 +2262,9 @@ sp2.1
 --R          |          | |          |
 --R          +0  1  0  0+ +0  1  0  1+
 --R                                            Type: List(Matrix(PrimeField(2)))
---E 65
+--E 52
 
---S 66 of 68
+--S 53 of 55
 sp3.1
 --R 
 --R
@@ -2432,9 +2300,9 @@ sp3.1
 --R    |                                                          |
 --R    +%A + 1    %A      %A    %A + 1  0   %A + 1    %A      0   +
 --R                                         Type: List(Matrix(FiniteField(2,2)))
---E 66
+--E 53
 
---S 67 of 68
+--S 54 of 55
 sp3.2
 --R 
 --R
@@ -2470,9 +2338,9 @@ sp3.2
 --R    |                                                          |
 --R    +  %A    %A  %A + 1  %A + 1    %A      %A      0       1   +
 --R                                         Type: List(Matrix(FiniteField(2,2)))
---E 67
+--E 54
 
---S 68 of 68
+--S 55 of 55
 dA6d16
 --R 
 --R
@@ -2540,7 +2408,7 @@ dA6d16
 --R    |                                              |
 --R    +0  0  0  0  1  1  1  1  0  0  0  0  1  1  1  1+
 --R                                            Type: List(Matrix(PrimeField(2)))
---E 68
+--E 55
 )spool 
 )lisp (bye)
  
