#11624: List Sidon g-sets
-----------------------------+----------------------------------------------
   Reporter:  mraum          |          Owner:  sage-combinat
       Type:  enhancement    |         Status:  needs_review 
   Priority:  minor          |      Milestone:  sage-4.7.2   
  Component:  combinatorics  |       Keywords:               
Work_issues:                 |       Upstream:  N/A          
   Reviewer:                 |         Author:  Martin Raum  
     Merged:                 |   Dependencies:               
-----------------------------+----------------------------------------------

Old description:

> The attached patch provides a recursive algorithm that lists Sidon g-sets
> with elements of to a natural number N.
>
> '''Apply:'''
> 1. trac-11624-sidon_sets-v2.patch

New description:

 The attached patch provides a recursive algorithm that lists Sidon g-sets
 with elements of to a natural number N.

 '''Apply:'''

  1. trac-11624-sidon_sets-v2.patch
  1. trac-11624-sidon_sets-review.patch

--

Comment(by nborie):

 Thanks for being so quick...

 I propose you a reviewer patch in which I had some tests and some
 documentations, I link the file to the rst combinat tree for the built
 doc, I categorifyed from the python frozenset feature to sage categories.
 I also put the clever code in a slave cached function because sphinx
 didn't want to build documentation of any cached function.

 I checked that sage -docbuild reference html give an acceptable printout.

 Tell me if you're agree with such change, feel free to improve my words in
 English (and correct mistakes if you find some...). Categories are a
 little bit technical but it really make us win a lot. They gives some
 coherence, factorize the code and allow us to use functorial construction,
 see for example :
 {{{
 sage: S = sidon_sets(3, 2)
 sage: TestSuite(S).run(verbose=True)
 running ._test_an_element() . . .
   self.an_element doesn't have any parent

   The set doesn't seems to implement __call__; skipping test of
 construction idempotency
  pass
 running ._test_category() . . . pass
 running ._test_elements() . . .
   Running the test suite of self.an_element()
   running ._test_an_element() . . .
   The set doesn't seems to implement __call__; skipping test of
 construction idempotency
  pass
   running ._test_category() . . . pass
   running ._test_elements() . . .
   Running the test suite of self.an_element()
     running ._test_category() . . . pass
     running ._test_eq() . . . pass
     running ._test_not_implemented_methods() . . . pass
     running ._test_pickling() . . . pass
     pass
   running ._test_elements_eq() . . . pass
   running ._test_eq() . . . pass
   running ._test_not_implemented_methods() . . . pass
   running ._test_pickling() . . . pass
   running ._test_some_elements() . . . pass
   pass
 running ._test_elements_eq() . . . pass
 running ._test_eq() . . . pass
 running ._test_not_implemented_methods() . . . pass
 running ._test_pickling() . . . pass
 running ._test_some_elements() . . . pass
 sage: A = S.algebra(QQ)
 sage: A
 Free module generated by {{2}, {3}, {1, 2}, {}, {2, 3}, {1}, {1, 3}, {1,
 2, 3}} over Rational Field
 sage: A.an_element()
 2*B[{3}] + 2*B[{2}] + 3*B[{1, 2}]
 }}}
 To state if this feature is correct with what you want, just read 'Set??',
 all the magic is inside that.

 '''Apply:'''

  1. trac-11624-sidon_sets-v2.patch
  1. trac-11624-sidon_sets-review.patch

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/11624#comment:3>
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