#16227: Product construction of Transversal Designs
-------------------------+-------------------------------------------------
       Reporter:         |        Owner:
  ncohen                 |       Status:  needs_review
           Type:         |    Milestone:  sage-6.2
  enhancement            |   Resolution:
       Priority:  major  |    Merged in:
      Component:         |    Reviewers:
  combinatorics          |  Work issues:
       Keywords:         |       Commit:
        Authors:         |  a512ab154b21caaf74d6ccef2cf32bf67179eee9
  Nathann Cohen          |     Stopgaps:
Report Upstream:  N/A    |
         Branch:         |
  u/ncohen/16227         |
   Dependencies:         |
  #15310                 |
-------------------------+-------------------------------------------------

Comment (by vdelecroix):

 Replying to [comment:5 ncohen]:
 > Yo !
 >
 > > 1) As I mentioned in #15310, I would prefer to have `TD_product` to be
 something called with arguments `k,n1,n2` as it is for Wilson
 construction. Specifications {{{def
 TD_product(k,n1,n2,TD1=None,TD2=None)}}} might be better. But then, if you
 provide TD1 and TD2, the arguments k,n1,n2 are redundant.
 >
 > What is the point of having a function `TD_product` which only takes
 integer as input ? What can it do that `designs.transversal_design(...)`
 does not already do ?
 >
 > What we could do is implement a second function
 TD_product_from_parameters which calls the other ?

 Sometimes you want only functions with the same prototype and sometimes
 you claim it is better otherwise...

 > > 3) As Brett mentioned in #15310, it would make sense to have a more
 involved `find_wilson_decomposition` which also contains product. There
 are tons of variants of Wilson decomposition and according to Colbourne-
 Dinitz this is how most of the current records are obtained. We might
 concentrate all the non-direct constructions into a global function
 `build_TD_from_smaller_ones` or `generalized_Wilson_construction`.
 >
 > Whyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy ?
 >
 > Right now I am building all the constructions of OA in such a way that
 they all take the same parameters :
 >
 > {{{function_that_builds_OA(k,n,availability)}}}
 >
 > and it does what you expect, i.e. try if it is able to build this OA and
 answers accordingly. If we can make all functions that return OA behave
 this way, and the constructor can look like this :

 All right. What I meant is that it makes sense to try Wilson and product
 in the same function that builds OA. But on the other hands, calling
 divisors is relatively cheap on the kind of entries you will have. In a
 near future (and according to the TODO) the Wilson construction might be
 much more involved... will see.

 There was doctest error that I solved on u/vdelecroix/16227. I also added
 curiosity doctests (the current maximum k that Sage knows from n between
 10 and 20).

 See the changes in u/vdelecroix/16227, if you are happy with them this is
 good to go.

--
Ticket URL: <http://trac.sagemath.org/ticket/16227#comment:8>
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 unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.

Reply via email to