#15288: Balanced Incomplete Block Designs with k=4
-------------------------+-------------------------------------------------
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: | 79386587dc542a0741cb16f7bc99bd0792e4fe75
Nathann Cohen | Stopgaps:
Report Upstream: N/A |
Branch: |
public/15288 |
Dependencies: |
#15287 |
-------------------------+-------------------------------------------------
Comment (by dimpase):
Replying to [comment:18 ncohen]:
> > Do you understand the meaning of the word `consistency`? Just
wondering...
>
> My point was to show you that if I try to be consistent with something
you don't like, the result is the same `:-P`
>
> > I don't have time to control all the code you produce for consistency,
sorry. But, indeed, I am of opinion that `designs.*` must all return the
stuff from the same class. And I am sure the majority on sage-devel would
support me on this, if you think that I am not sufficient authority for
you.
>
> No authority is ever sufficient to enforce a bad idea. For instance you
will never make "MOLS" return block designs. They return lists of sets
from time to time. And Orthogonal arrays are not block designs when you
call `orthogonal_array`. So no, these function will never all return the
same thing.
>
> > But `graphs.*` do not do this, and `designs.*` do. Some have to give,
and it's certainly `designs.*`.
>
> `graphs.something` sometimes return lists of graphs, or iterators on
them. Though it is true that *they* are more consistent.
>
> > No, this design (more precisely, absence of one) is crap, it throws
away the fact that list in question is a list of blocks of BIBD.
>
> Who cares ? You know it when you build it, and you do whatever you want
afterwards !
a user can go through `designs.*` and call functions, like
You can change the sets of a block design without changing the name.
Actually, with your strandards the design of `BlockDesign` is pretty bad,
for `.blocks()` does not return a copy of the blocks but the blocks
themselves, so I wondered at some point if it was safe to do that. See ?
More copies for nothing, just because you want to wrap them in a data
structure when nobody requested it.
`ProjectivePlaneDesign()` is written by you, isn't it? And it does return
`IncidenceStructure`. Needless to say, `ProjectivePlaneDesign()` is a
BIBD. You simply do not have a good argument to justify why in different
cases you return different classes.
--
Ticket URL: <http://trac.sagemath.org/ticket/15288#comment:20>
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.