The following example shows an issue where = is able to recognise that the zero element is equal to an element of the semigroup, but in is not. I have not been able to find a smaller or simpler digraph where this happens
gap> D := Digraph([[4,5],[1,3,4,5],[1,4,5],[],[4]]);
<immutable digraph with 5 vertices, 10 edges>
gap> G := GraphInverseSemigroup(D);
<finite graph inverse semigroup with 5 vertices, 10 edges>
gap> c := CongruencesOfSemigroup(GraphInverseSemigroup(D))[3];
<graph inverse semigroup congruence with H = [ 1, 4, 5 ] and W = [ 2 ]>
gap> p := EquivalenceRelationPartitionWithSingletons(c);;
gap> p[1][22] = MultiplicativeZero(G);
true
gap> MultiplicativeZero(G) in p[1];
false
The following example shows an issue where = is able to recognise that the zero element is equal to an element of the semigroup, but in is not. I have not been able to find a smaller or simpler digraph where this happens