Dear GAP - Forum,
I think there is a bug in ResidueClassOps.Intersection in GAP 3.4.4 :
The two arguments in the call of ChineseRem are in wrong order :
the first argument has to be the moduli and the second one the residues.
This bug certainly leads to wrong results, for example :
gap> x := ResidueClass(2,7); ResidueClass( 2, 7 ) gap> y := ResidueClass(3,11); ResidueClass( 3, 11 ); gap> z := Intersection(x,y); ResidueClass( 5, 77 ) # The right answer would be 'ResidueClass ( 58, 77 )'
This bug also appears in the manual on page 198.
Another question :
Why is GAP not able to compute associates in the ring of Gaussian
Integers ? :
gap> Associates(Integers,2);
[ -2, 2 ] # Correct
gap> Associates(GaussianIntegers,2);
Error, <D> must be a domain or a set in
Elements( Units( R ) ) called from
R.operations.Associates( R, r ) called from
Associates( GaussianIntegers, 2 ) called from
main loop
Stefan Kohl