diff --git a/gap/semigroups/semigraph.gi b/gap/semigroups/semigraph.gi index cc4eb76ae..1f7d0c3b5 100644 --- a/gap/semigroups/semigraph.gi +++ b/gap/semigroups/semigraph.gi @@ -188,16 +188,17 @@ function(x, n) end); InstallMethod(\<, "for elements of a graph inverse semigroup", +IsIdenticalObj, [IsGraphInverseSemigroupElement, IsGraphInverseSemigroupElement], {x, y} -> x![1] < y![1]); InstallMethod(\=, "for elements of a graph inverse semigroup", +IsIdenticalObj, [IsGraphInverseSemigroupElement, IsGraphInverseSemigroupElement], {x, y} -> x![1] = y![1]); -# here - InstallMethod(\*, "for elements of a graph inverse semigroup", +IsIdenticalObj, [IsGraphInverseSemigroupElement, IsGraphInverseSemigroupElement], function(x, y) local type, graph, range, source, xobj, yobj, i, j; diff --git a/tst/standard/semigroups/semigraph.tst b/tst/standard/semigroups/semigraph.tst index 703473064..3f40e5004 100644 --- a/tst/standard/semigroups/semigraph.tst +++ b/tst/standard/semigroups/semigraph.tst @@ -9,6 +9,7 @@ ## #@local D, DigraphNrVertices, DigraphRange, DigraphSource, S, gr, s, x, y +#@local G, H gap> START_TEST("Semigroups package: standard/semigroups/semigraph.tst"); gap> LoadPackage("semigroups", false);; @@ -128,6 +129,25 @@ gap> S := GraphInverseSemigroup(D); gap> VerticesOfGraphInverseSemigroup(S); [ v_1, v_2, v_3, v_4, v_5, v_6, v_7, v_8, v_9, v_10, v_11, v_12 ] +# Issue 1177 - check FamilyObj for graph inverse semigroup element binary ops +gap> D := Digraph([[4, 5], [1, 3, 4, 5], [1, 4, 5], [], [4]]); + +gap> G := GraphInverseSemigroup(D); + +gap> H := GraphInverseSemigroup(D); + +gap> G = H; +false +gap> G.1 in H; +false +gap> G.1 < H.1; +Error, no method found! For debugging hints type ?Recovery from NoMethodFound +Error, no 1st choice method found for `<' on 2 arguments +gap> G.1 < G.1; +false +gap> G.1 = H.1; +false + # gap> SEMIGROUPS.StopTest(); gap> STOP_TEST("Semigroups package: standard/semigroups/semigraph.tst");