Opened 4 years ago

Closed 4 years ago

#18934 closed enhancement (fixed)

New (v,6,1)-BIBD with v<=201

Reported by: ncohen Owned by:
Priority: major Milestone: sage-6.8
Component: combinatorial designs Keywords:
Cc: dimpase, vdelecroix Merged in:
Authors: Nathann Cohen Reviewers: Dima Pasechnik
Report Upstream: N/A Work issues:
Branch: 6ed1abf (Commits) Commit: 6ed1abf670cc7212d0f287458bd3af9588adf21c
Dependencies: Stopgaps:

Description (last modified by dimpase)

This branch adds new BIBD to our database. Some are stolen from the La Jolla Covering Repository (https://www.ccrwest.org/cover.html), and other from the handbook of combinatorial designs.

They will be useful to generate strongly regular graphs from Brouwer's database #18948 (http://www.win.tue.nl/~aeb/)

Nathann

Change History (32)

comment:1 Changed 4 years ago by ncohen

  • Branch set to u/ncohen/18934
  • Commit set to a0cac6672fd589aaee7f10742dea975a167ecffe
  • Status changed from new to needs_review

New commits:

a0cac66trac #18934: new BIBD: (91,7,1), (66,6,1), (76,6,1), (96,6,1)

comment:2 Changed 4 years ago by ncohen

  • Description modified (diff)

comment:3 Changed 4 years ago by git

  • Commit changed from a0cac6672fd589aaee7f10742dea975a167ecffe to e46b0583561c5c69722a306f1cd68675715556ef

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

e46b058trac #18934: New (v,6,1)-BIBD with v=201

comment:4 Changed 4 years ago by ncohen

  • Summary changed from new BIBD: (91,7,1), (66,6,1), (76,6,1), (96,6,1) to New (v,6,1)-BIBD with v<=201

comment:5 Changed 4 years ago by git

  • Commit changed from e46b0583561c5c69722a306f1cd68675715556ef to a04a2fb5139cd4f1f601935f07d63e09a03fcf95

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

a04a2fbtrac #18934: Broken doctests

comment:6 Changed 4 years ago by git

  • Commit changed from a04a2fb5139cd4f1f601935f07d63e09a03fcf95 to 11e9f1f3b3b9a64326bfe71dc1bf96c91fe52de6

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

11e9f1ftrac #18934: Last one -> (126,6,1)-BIBD

comment:7 follow-up: Changed 4 years ago by dimpase

Was this interface https://www.ccrwest.org/cover/sage.html, to the database you get these designs, removed?

comment:9 in reply to: ↑ 7 Changed 4 years ago by ncohen

Was this interface https://www.ccrwest.org/cover/sage.html, to the database you get these designs, removed?

sage: designs.best_known_covering_design_from_LJCR?

Nathann

comment:10 follow-up: Changed 4 years ago by ncohen

Most of these designs do not come from there, though. The references are in the doc.

comment:11 in reply to: ↑ 10 ; follow-up: Changed 4 years ago by dimpase

Replying to ncohen:

Most of these designs do not come from there, though. The references are in the doc.

well, I read the ticket description, and it tells a different story :-)

Still, why just do

sage: designs.best_known_covering_design_from_LJCR(66,6,2)
(66,6,2)-covering design of size 143
Lower bound: 143
Created by: Colin Barker
Submitted on: 2008-11-14 09:35:27

sage: designs.best_known_covering_design_from_LJCR(76,6,2)
(76,6,2)-covering design of size 190
Lower bound: 190
Created by: Colin Barker
Submitted on: 2008-11-14 09:37:55

for these values for parameters? (And contributing the other implementations upstream?)

comment:12 in reply to: ↑ 11 Changed 4 years ago by ncohen

  • Description modified (diff)

Yo,

well, I read the ticket description, and it tells a different story :-)

Oh, true.

for these values for parameters? (And contributing the other implementations upstream?)

