#10335: Add domains for permutation groups
-----------------------------+----------------------------------------------
   Reporter:  mhansen        |       Owner:  joyner    
       Type:  enhancement    |      Status:  needs_work
   Priority:  major          |   Milestone:  sage-5.0  
  Component:  group theory   |    Keywords:            
     Author:  Mike Hansen    |    Upstream:  N/A       
   Reviewer:  Robert Miller  |      Merged:            
Work_issues:                 |  
-----------------------------+----------------------------------------------

Comment(by rbeezer):

 This looks real good, Mike.  I spent some time with this today.  I know
 its not done yet, but hopefully the following will be helpful.

 I applied the patch from sage-combinat for #8359 to 4.7.alpha1, as best I
 could tell (used patch from
 http://combinat.sagemath.org/hgwebdir.cgi/patches/rev/508d4942a6d2).  One
 hunk failure at sage/combinat/root_system/all.py.  Then #10334 had a hunk
 failure in sage/groups/perm_gps/permgroup.py and #10335 had a had failure
 in sage/categories/pushout.py.  All easy to fix by hand, and maybe a
 result of not getting the right thing from the sage-combinat server.

 Passed all tests in sage/groups/perm_gps, except two, so not too far off.
 Both doctest failures look very minor, and a  result of routines I wrote
 that have been added recently.

 {{{
 **********************************************************************
 File "/sage/dev/devel/sage-main/sage/groups/perm_gps/permgroup.py", line
 1920:
     sage: G.subgroups()
 Expected:
     [Permutation Group with generators [()],
      Permutation Group with generators [(2,3)],
      Permutation Group with generators [(1,2)],
      Permutation Group with generators [(1,3)],
      Permutation Group with generators [(1,2,3)],
      Permutation Group with generators [(1,3,2), (1,2)]]
 Got:
     [Permutation Group with generators [()],
      Permutation Group with generators [(2,3)],
      Permutation Group with generators [(1,2)],
      Permutation Group with generators [(1,3)],
      Permutation Group with generators [(1,2,3)],
      Permutation Group with generators [(1,2), (1,3,2)]]
 **********************************************************************
 File "/sage/dev/devel/sage-main/sage/groups/perm_gps/permgroup.py", line
 2082:
     sage: A.cosets(S)
 Expected:
     Traceback (most recent call last):
     ...
     ValueError: Subgroup of SymmetricGroup(3) generated by [(1,2)] is not
 a subgroup of AlternatingGroup(3)
 Got:
     Traceback (most recent call last):
       File "/sage/dev/local/bin/ncadoctest.py", line 1231, in run_one_test
         self.run_one_example(test, example, filename, compileflags)
       File "/sage/dev/local/bin/sagedoctest.py", line 38, in
 run_one_example
         OrigDocTestRunner.run_one_example(self, test, example, filename,
 compileflags)
       File "/sage/dev/local/bin/ncadoctest.py", line 1172, in
 run_one_example
         compileflags, 1) in test.globs
       File "<doctest __main__.example_61[29]>", line 1, in <module>
         A.cosets(S)###line 2082:
     sage: A.cosets(S)
       File "/sage/dev/local/lib/python/site-
 packages/sage/groups/perm_gps/permgroup.py", line 2099, in cosets
         raise ValueError("%s is not a subgroup of %s" % (S, self))
     ValueError: Subgroup of (Symmetric group of order 3! as a permutation
 group) generated by [(1,2)] is not a subgroup of Alternating group of
 order 3!/2 as a permutation group
 **********************************************************************
 }}}

 I think the stabilizer() routine needs some work.

 {{{
 try:
     postition = self._domain_to_gap[point]
 except KeyError:
     return self.subgroup(gens=self.gens())
 return self.subgroup(gap_group=gap.Stabilizer(self, point))
 }}}

 "position" is mis-spelled as first defined, and in the return, I think
 "point" should be replaced with "position".  With these changes, this
 seems to work properly with a non-trivial domain in play.

 Not a comprehensive look, but hopefully of use.  Let me know what I can do
 to help (including assisting with documentation).  It'd be nice if there
 was a patch, or something, at #8359 explaining how best to apply that
 work.

 Rob

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/10335#comment:9>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en.

Reply via email to