Thanks Dima. I certainly agree that there is a mathematical error with my approach. I'm wondering if there is still a bug since the result of compare(x,y) and P.islequal(x,y) differ. Shouldn't they be the same, even if I am giving them bad input?
Best Regards, Trevor Karn On Thu, Jan 12, 2023 at 5:52 AM Dima Pasechnik <dimp...@gmail.com> wrote: > No, no bug (yet). > > The problem is that you are not careful constructing the correct subgroups > to use. > E.g. if you want groups[2] to be a subgroup of groups[5]=<(1,2,3,4)> > you must take groups[2]=<(1,3)(2,4)>, not groups[2]=<(1,2)(3,4)>. > You can start with the maximal subgroups of S_5, and intersect them, then > intersect the intersections, etc. > > Or you can rewrite your compare(a,b) in terms of "an element of the > conjugacy class of subgroups with `b` > a representative contained in `a`" > E.g. using libgap: > > sage: > groups[-1]._libgap_().ConjugacyClassSubgroups(groups[1]._libgap_()).Elements() > [ Group([ (4,5) ]), Group([ (3,4) ]), Group([ (3,5) ]), Group([ (2,3) ]), > Group([ (2,4) ]), Group([ (2,5) ]), Group([ (1,2) ]), Group([ (1,3) ]), > Group([ (1,4) ]), Group([ (1,5) ]) ] > > But this might well be a different poset, as once you fixed just one > maximal subgroup H_1, the conjugacy class of the 2nd maximal subgroup H_2 > might already be splitting into different orbits w.r.t. conjugaction by > H_1, so potentially different choices, etc... > > HTH > Dima > > > On Wednesday, January 11, 2023 at 6:30:32 PM UTC dmo...@deductivepress.ca > wrote: > >> P erroneously thinks that GA(1,5) is less than A5. I have no idea what's >> causing that either. >> >> On Wednesday, January 11, 2023 at 11:21:39 AM UTC-7 Trevor Karn wrote: >> >>> Thanks for the confirmation. I'll double check this is not a logic bug >>> before I open a ticket. >>> >>> On Wednesday, January 11, 2023 at 1:20:09 PM UTC-5 Trevor Karn wrote: >>> >>>> At least part of the problem is that I gave bad generators for GA(1,5). >>>> It should be [[(1,2,3,4,5)],[(2,3,5,4)]]. >>>> >>>> On Wednesday, January 11, 2023 at 11:58:32 AM UTC-5 Trevor Karn wrote: >>>> >>>>> Hi all, >>>>> >>>>> I was wondering if anyone can reproduce this bug with Poset creation. >>>>> I create a Poset by passing the elements and the comparison function as a >>>>> tuple (elements, func) and a pair of elements for which func(x,y) returns >>>>> True has P.lequal(x,y) returning False >>>>> >>>>> I'm trying to create the subgroup lattice up to conjugacy of S5. >>>>> >>>>> sage: load('s5-subgroup.sage') # builds poset, see below >>>>> sage: groups[-2] >>>>> Permutation Group with generators [(1,2,3), (1,2,3,4,5)] >>>>> sage: groups[-1] >>>>> Permutation Group with generators [(1,2), (1,2,3,4,5)] >>>>> sage: compare(groups[-2], groups[-1]) >>>>> True >>>>> sage: P.is_lequal('A5','S5') >>>>> False >>>>> >>>>> The content of 's5-subgroup.sage' is below. >>>>> >>>>> gens = [ >>>>> [[]], # trivial >>>>> [[(1,2)]], # S2 >>>>> [[(1,2),(3,4)]], #z/2 >>>>> [[(1,2)],[(3,4)]], # disjoint V4 >>>>> [[(1,2),(3,4)],[(1,3),(2,4)]], # double transp V4 >>>>> [[(1,2,3,4)]], # z/4 >>>>> [[(1,2,3,4)],[(1,3)]], # D8 (D4 in GAP notation) >>>>> [[(1,2,3)]], # z/3 >>>>> [[(1,2,3)],[(4,5)]], # z/6 >>>>> [[(1,2,3)],[(1,2)]], # S3 >>>>> [[(1,2,3)],[(1,2),(4,5)]], # twisted S3 >>>>> [[(1,2,3)],[(1,2)],[(4,5)]], # S3 x S2 >>>>> [[(1,2),(3,4)],[(1,2,3)]], # A4 >>>>> [[(1,2,3,4)],[(1,2)]], # S4 >>>>> [[(1,2,3,4,5)]], # z/5 >>>>> [[(1,2,3,4,5)],[(2,5),(3,4)]], # D10 >>>>> [[(1,2,3,4,5)],[(2,3,4,5)]], # GA(1,5) >>>>> [[(1,2,3,4,5)],[(1,2,3)]], # A5 >>>>> [[(1,2,3,4,5)],[(1,2)]] # S5 >>>>> ]; >>>>> >>>>> strs = ['1', 'S2', 'Z/2', 'V4', 'V4 (dbl)', 'Z/4', 'D8', >>>>> 'Z/3', 'Z/6', 'S3', 'S3 (twist)', 'S3xS2', >>>>> 'A4', 'S4', 'Z/5', 'D10', 'GA(1,5)', 'A5', >>>>> 'S5'] >>>>> >>>>> to_group = lambda x: PermutationGroup(gens=x); >>>>> groups = list(map(to_group, gens)); >>>>> compare = lambda x, y: x.is_subgroup(y); >>>>> P = Poset(data=(groups, compare), element_labels=strs) >>>>> >>>>> >>>>> >>>>> -- > You received this message because you are subscribed to a topic in the > Google Groups "sage-devel" group. > To unsubscribe from this topic, visit > https://groups.google.com/d/topic/sage-devel/x0ioULPipfE/unsubscribe. > To unsubscribe from this group and all its topics, send an email to > sage-devel+unsubscr...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/sage-devel/9ee1e630-2657-46ce-956e-3e0f49f8814an%40googlegroups.com > <https://groups.google.com/d/msgid/sage-devel/9ee1e630-2657-46ce-956e-3e0f49f8814an%40googlegroups.com?utm_medium=email&utm_source=footer> > . > -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/CAJ6VCMAVP6HvzwpKCHVk1woY4tM3_dmENXwLddmxO2%3DWUe7_3g%40mail.gmail.com.