Nearring( G, mul )
In this form the constructor function Nearring
returns the near-ring
defined by the permutation
group G and the near-ring multiplication mul. (For a detailed
explanation of mul see IsNrMultiplication). Near-ring
calls
Is-Nr-Mul-ti-pli-ca-tion
in order to make sure that mul is really a near-ring multiplication.
gap> g := Group( (1,2,3) ); Group( (1,2,3) ) gap> mul_r := function(x,y) return x; end; function ( x, y ) ... end gap> n := Nearring( g, mul_r ); Nearring( Group( (1,2,3) ), function ( x, y ) return x; end ) gap> DisplayCayleyTable( n ); Let: n0 := () n1 := (1,2,3) n2 := (1,3,2)tt+
|
n0 n1 n2 --------------- n0tt
|
n0 n1 n2 n1tt
|
n1 n2 n0 n2tt
|
n2 n0 n1tt*
|
n0 n1 n2 --------------- n0tt
|
n0 n0 n0 n1tt
|
n1 n1 n1 n2tt
|
n2 n2 n2
Nearring( t_1, ..., t_n )
Nearring( [t_1, ..., t_n] )
In this form the constructor function Near-ring
returns the near-ring
generated by the group
transformations t_1,dots,t_n. All of them must be transformations
on the same permutation group.
Note that Near-ring
allows also a list of group transformations as
argument, which makes it possible to call
Nearring
e.g. with a list of endomorphisms generated by the function
Endo-mor-phisms
(see Endomorphisms for groups), which for a group
G
allows to compute E(G); Near-ring
called with the list of all
inner automorphisms of a group G would return I(G).
gap> t := Transformation( Group( (1,2) ), [2,1] ); Transformation( Group( (1,2) ), [ 2, 1 ] ) gap> n := Nearring( t ); Nearring( Transformation( Group( (1,2) ), [ 2, 1 ] ) ) gap> DisplayCayleyTable( n ); Let: n0 := Transformation( Group( (1,2) ), [ 1, 1 ] ) n1 := Transformation( Group( (1,2) ), [ 1, 2 ] ) n2 := Transformation( Group( (1,2) ), [ 2, 1 ] ) n3 := Transformation( Group( (1,2) ), [ 2, 2 ] )tt+
|
n0 n1 n2 n3 ------------------ n0tt
|
n0 n1 n2 n3 n1tt
|
n1 n0 n3 n2 n2tt
|
n2 n3 n0 n1 n3tt
|
n3 n2 n1 n0tt*
|
n0 n1 n2 n3 ------------------ n0tt
|
n0 n0 n0 n0 n1tt
|
n0 n1 n2 n3 n2tt
|
n3 n2 n1 n0 n3tt
|
n3 n3 n3 n3gap> g := Group( (1,2), (1,2,3) ); Group( (1,2), (1,2,3) ) gap> e := Endomorphisms( g ); [ Transformation( Group( (1,2), (1,2,3) ), [ 1, 1, 1, 1, 1, 1 ] ), Transformation( Group( (1,2), (1,2,3) ), [ 1, 2, 2, 1, 1, 2 ] ), Transformation( Group( (1,2), (1,2,3) ), [ 1, 2, 6, 5, 4, 3 ] ), Transformation( Group( (1,2), (1,2,3) ), [ 1, 3, 2, 5, 4, 6 ] ), Transformation( Group( (1,2), (1,2,3) ), [ 1, 3, 3, 1, 1, 3 ] ), Transformation( Group( (1,2), (1,2,3) ), [ 1, 3, 6, 4, 5, 2 ] ), Transformation( Group( (1,2), (1,2,3) ), [ 1, 6, 2, 4, 5, 3 ] ), Transformation( Group( (1,2), (1,2,3) ), [ 1, 6, 3, 5, 4, 2 ] ), Transformation( Group( (1,2), (1,2,3) ), [ 1, 6, 6, 1, 1, 6 ] ), Transformation( Group( (1,2), (1,2,3) ), [ 1, 2, 3, 4, 5, 6 ] ) ] gap> nr := Nearring( e ); # the endomorphisms near-ring on S3 Nearring( Transformation( Group( (1,2), (1,2,3) ), [ 1, 1, 1, 1, 1, 1 ] ), Transformation( Group( (1,2), (1,2,3) ), [ 1, 2, 2, 1, 1, 2 ] ), Transformation( Group( (1,2), (1,2,3) ), [ 1, 2, 3, 4, 5, 6 ] ), Transformation( Group( (1,2), (1,2,3) ), [ 1, 2, 6, 5, 4, 3 ] ), Transformation( Group( (1,2), (1,2,3) ), [ 1, 3, 2, 5, 4, 6 ] ), Transformation( Group( (1,2), (1,2,3) ), [ 1, 3, 3, 1, 1, 3 ] ), Transformation( Group( (1,2), (1,2,3) ), [ 1, 3, 6, 4, 5, 2 ] ), Transformation( Group( (1,2), (1,2,3) ), [ 1, 6, 2, 4, 5, 3 ] ), Transformation( Group( (1,2), (1,2,3) ), [ 1, 6, 3, 5, 4, 2 ] ), Transformation( Group( (1,2), (1,2,3) ), [ 1, 6, 6, 1, 1, 6 ] ) ) gap> Size( nr ); 54
GAP 3.4.4