designtheory.org
Andries.Brouwer at cwi.nl
Andries.Brouwer at cwi.nl
Fri Sep 5 19:52:52 BST 2003
>> I did someting similar, long ago
> Would you care to share some details with us?
There were several ideas. One of them is the idea of pristine
source. If somebody sends me a code or design, I do not want
to convert it to my format, I want to store it in my data base
exactly as given. Of course encapsulated a bit.
So, there was a header line, usually from the email letter -
giving author and date. Perhaps a literature reference.
Some lines with type of code or design and parameters.
And an EXEC line giving the program to feed this code or design to
in order to get the thing in internal format.
This means that I do not have to choose between (0,1,0,1,1,0,0)
and 0101100 and {1,3,4} and 2C, etc. They are all OK.
And as a side result we have gotten the idea of active objects.
Asking for an object in a certain way would automatically invoke
programs of which the name and invocation was stored in the object
itself.
I did codes and designs. The basic object was a 0-1 matrix,
a row of rows. Of course some codes were ternary, or over
some larger alphabet. Single digits without separator work
when the alphabet has size less than 10, or perhaps less
than 16 or so, for larger alphabets separators between digits
are needed.
A linear code of dimension 64 has 2^64 rows, a bit too much,
even today. So, codes have several basic representations,
and in case of a linear code a basis is the obvious thing
to look at. If the thing is nonlinear but big, then probably
it has some big group, and it is represented by permutation
group and orbit representatives. Similarly, a large design is
given by group and orbit representatives.
There is also the construction by bits and pieces, referring
to other objects present already.
For example, the Higman-Sims graph can be given explicitly as
a 100x100 0-1 matrix. But it can also be given as the block
matrix belonging to a partition 1+22+77 with easy to describe
incidences. And the 77 here is again easy to describe in terms
of S(3,6,22). And that design is again easy to describe in terms
of S(5,8,24). And that design is again easy to describe in terms
of the [24,12,8] extended binary Golay code. And that code can be
given by a 12x24 generator matrix. Which again ...
Let me phrase this differently.
It is good to have a data base with descriptions very close to
something that can be published. That is good if one actually
wants to publish or show people examples by email, and is also good
when one takes codes and designs from letters or publications.
I had a closed system - maybe twenty defined operations.
If I did it again today I would probably invent some extension
language, or invent a GAP interface.
Andries
More information about the Developers
mailing list