> < ^ Date: Thu, 16 Sep 1999 22:43:32 +0200
< ^ From: Sergio Polini <s.polini@mclink.it >
> < ^ Subject: Equivalence relations

Dear GAP forum,

I'm sure I'm missing something, but I can't understand the difference
between:

```a) IsBinaryRelation( R );
^^^
b) IsSymmetricBinaryRelation( rel ).
^^^^^
```

For example, if I write:

gap> A := Domain([1,2,3,4]);;
gap> elems := [Tuple([1,1]),Tuple([2,2]),Tuple([3,3]),Tuple([4,4]),
Tuple([1,3]),Tuple([3,1]),Tuple([2,4]),Tuple([4,2])];;
gap> R := GeneralMappingByElements(A, A, elems);
<general mapping: <object> -> <object> >
gap> IsTotal(R);
true
gap> IsBinaryRelation(R);
true
gap> IsSymmetricBinaryRelation(R);
Error no method found for operation IsSymmetricBinaryRelation with 1
argument
etc.

How many arguments does "rel" mean? (Other argument sets, such as "A, A,
elems", "R, elems", "elems", etc. don't work either.)

If I write:

gap> R := EquivalenceRelationByPartition(A, [[1,3],[2,4]]);
<equivalence relation on <object> >
gap> IsSymmetricBinaryRelation(R); # one argument!
true

it works. But if I assign an equivalence relation to R, I already know
that it is a symmetric, reflexive and transitive relation!

Please, could anybody tell me what I'm missing?

Thanks

Sergio