sagemath / sage

Main repository of SageMath
https://www.sagemath.org
Other
1.43k stars 478 forks source link

BIBD from Transversal Designs #16279

Closed 6bdad4c1-1e26-4f2f-a442-a01a2292c181 closed 10 years ago

6bdad4c1-1e26-4f2f-a442-a01a2292c181 commented 10 years ago

This branch implements three constructions of BIBD from transversal designs. Short, efficient, AND useful for the general construction of BIBD with k=5.

As found in http://www.argilo.net/files/bibd.pdf

The constructions are explained in the documentation, too.

Depends on #16272 Depends on #16091

CC: @videlec @brettpim @dimpase @KPanComputes

Component: combinatorics

Keywords: design, bibd

Author: Nathann Cohen

Branch/Commit: 4115b72

Reviewer: Kannappan Sampath

Issue created by migration from https://trac.sagemath.org/ticket/16279

6bdad4c1-1e26-4f2f-a442-a01a2292c181 commented 10 years ago

Branch: u/ncohen/16279

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 10 years ago

Branch pushed to git repo; I updated commit sha1. Last 10 new commits:

054d2a2trac #16227: Product construction of Transversal Designs
a512ab1trac #16227: Merged with updated #15310
e62fae8corrected doctests + new doctests
4d6e964trac #16227: Replace exception with booleans in the doctests
a46446ftrac #16231: Equivalence between OA/TD/MOLS
a9dce70trac #16231: Merged with updated #16227
8d8b928more documentation to orthogonal_arrays.py
8257178remove MOLS construction for prime powers + doc
d678326trac #16272: Replacing availability by existence and forwarding the results between design constructors
c881070trac #16279: BIBD from Transversal Designs
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 10 years ago

Commit: c881070

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 10 years ago

Changed commit from c881070 to 569c485

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 10 years ago

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

569c485trac #16279: BIBD from Transversal Designs
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 10 years ago

Changed commit from 569c485 to 60e8d35

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 10 years ago

Branch pushed to git repo; I updated commit sha1. Last 10 new commits:

0812a73trac #16281: Simplification
61dc86b16281: long comment for the construction of the projective plane
51daa7ftrac #16281: correct a doctest
e090f92trac #16272: merge #16281
9a221betrac #16272: fix doctests
5074eeetrac #16272: finer doctest to test the output of transversal_design
d81f265trac #16272: ultimate doctest
47798d2trac #16272: simplifying the structure of orthogonal_array
d34b012trac #16272: Merged with updated #16227
60e8d35trac #16279: Merged with updated #16272
6bdad4c1-1e26-4f2f-a442-a01a2292c181 commented 10 years ago
comment:5

Still updating..

Nathann

videlec commented 10 years ago

Changed keywords from none to design, bibd

videlec commented 10 years ago
comment:6

adding keyword...

KPanComputes commented 10 years ago
comment:8

Hi Nathann,

I would like to review this patch and I have the following remarks about your patch:

In view of these remarks, I am setting this to needs_work ;-).

[If not for the fact that does not build, I would have went ahead and made the other changes...]

-- Kannappan.

6bdad4c1-1e26-4f2f-a442-a01a2292c181 commented 10 years ago
comment:10

That was because `(v,k,1)`-BIBD is okay for Sphinx, but `(v,k,1)-`BIBD is not. Which he clearly reported by saying "Something is wrong". I hate this thing.

Anyway, fixed.

I also avoided the word "replaced" using the same phrasing as in the two other constructions. I also replaced two occurrences of BIBD by BIBDs to make it clearer that we were talking of several BIBD.

I also merged #16091 in, as it is a dependency of this patch.

Nathann

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 10 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

927d325trac #16279: Merged with 6.2
e1b29bftrac #16279: Fixing the doc
e722cb1trac #16091: A missing obvious case for BIBD
e941a54trac #16279: Merged with updated #16091
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 10 years ago

Changed commit from 60e8d35 to e941a54

KPanComputes commented 10 years ago
comment:13

Hi!

[tensor   ] build succeeded.

I have seen that there is a discussion on sage-devel. So, I will see what I can do to fix it. I will have this patch reviewed by evening tommorrow (for me!). Sorry for the delay, Nathann.

-- Kannappan.


New commits:

927d325trac #16279: Merged with 6.2
e1b29bftrac #16279: Fixing the doc
e722cb1trac #16091: A missing obvious case for BIBD
e941a54trac #16279: Merged with updated #16091
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 10 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

c127a6dtrac #16272: Merged with updated #16231
e2749b3trac #16272: Merged with 6.3.beta0
4115b72trac #16279: Merged with updated #16272
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 10 years ago

Changed commit from e941a54 to 4115b72

KPanComputes commented 10 years ago
comment:15

Hi Nathann,

I just have one query: given that the method is called BIBD_From_TD, I was expecting the function to return a block design, but it returns a list instead. I also noted that this method is used in the BalancedIncompleteBlockDesign to construct a block design when existence = True. So, this is probably the desiderata, but I thought that this is worth pointing out...

You may set this to positive review if you would like to return a list instead of a BlockDesign...

This ticket reviewed using SMC!! :-) --Kannappan.

KPanComputes commented 10 years ago

Reviewer: Kannappan Sampath

6bdad4c1-1e26-4f2f-a442-a01a2292c181 commented 10 years ago
comment:16

Helloooooooo !!!

I just have one query: given that the method is called BIBD_From_TD, I was expecting the function to return a block design, but it returns a list instead.

Hmmmm... Well, admittedly I do not like to wrap a list in a class if I don't need to (because doing so may cost non-trivial computations), but in this case the function is really only made to be called by the "main" method, i.e. the constructor of BIBD. It can be called recursively, and it would be nice if we don't convert all the stuff into a Block Design during those calls as we have no reason to ^^;

You may set this to positive review if you would like to return a list instead of a BlockDesign...

Thank you very much ! Now we are only one ticket away from having ALL bibd with k=5, and I have another code ready on my computer : Wilson's construction of MOLS with two truncated groups, which should make a big difference in our table of MOLS. But that's for a bit later, for many patches are still waiting to be merged and this is already sufficiently complicated as it is. Pretty soon, I hope !!!

Nathann

vbraun commented 10 years ago

Changed branch from u/ncohen/16279 to 4115b72