I put the following code in GAP:
R := Integers mod 8;
and I get the answer:
[ ZmodnZObj( 1, 8 ), ZmodnZObj( 1, 8 ) ]
Can someone explain why the generator is repeated there?
I put the following code in GAP:
R := Integers mod 8;
and I get the answer:
[ ZmodnZObj( 1, 8 ), ZmodnZObj( 1, 8 ) ]
Can someone explain why the generator is repeated there?
What GAP really uses is
GeneratorsOfRingWithOne(which is as you would expect). If you callGeneratorsOfRing, GAP goes into a generic routine that just always adds the one as an extra generator.One can argue whether this is the best one can do, but so far (there is little implemented for rings without one) this has not been a practical problem.
How did I find this out: I checked (before asking for the
GeneratorsOfRing) thatGeneratorsOfRingwere not yet storedand then used
ApplicableMethodto get the actual code that computes the value: