An ideal of a nearring (N,+,*) is a subset I such that I is a normal subgroup of (N,+), and for all i Î I, n,m Î N, we have (m+i)*n - m*n Î I and n*i Î I. Ideals are in one-to-one correspondence to the congruence relations on (N,+,*).
A right ideal of a nearring (N,+,*) is a subset I such that I is a normal subgroup of (N,+), and for all i Î I, n,m Î N, we have (m+i)*n - m*n Î I. Right ideals are in one-to-one correspondence to the congruence relations on (N,+, { lm | m Î M } ), where lm (n) : = n*m. Hence, right ideals describe the congruences of the N-group NN.
A left ideal of a nearring (N,+,*) is a subset I such that I is a normal subgroup of (N,+), and for all i Î I, n Î N, we have n*i Î I.
For all sorts of nearrings direct products A ×B can be constructed. The
result is again a nearring. In the case that both A and B
are TransformationNearRings
, the result will be a TransformationNearRing
acting on the direct product of the groups A and B act on. In any other
case the result is an ExplicitMultiplicationNearRing
, even if one of the
factors is a TransformationNearRing
. In any case, the elements of a direct
product are not pairs or tuples.
gap> A := LibraryNearRing( GTW8_2, 12 ); LibraryNearRing(8/2, 12) gap> B := LibraryNearRing( GTW12_4, 13 ); LibraryNearRing(12/4, 13) gap> D := DirectProductNearRing( A, B ); DirectProductNearRing( LibraryNearRing(8/2, 12), LibraryNearRing(12/4, 13) ) gap> SetName( D, "A x B" ); gap> D; A x BIn this case the result is an
ExplicitMultiplicationNearRing
.
It is a good idea to give a shorter name to the nearring D, because
we will investigate one of its ideals in the next section.
We go on with the last example of the previous section and try to
compute a left ideal which is generated by two elements, namely the
second and the twenty-fifth in the sorted list of elements. The GAP
function list{[ poss ]}
constructs a list of those elements
of the list list
the position in the list list
of which is
in the list poss
. For short, elms{[2,25]}
is a list which
contains the second and the twenty-fifth element of the list elms
.
gap> elms := AsSortedList( D );; gap> gens := elms{[2,25]}; [ (( 8, 9,10)), ((3,5)(4,6)) ] gap> L := NearRingLeftIdealByGenerators( D, gens ); < nearring left ideal >Now we can start investigating I. We can compute its size and test if it is an ideal.
gap> Size( L ); 24 gap> IsNearRingRightIdeal( L ); true gap> L; < nearring ideal of size 24 >So L is a two-sided ideal with 24 elements. Now we are getting interested in L. Is it a maximal ideal, what is the factor D/L?
gap> IsMaximalNearRingIdeal( L ); false gap> F := D/L; FactorNearRing( A x B, < nearring ideal of size 24 > ) gap> PrintTable( F, "am" ); + | n0 n1 n2 n3 -------------------- n0 | n0 n1 n2 n3 n1 | n1 n0 n3 n2 n2 | n2 n3 n0 n1 n3 | n3 n2 n1 n0 * | n0 n1 n2 n3 -------------------- n0 | n0 n0 n0 n0 n1 | n0 n0 n0 n0 n2 | n0 n0 n0 n0 n3 | n0 n0 n0 n0Here, we use
PrintTable
with a second argument, because we do
not want to see all the information. Here a
stands for addition and m
stands for multiplication table. For more options see the reference
manual. Obviously, F is a constant nearring on a group of order 4.
The additive group of the nearring is Z2 ×Z2. To make this
fact more obvious, we choose other names (symbols) for the elements
of the nearring and print the addition table again.
gap> IsElementaryAbelian( GroupReduct( F ) ); true gap> # this would also convince us gap> IsCyclic( GroupReduct( F ) ); false gap> SetSymbols( F, ["(0,0)","(0,1)","(1,0)","(1,1)"] ); gap> PrintTable( F, "m" ); * | (0,0) (0,1) (1,0) (1,1) ----------------------------------- (0,0) | (0,0) (0,0) (0,0) (0,0) (0,1) | (0,0) (0,0) (0,0) (0,0) (1,0) | (0,0) (0,0) (0,0) (0,0) (1,1) | (0,0) (0,0) (0,0) (0,0)So F is the zero-ring on Z2 ×Z2, which is not simple, but we knew that before.
Of course all this operations can be applied to all nearrings.
[Up] [Previous] [Next] [Index]
SONATA-tutorial manual