Because it would means that anything that uses those constructions requires internet. And that database does not contain anything above v=100.

Nathann

comment:13 Changed 4 years ago by ncohen

And this data is "not exactly" the one found upstream either. What is advertised there as a covering has a nice automorphism group, and is actually a difference family. So I added it as such in Sage.

comment:14 follow-up: Changed 4 years ago by dimpase

Anyhow, the references to the database better be in the form

designs.best_known_covering_design_from_LJCR(66,6,2)
designs.best_known_covering_design_from_LJCR(76,6,2)

Otherwise, looks good to go.

comment:15 follow-up: Changed 4 years ago by dimpase

and, by the way:

sage: designs.best_known_covering_design_from_LJCR(91,7,2)
(91,7,2)-covering design of size 195
Lower bound: 195
Created by: Jan de Heer and Steve Muir
Method: Cyclic Steiner System
Submitted on: 2008-12-07 02:34:05

is this the same (91,7,1)-example as on this ticket?

comment:16 in reply to: ↑ 14 Changed 4 years ago by ncohen

Anyhow, the references to the database better be in the form

designs.best_known_covering_design_from_LJCR(66,6,2)
designs.best_known_covering_design_from_LJCR(76,6,2)

I do not understand what you mean.

comment:17 in reply to: ↑ 15 Changed 4 years ago by ncohen

is this the same (91,7,1)-example as on this ticket?

Yes it is. I fixed the reference.

comment:18 Changed 4 years ago by git

  • Commit changed from 11e9f1f3b3b9a64326bfe71dc1bf96c91fe52de6 to 6ed1abf670cc7212d0f287458bd3af9588adf21c

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

796bcdetrac #18934: Merged with 6.8.rc1
6ed1abftrac #18934: Fixed credits

comment:19 Changed 4 years ago by dimpase

  • Reviewers set to Dima Pasechnik
  • Status changed from needs_review to needs_work

merges cleanly in Sage 6.8.

What I meant by comment 14, is that it takes some research to dig up the way to actually get these from the database (e.g. instead of ...,1) it needs ...,2)), and it would be good to include the corresponding Sage commands in the doc. Otherwise good to go.

comment:20 Changed 4 years ago by ncohen

I still do not understand what you mean.

comment:21 Changed 4 years ago by ncohen

Can you say what modification to this branch you request?

comment:22 Changed 4 years ago by dimpase

OK, OK, you will get my branch in a moment...

comment:23 Changed 4 years ago by dimpase

  • Branch changed from u/ncohen/18934 to public/18934
  • Commit changed from 6ed1abf670cc7212d0f287458bd3af9588adf21c to 819bfa02346262814a0ff5ef3a9831eda7579739
  • Description modified (diff)
  • Status changed from needs_work to needs_review

well, if you're happy with my additions, set it to positive review...


New commits:

a5dc933Merge branch 'u/ncohen/18934' of trac.sagemath.org:sage into bibd
819bfa0added tests for LJCR examples

comment:24 Changed 4 years ago by ncohen

O_o

Bu *WHY* would you want to make sure that they are the same as upstream? What if upstream changes them? O_o

comment:25 follow-up: Changed 4 years ago by ncohen

By the way: you do not need to import BalancedIncompleteBlockDesign nor the individual functions because they are imported in the previous doctest. Also, .sort() returns 'None' and that's why b==b0 always returns 'True'.

Finally, there is an equality test defined over incidence which you should use (though it says that they are not equal, though they will be isomorphic as I relabeled them).

Nathann

Version 0, edited 4 years ago by ncohen (next)

comment:26 in reply to: ↑ 25 ; follow-up: Changed 4 years ago by dimpase

Replying to ncohen:

By the way: you do not need to import BalancedIncompleteBlockDesign nor the individual functions because they are imported in the previous doctest.

ah, OK, I never knew whether EXAMPLES and TESTS are done in the same sweep...

Also, .sort() returns 'None' and that's why b==b0 always returns 'True'.

oops. Anyhow, I merely wanted the actual calls to that designs...._LJCR be shown in the docs somewhere.

We can try isomorphism testing, but I bet it is as slow as a turtle...

comment:27 in reply to: ↑ 26 ; follow-up: Changed 4 years ago by ncohen

oops. Anyhow, I merely wanted the actual calls to that designs...._LJCR be shown in the docs somewhere.

I still can't see the point of that. All we care about (all that the function promises) is that it returns "some" bibd. If that works, then it rolls.

We can try isomorphism testing, but I bet it is as slow as a turtle...

If it is, install 'bliss'. Should go way faster.

Nathann

comment:28 in reply to: ↑ 27 ; follow-up: Changed 4 years ago by dimpase

Replying to ncohen:

oops. Anyhow, I merely wanted the actual calls to that designs...._LJCR be shown in the docs somewhere.

I still can't see the point of that. All we care about (all that the function promises) is that it returns "some" bibd. If that works, then it rolls.

Well, you seem to prefer to hide the know-how how to use LJCR in this case. It's not fair to a user that might need to use it for a similar task.

We can try isomorphism testing, but I bet it is as slow as a turtle...

If it is, install 'bliss'. Should go way faster.

Nathann

comment:29 in reply to: ↑ 28 ; follow-up: Changed 4 years ago by ncohen

Well, you seem to prefer to hide the know-how how to use LJCR in this case.

The interface with LJCR has nothing to do with this function. There is no certitude that their entry will not change, there is no reason to carve in doctests that ours and theirs should match. This doctest tests more than the function claims, so it has no reason to be.

It's not fair to a user that might need to use it for a similar task.

Nobody will have to. With this addition, there is no BIBD to be found on LJCR that Sage cannot build alone:

sage: missing = [(v,k) for v in range(101) for k in range(1,v) if designs.balanced_incomplete_block_design(v,k,existence=True) is Unknown]
sage: for v,k in missing:
....:     try:
....:         designs.balanced_incomplete_block_design(v,k,use_LJCR=True)
....:         print "found"
....:     except:
....:         pass
....:     
sage:

Do you intend to remove/fix the commit that contains the 'None == None' tests?

Nathann

comment:30 in reply to: ↑ 29 Changed 4 years ago by dimpase

  • Branch changed from public/18934 to u/ncohen/18934
  • Commit changed from 819bfa02346262814a0ff5ef3a9831eda7579739 to 6ed1abf670cc7212d0f287458bd3af9588adf21c
  • Status changed from needs_review to positive_review

Replying to ncohen:

Well, you seem to prefer to hide the know-how how to use LJCR in this case.

The interface with LJCR has nothing to do with this function. There is no certitude that their entry will not change, there is no reason to carve in doctests that ours and theirs should match. This doctest tests more than the function claims, so it has no reason to be.

It's not fair to a user that might need to use it for a similar task.

Nobody will have to. With this addition, there is no BIBD to be found on LJCR that Sage cannot build alone:

sage: missing = [(v,k) for v in range(101) for k in range(1,v) if designs.balanced_incomplete_block_design(v,k,existence=True) is Unknown]
sage: for v,k in missing:
....:     try:
....:         designs.balanced_incomplete_block_design(v,k,use_LJCR=True)
....:         print "found"
....:     except:
....:         pass
....:     
sage:

Do you intend to remove/fix the commit that contains the 'None == None' tests?

never mind. You get your branch back :)

comment:31 Changed 4 years ago by ncohen

Thanks !

comment:32 Changed 4 years ago by vbraun

  • Branch changed from u/ncohen/18934 to 6ed1abf670cc7212d0f287458bd3af9588adf21c
  • Resolution set to fixed
  • Status changed from positive_review to closed
Note: See TracTickets for help on using tickets.