\documentstyle[12pt,epsf]{article}
\textwidth12.7cm
\newcommand{\EN}{\mbox{\bf N}}
\newcommand{\EZ}{\mbox{\bf Z}}
\newcommand{\ER}{\mbox{\bf R}}
%\newcommand{\EN}{{\Bbb N}}
%\newcommand{\EZ}{{\Bbb Z}}
%\newcommand{\ER}{{\Bbb R}}

\newcommand{\spn}{\mbox{span}}
\newcommand{\tc}{\tilde{c}}
\newtheorem{theorem}{Theorem}
\newtheorem{algorithm}{Algorithm}
\newtheorem{remark}{Remark}
\newtheorem{definition}{Definition}
\title{The Simple 7-(33,8,10)-Designs with Automorphism Group P$\Gamma$L(2,32)}
\author{Alfred~Wassermann}
\date{ }
\begin{document}
\maketitle
\begin{abstract}
Lattice basis reduction in combination with
an efficient backtracking algorithm is used to find all (4 996 426)
simple 7-(33,8,10) designs with automorphism group
P$\Gamma$L(2,32). The paper contains a short description 
of the algorithm.
\end{abstract}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{Introduction}
Let $X$ be a $v$-set (i.e.~a set with $v$ elements) whose elements are called 
{\em points}.
A {\em $t$-$(v,k,\lambda)$ design} is a collection of $k$-subsets
(called {\em blocks}\/) of $X$ with the property that any $t$-subset of $X$ is
contained in exactly $\lambda$ blocks.
A $t$-$(v,k,\lambda)$ design
is called {\em simple} if no blocks are repeated, and {\em trivial}
if every $k$-subset of $X$ is a block and occurs the same number of times in
the design.

A straightforward approach to the construction of $t$-$(v,k,\lambda)$ designs
is to consider the matrix
$$M_{t,k}^v := (m_{i,j}),\quad i=1,\ldots,{v\choose t},\; 
j=1,\ldots,{v\choose k}:$$
The rows of $M_{t,k}^v$ are indexed by the $t$-subsets of $X$ and the columns 
by the $k$-subsets of $X$. We set $m_{i,j}:=1$ if the $i$-th $t$-subset is contained in the
$j$-th $k$-subset, otherwise $m_{i,j}:=0$.
Simple $t$-$(v,k,\lambda)$ designs therefore correspond to
$\{0,1\}$-solutions $x$ of the system of ${v\choose t}$ linear equations:
$$
M_{t,k}^v \cdot x = \lambda(1,1,\ldots,1)^\top.
$$
Unfortunately, for most designs with interesting parameters
$v,t,k$ the size of the matrix $M_{t,k}^v$ is prohibitively large.
For example in the case of $v=33$, $t=7$ and $k=8$ the matrix 
$M_{7,8}^{33}$ has $4\,272\,048$ rows and $13\,884\,156$ columns.

But by assuming a group action on the set $X$ the size of $M_{t,k}^v$ can be
dramatically reduced. A group $G$ acting on $X$ induces also an action on 
the set of $t$-subsets and the set of $k$-subsets of $X$.
With $A_{t,k}=(a_{i,j})$ we denote the matrix where $a_{ij}$ counts the number
of those elements in the $j$-th orbit of $G$ on the $k$-subsets of $X$ which
contain a representative of the $i$-th orbit of $t$-subsets of $X$.
This matrix was introduced by 
{\sc Kramer} and {\sc Mesner} \cite{krames}. They observed:
\begin{theorem}(see \cite{krames})
A simple $t$-$(v,k,\lambda)$ design with 
$G\leq \mbox{\em Sym}(X)$
as an automorphism group exists if and only if there is a $\{0,1\}$-solution $x$ to the
matrix equation
\begin{equation}
A_{t,k} \cdot x = \lambda(1,1,\ldots,1)^\top. \label{equ1}
\end{equation}
\end{theorem}
Taking the group $\mbox{P$\Gamma$L}(2,2^5)$ the matrix $A_{7,8}$ in the above
example has 32 rows and 97 columns. 
Nevertheless it is still a respectable task to find 
solutions of (\ref{equ1}).

Finding solutions for this problem requires algorithms which do searching
in high dimensional spaces. These algorithms can roughly
be divided into two classes,
depending on whether they search in a systematic manner for all possible 
solutions or if they just try to find one solution. 

For finding just one solution the algorithms are mostly randomized, for
example simulated annealing, combinatorial optimization, local search
\cite{Ma91} and
lattice basis reduction \cite{KR86,RK88,BKKLW95}. See \cite{Ma91} for a survey.
Recently also algorithms which use Gr\"obner bases have been proposed
\cite{SW94,UWZ94}. 

In \cite{KR86} the authors used the original lattice basis reduction algorithm
(LLL)
as described in \cite{LLL82} and a lattice like the one proposed in 
\cite{LO85}. 
Meanwhile lattice basis reduction algorithms have been greatly improved. 
New algorithms were invented by {\sc Schnorr}, \cite{S87,S88,SE91}.
Also new lattices have been proposed, see \cite{CLOS91,JS91}.

\bigskip
On the contrary,
in order to find \underline{all} $\{0,1\}$-solutions of (\ref{equ1}) 
until now only exhaustive search techniques based 
on backtracking have been used, 
see for example \cite{Ma91,McKay}. 
{\sc Schmalz} \cite{Schmalz} used a graph theoretical approach, he
enumerates all solutions implicitely via graphs.

The new approach -- using lattice basis reduction \cite{LLL82} --
is to construct a basis of the 
kernel of the equation
\begin{equation}
\pmatrix{  &         & & 1\cr
           & A_{t,k} & & \vdots\cr
           &         & & 1\cr}
\pmatrix{x\cr y\cr} = \pmatrix{0\cr\vdots\cr 0\cr}\;,\quad x_i\in\EZ,y\in\EZ
\label{equ2}
\end{equation}
which consists of short integer vectors.
But the shortest integer vectors (in the euclidean norm) 
in the kernel of (\ref{equ2})
need not correspond to solutions 
of our $\{0,1\}$-problem (\ref{equ1}).
{\sc Kaib} and {\sc Ritter} proposed in \cite{KR95} an algorithm which enumerates all
solutions with $y=\pm\lambda$ as linear combination of this short integer basis
vectors.

The first step of this algorithm 
-- finding a basis of the kernel --
can be done in 
polynomial time in the number of columns of
the Kramer Mesner matrix $A_{tk}$ with the help
of lattice basis reduction \cite{LLL82}. But 
the explicit enumeration in the second step
of \cite{KR95} is still 
an exponential algorithm whilst in most cases much faster than the brute force 
enumeration as it was used in the above mentioned algorithms.
Thus in some sense this algorithm combines the 
two classes of algorithms to solve (\ref{equ1}).

This is the first announcement of the $4\,996\,246$ 7-(33,8,10)-designs
with automorphism group P$\Gamma$L(2,32) together with a short overview 
of the algorithm. A more detailed description will be submitted to
the {\em Journal of Combinatorial Designs}.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{From linear equations to lattices}
As in \cite{BKKLW95} we transform the Kramer Mesner matrix $A_{tk}$
with $l$ rows and $s$ columns 
into the matrix
\begin{equation}
\left(
\begin{array}{rcl|cc}
            &    & &   c_01    & 0       \\
            & c_0\mbox{{\large $A_{tk}$}} & & \vdots & \vdots   \\
            &    & &  c_01     & 0       \\ \hline
          c_12 & \multicolumn{2}{c|}{\mbox{\raisebox{-5pt}{\large $0$}}} &  0   & c_11    \\
            & \ddots && \vdots & \vdots  \\
          \multicolumn{2}{c}{\mbox{\raisebox{5pt}{\large $0$}}}  &c_12&  0   & c_11    \\ \hline
          0  & \ldots   &0 &  1     & 0  \\
          0  & \ldots   &0 &  0     & c_1 1  \\
\end{array}\right)\enspace        
\label{l1}
\end{equation}
containing $s+2$ column vectors with $l+s+2$ rows. 
The set of all integer linear combinations of these vectors
is called a {\em lattice}. A minimal set of vectors which generates the lattice
is called a {\em basis} of the lattice.
Important in our context are bases which contain short vectors. 
These are called {\em reduced bases} if they fulfill certain criteria of
shortness, see \cite{LLL82}.

The lattice $L$ spanned by the columns of the matrix (\ref{l1}) has the
column vectors of the matrix itself as a basis.
This basis is reduced with the algorithm proposed in \cite{SH95} to
a new basis.

\begin{definition}
Let $L\subset\ER^n$ be a lattice. For $1\leq p <\infty$ the
norm defined by the mapping
$$\|.\|_p: \ER^n\to\ER,\; x\mapsto\|x\|_p := (\sum_{i=1}^n|x_i|^p)^{1/p}$$
is called $p$-norm.
The norm defined by the mapping 
$$\|.\|_\infty: \ER^n\to\ER,\; x\mapsto\|x\|_\infty 
:=\max\{|x_i|\mid 1\leq i \leq n\}$$
is called $\infty$-norm.

\noindent
For $1\leq p\leq\infty$ 
we call a vector $\in L$ {\em $p$-shortest} if it is a shortest vector in $L$ in
$p$-norm.
\end{definition}
If we set in (\ref{l1}) $c_1=\lambda$ and $c_0>\lambda$, the 
$\infty$-shortest vectors of the lattice are solutions of the 
equation~(\ref{equ1}).
$\infty$-shortest vectors in $L$ 
consist of zeros in the first $l$ rows and have only the entries
$-1\cdot c_1$ or $1\cdot c_1$ in the rows
$l+1,\ldots,l+s$. Further, in row $l+s+1$ and $l+s+2$ they contain
$\pm \lambda$ and $\pm 1$, respectively.

Until now only reduction techniques
for the norm $p=2$ are working efficiently. 
To find a $\infty$-shortest vector we have to employ backtracking
methods. Since the $2$-norm and the $\infty$-norm are equivalent 
(for all $x\in\ER^n$: $\|x\|_\infty \leq \|x\|_2 \leq \sqrt{n}\|x\|_\infty$)
it's reasonable to use $2$-short vectors to find the
$\infty$-shortest vectors.

Let $\langle .,.\rangle$ denote the ordinary inner product in $\ER^n$,
$n\in\EN$.
For a sequence of linear independent vectors $b_1,\ldots,b_m\in\ER^n$ we let
$b_1^*,\ldots,b_m^*$ be the {\em Gram-Schmidt orthogonalized} sequence.
We thus have
\begin{equation}
b_i^* := b_i - \sum_{j=1}^{i-1}\mu_{i,j}b_j^* \quad
\mbox{ for } i=1,\ldots,m, \mbox{ where } 
\mu_{i,j} = {\langle b_i,b_j^*\rangle \over \langle b_j^*,b_j^*\rangle}\enspace.
\label{gs}
\end{equation}
\begin{definition}
For an (ordered) basis $b_1,b_2,\ldots,b_m$ of a lattice
$L\subset\ER^n$ and 
$1\leq i\leq m$, 
$\pi_i(v)$ is the {\em orthogonal projection} of $v\in\ER^n$ into 
$\langle b_1,b_2,\ldots,b_i\rangle^\bot$.
$L_i := \pi_i(L)$ is the orthogonal projection of the lattice $L$
into $\langle b_1,b_2,\ldots,b_i\rangle^\bot$. 
\end{definition}
Since 
$$v = \sum_{j=1}^m \langle v,b_j^*\rangle b_j^*$$
we see that
\begin{equation}
\pi_i(v) = \sum_{j=i}^m \langle v,b_j^*\rangle b_j^*.\label{proj}
\end{equation}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{Explicit enumeration}
For every basis vector $b_t$ and $j\leq t$ we have:
$$\pi_j(b_t) = \sum_{i=j}^t \mu_{t,i}b_i^*. $$
With $c_s := \|b_s^*\|_2^2$ for $1\leq s \leq k$ it follows
\begin{equation}
\pi_{j} (\sum_{t=j}^m u_t b_t) = 
(\sum_{i=j}^m u_i \mu_{i,j})b_j^* + \pi_{j+1} (\sum_{t=j+1}^m u_t b_t),
\label{equ3}
\end{equation}
and
$$
\|\pi_{j} (\sum_{t=j}^m u_t b_t)\|_2^2 = 
(\sum_{i=j}^m u_i \mu_{i,j})^2c_j
 + \|\pi_{j+1} (\sum_{t=j+1}^m u_t b_t)\|_2^2.
$$
\begin{definition}
For $u_{j},u_{j+1},\ldots,u_m\in\EZ$ we write 
$w_j:=\pi_{j} (\sum_{t=j}^m u_t b_t)$.
\end{definition}
The backtracking algorithm tries all possible integer values
for $u_m$, $u_{m-1}$, $\ldots,u_1$. Starting from $t=m$ it computes $w_t$  for 
$m\geq t\geq 1$ and finally $w_1=\sum_{i=1}^m u_i b_i$.
\begin{remark}
If $u_{j+1},u_{j+2},\ldots,u_m\in\EZ$ are fixed 
and $u_j\in\EZ$ has to be choosen such that
$\|w_j\|_2^2$ is minimal, then
$u_j$ has to be set to the nearest integer to
$-\sum_{i=j+1}^m u_i \mu_{i,j}$, since
$$
\|w_j\|_2^2=
\|\pi_{j} (\sum_{t=j}^m u_t b_t)\|_2^2 = (u_j+\sum_{i=j+1}^m u_i \mu_{i,j})^2c_j
 + \|\pi_{j+1} (\sum_{t=j+1}^m u_t b_t)\|_2^2.
$$ 
\end{remark}

The solutions of our system of linear equations
(\ref{equ2}) are the $\infty$-shortest vectors in the lattice generated 
by the vectors
in (\ref{l1}), but we describe the
search for the $p$-shortest vector in $L$ for
arbitrary $1\leq p\leq \infty$.  

Let $F$ be an upper bound of the $p$-shortest vector of $L$.
Since all $p$-norms in $\ER^n$ are equivalent, there exist constants 
$r_p,R_p$ such that $ r_p\|x\|_p \leq \|x\|_2\leq R_p\|x\|_p$ for all
$x\in\ER^n$. Therefore a $p$-shortest vector $v$ has $2$-norm
$\|v\|_2 \leq R_pF$ and in order to find $p$-shortest vectors
we enumerate all vectors with $2$-norm not greater than
$R_pF$. 

Moreover, {\sc Kaib, Ritter} \cite{KR95} use H\"older's inequality to combine 
the search for $p$-shortest
vectors with enumeration in $2$-norm:
\begin{theorem}
If for fixed $u_j,u_{j+1},\ldots,u_m\in\EZ$ there exist
$$u_1,u_2,\ldots,u_{j-1}\in\EZ$$ with 
$\|\sum_{i=1}^mw_i\|_p \leq F$, then for all
$y_j,y_{j+1},\ldots,y_m\in\ER$:
\begin{equation}
  \biggl|\sum_{i=j}^my_i\|w_i\|_2^2\biggr| \leq  
      F\cdot\|\sum_{i=j}^my_i w_i\|_q \label{inequ1}
\end{equation}
with $1\leq q\leq\infty$ such that $1/p+1/q = 1$.
\end{theorem}

It remains to select $y_j,\ldots,y_m$ appropiately to enable 
an early recognition of enumeration branches which cannot yield solutions.
{\sc Kaib, Ritter} \cite{KR95} proposed two selections:
\begin{enumerate}
\item
$(y_j,y_{j+1},\ldots,y_m) =(1,0,\ldots,0)$:
Test if $\|w_j\|_2^2 \leq F \|w_j\|_q$.
\item
$(y_j,y_{j+1},\ldots,y_m) =(\eta,1-\eta,0,\ldots,0)$
with $\eta\in \;]0,1[\;$. 

Let's say $w_j= xb_j^* +w_{j+1}$ for an $x\in\ER$.
Then for every successive $w_j'$ in the
same direction, that means every $w_j' = (x+r)b_j^*+w_{j+1}$ with 
$r\in\EZ$ and having the same sign as $x$, 
we have for $\eta := {x\over x+r}$:
\begin{equation}
w_j = \eta w_j' +(1-\eta)w_{j+1} \quad \mbox{ and } \quad 0<\eta<1.
\label{inequ2}
\end{equation}

If $w_j'$ can lead to a solution, then from (\ref{inequ1})
it follows for every $\eta \in\; ]0,1[$:
\begin{equation}
\eta \|w_j'\|_2^2 + (1-\eta)\|w_{j+1}\|_2^2
 \leq F\|\eta w_j'+(1-\eta)w_{j+1}\|_q.
\end{equation}
With (\ref{inequ2}) the inequality reduces to
$$\|w_j\|_2^2 \leq F\|w_j\|_q.$$
Here $0\leq \eta\leq 1$ is needed.

Therefore we can cut the enumeration in the direction of $x$
if $\|w_j\|_2^2 > F\|w_j\|_q.$
\end{enumerate}
This results in the following algorithm:
\begin{algorithm}\label{alg1}
\begin{enumerate}
\item
Compute a LLL-reduced integer basis of the kernel of the
linear system (\ref{equ1}):
Choose $c_0$ large enough such that the number of remaining 
columns will be equal to $s-l+2$ and
LLL-reduce the matrix (\ref{l1}). 
\item 
Remove the columns with nonzero entries in the first $l$ rows.
From the remaining columns remove the first $l$ rows (the zero entries).
\item
Compute for the remaining columns $b_1,\ldots,b_m$
the Gram-Schmidt vectors $b_1^*,b_2^*,\ldots,b_m^*$ with their
Gram-Schmidt coefficients $\mu_{i,j}$, see (\ref{gs}).
\item Set $j:=1$; \\
$F:=$ upper limit to the $p$-shortest vector in $L$.\\
Set $\bar{F} := R_p^2 F^2 $.
\item
Do the search loop:
\end{enumerate}
\end{algorithm}
\begin{quote}
\begin{tabbing}
{\bf while} \= $j\leq m$   \\
\>	Compute \=$w_j$ from $w_{j+1}$.     \\
\>	{\bf if} $\|w_j\|_2^2 > \bar{F}$ {\bf then} \\
\>\>		$j := j+1$         \\
\>\>		NEXT($u_j$)        \\
\>        {\bf else}\=                       \\
\>\>          {\bf if} $j>1$\={} {\bf then}            \\
 \>\>\>          {\bf if} PRUNE$(u_j)$\={} {\bf then}	   \\
 \>\>\>\>            {\bf if} one\=direction {\bf then}   \\
\>\>\>\>\>    		$j := j+1$         \\
\>\>\>\>\>		NEXT($u_j$)        \\
\>\>\>\>	      {\bf else}                 \\
\>\>\>\>\>	        onedirection $:=$ true \\
\>\>\>\>\>	        NEXT($u_j$)        \\
\>\>\>\>	    {\bf end if}    \\
\>\>\>  	 {\bf else}    \\
\>\>\>\>		$j := j-1$\\
\>\>\>\>		$y := \sum_{i=j+1}^m u_i \mu_{i,j}$\\
\>\>\>\>		$u_j := \mbox{round}(-y)$\\
\>\>\>\>		onedirection $:=$ false\\
\>\>\>  	 {\bf end if}    \\
\>\>        {\bf else} {\tt /* }$(j=1)$ {\tt */}            \\
\>\>\>             PRINT $u_1,\ldots,u_m$ \\
\>\>\>             NEXT($u_j$)             \\
\>\>          {\bf end if}				\\
\>        {\bf end if}  	         		\\
{\bf end while}				\\
\end{tabbing}
\end{quote}
The procedure NEXT determines the next value of the variable $u_j$. Initially 
$u_j$ is set to the nearest value of $-y_j := -\sum_{i=j+1}^m u_i \mu_{i,j}$,
say $u_j^1$.
The next value ($u_j^2)$ of $u_j$ is the second nearest integer to 
$-y_j$ then follows $u_j^3$ and so forth. Therefore the values of 
$u_j$ alternate around $-y_j$. If
PRUNE is true for one value of $u_j$ we do one more jump around $-y_j$,
then the enumeration is only proceeded in this remaining direction 
until it is pruned again.
\begin{center}
\epsfxsize9cm\leavevmode\epsffile{7design_b1.eps}
\end{center}
For arbitrary $p$ with and $q$ such that $1/p+1/q=1$ 
the procedure PRUNE looks like this:
\begin{algorithm}
Choose $y_j,\ldots,y_m$
\begin{tabbing}
PRUNE($u_j$)\= \\
\>     {\bf if} \=
  $\left|\sum_{i=j}^my_i\|w_i\|_2^2\right| \leq  F\cdot\|\sum_{i=j}^my_i
  w_i\|_q$\\
\>\>        Return false\\
\>     {\bf else}\\
\>\>        Return true\\
\>     {\bf end if}\\
\end{tabbing}
\end{algorithm}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{Results}
We used the algorithm to find all 
7-(33,8,10) designs with automorphism group $\mbox{P$\Gamma$L}_2(32)$.
The Kramer Mesner matrix was already published in \cite{ML84}. 
The algorithm described in \cite{BKKLW95} produced the following 
$32\times 97$ matrix which is a permutation of the rows and columns of the
matrix in \cite{ML84}:

\noindent
{\tiny
\begin{eqnarray*}
2222222222222000000000000000000000000000000000000000000000000000000000000000000000000000000000000\\
2101110000000211112111111111111000000000000000000000000000000000000000000000000000000000000000000\\
1110000001000100200000000001000111112112111111100000000000000000000000000000000000000000000000000\\
0011000000000021001000000000000100011000000100012131111111110000000000000000000000000000000000000\\
0001200000000000000001000001001110000000010010010011000100001121111111100000000000000000000000000\\
0000110000000001000000100020000001001000001100111000000101001000000110021111110000000000000000000\\
0000013000110100100000101001001000100020001000100101010010000001000100010010001000000000000000000\\
0000004200000000020000200220000000020000002000000000000200000200000000000002000200000000000000000\\
0000000220000000002000002000002000002000020000000020000000000200002000022020000000000000000000000\\
0001000121000001100100000101000000001000100010100100001000000010011100000101001011100000000000000\\
0000002001200010011011010000110000001101000110010000010000000000100000000100001010011000000000000\\
0000000200020200000002200020000200000022000000020000200000000000000000000020000000020000000000000\\
0000000001012000000000101000022000000000000000111000000110010110000100100100010200101000000000000\\
0200000000002210020000101000001111000000000100000000000000001000110010100000001000010111000000000\\
0010100000001001001200100000010001000002000000001001011011000100000000000001010000000102110000000\\
0000110011000010100001020100000000000000101000000101000000010100100000000010000000010211001110000\\
0011020000000010010000000100100000010001000000000001010000100000100011000010001010212000001001000\\
0000000220000000000240002000000000000000000000000000000000000000200220000000220200000000002000000\\
0000010010011000010110010011001110000100000001000001010001000000001000000101100010000000100011000\\
0200000200000200000200000200020002000000002020000000000000200000000000000200020000000000000020000\\
0001000001010011000000000001000011000100010000100001000001000011000000100000000020010031010100100\\
0010100000011000102001001000000001000110000101100100110000000000200000100000000000100000100000300\\
0200000000000001000001000000000010220100000110000000000010010010011000000100011010021000010000100\\
0011000000000000100001000000010100011010000001000100000010100000020100000101000000101002000100120\\
0000000200000000000020020000000000000020000000200000000200000000020020220000000000002000200002000\\
0010000000000000000110000101000000000000100000010010100002001000001101110011000000001110000002110\\
0000000000010000010000011010000000000010001020000000200110000200000010010000111000100110001001010\\
0000000000000000000010010100010110000100000100001010101100000010001010002010011000000000003001100\\
0000000010000001000000000010100011010001001000011100100010000001001000110001000000000111001011001\\
0000000005000000000000000000000000000500000000000500050000000000000000000000000000000000050000001\\
0000000000000000000000000000000000000000000000005000000005000000050005000000000050000000000000001\\
0000000000000000000000000000000000000000000000000050000000000050000000000000000000500500000500001\\
\end{eqnarray*}}

The method of \cite{BKKLW95} in it's first version found only 1 solution
for $\lambda=10$. 
It was {\sc Brendan McKay} \cite{McKay} who observed with his general
integer backtracking algorithm that there are more than one solutions.
In fact he estimated the number of solutions to be between
5 and 7 million. 
He also estimated that the backtracking algorithm as described in \cite{McKay}
would have taken 100 years to enumerate all these solutions
with the computers we had at hand at that time.

For each of the two matrices the above Algorithm \ref{alg1} 
found that there are 4 996 426 solutions 
for $\lambda=10$ and that there are no solutions for other values of $\lambda$
beside the complementary designs with $\lambda=16$. 
All these solutions give nonisomorphic designs:
By \cite{LPS90} $\mbox{P$\Gamma$L}(2,2^5)$ is a maximal subgroup of $S_{33}$.
Therefore the full automorphism group could be either 
$\mbox{P$\Gamma$L}(2,2^5)$ or $S_{33}$. The latter case is impossible, since it
would require all $8$-subsets to be included into the design because of the
transitivity of $S_{33}$ on $X$.

The computing time was about one week on a DEC ALPHA 3000.
The newest results of the Bayreuth group on $t$-designs can be found at

\noindent
{\footnotesize\tt 
http://www.mathe2.uni-bayreuth.de/betten/DESIGN/d1.html}

\noindent
and 

\noindent
{\footnotesize\tt 
http://www.mathe2.uni-bayreuth.de/people/laue.html.}
\begin{thebibliography}{99}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\bibitem{BKKLW95} {\sc A.~Betten, A.~Kerber, A.~Kohnert, R.~Laue,
A.~Wassermann}: The Discovery of Simple 7-Designs with Automorphism Group
$P\Gamma L (2,32)$. {\em AAECC 11} in 
{\em Lecture Notes in Computer Science} {\bf 547} (1995), 281--293.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\bibitem{CLOS91} {\sc M.~J.~Coster, B.~A.~LaMacchia, A.~M.~Odlyzko, 
C.~P.~Schnorr}: An improved low-density subset sum algorithm.
{\em Proceedings EUROCRYPT '91, Brighton, May 1991} in
{\em Springer Lecture Notes in Computer Science} {\bf 547} (1991),
54--67.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\bibitem{HHH95} {\sc H.~H.~H\"orner}: Verbesserte Gitterbasenreduktion;
getestet am Chor-Rivest Kryptosystem und an allgemeinen Rucksack-Problemen.
Diplomarbeit, Universit\"at Frankfurt (August 1994).
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\bibitem{JS91} {\sc A.~Joux, J.~Stern}: Improving the Critical Density
of the Lagarias-Odlyzko Attack Against Subset Sum Problems.
{\em Proceedings of Fundamentals of Computation Theory 91} in 
{\em Lecture Notes in Computer Science} {\bf 529} (1991), 258--264.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\bibitem{KR95} {\sc M.~Kaib, H.~Ritter}: Block Reduction for Arbitrary Norms.
Preprint 1995.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\bibitem{K83} {\sc R.~Kannan}: Improved algorithms for integer programming
and related lattice problems. {\em 15th Ann. ACM Symb. on Theory of Computing}
(1983), 193--206.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\bibitem{krames}
{\sc E.~S.~Kramer, D.~M.~Mesner}:
$t$-designs on hypergraphs.
{\em Discrete Math.} {\bf 15} (1976), 263--296.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\bibitem{KR86} {\sc D.~L.~Kreher, S.~P.~Radziszowski}:
Finding Simple t-Designs by Using Basis Reduction.
{\em Congressus Numerantium} {\bf 55} (1986), 235--244.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\bibitem{LO85} {\sc J.~C.~Lagarias, A.~M.~Odlyzko}:
Solving low-density subset sum problems. 
{\em J. Assoc. Comp. Mach.} {\bf 32} (1985), 229--246.
\bibitem{LPS90} {\sc M.~W.~Liebeck, C.~E.~Praeger, J.~Saxl:} The maximal
factorizations of the finite simple groups and their automorphism groups,
{\em Memoirs of the Amer. Math. Soc.} {\bf 432} (1990), Chapter 9.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\bibitem{LLL82} {\sc A.~K.~Lenstra, H.~W.~Lenstra Jr., L.~Lov\'asz}:
Factoring Polynomials with Rational Coefficients,
{\em Math. Ann.} {\bf 261} (1982), 515--534.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\bibitem{ML84} {\sc S.~S.~Magliveras, D.~W.~Leavitt}:
Simple 6-(33,8,36) Designs from $P\Gamma L_2(32)$.
{\em Computational Group Theory} M.~D.~ Atkinson ed., Academic Press (1984) 
337--352.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\bibitem{Ma91} {\sc R.~Mathon}: Computational Methods in
Design Theory.
{\em London Math.~Soc.~Lect.~Notes} {\bf 166} (1991), 101--117.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\bibitem{McKay} {\sc B.~McKay}: Personal communication.\newline
Email-address: 
{\tt bdm@cs.anu.edu.au}. \newline
WWW-page: {\tt http://cs.anu.edu.au:80/people/bdm/}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\bibitem{RK88} {\sc S.~P.~Radziszowski, D.~L.~Kreher}:
Solving subset sum problems with the $\mbox {L}^3$ algorithm.
{\em J.~Combin.~Math.~Comput.} {\bf 3} (1988), 49--63.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\bibitem{Schmalz}
{\sc B.~Schmalz}:
The $t$-designs with prescribed automorphism group, new simple 6-designs.
{\em J. Combinatorial Designs} {\bf 1} (1993), 125--170.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\bibitem{S87} {\sc C.~P.~Schnorr}: A hierachy of polynomial time
lattice basis reduction algorithms.
{\em Theoretical Computer Science} {\bf 53} (1987), 201--224.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\bibitem{S88} {\sc C.~P.~Schnorr}: A More Efficient Algorithm for
Lattice Basis Reduction.
{\em J. Algorithms} {\bf 9} (1988), 47--62.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\bibitem{SE91} {\sc C.~P.~Schnorr, M.~Euchner}: Lattice basis 
reduction: Improved practical algorithms and solving subset sum
problems. 
{\em Proceedings of Fundamentals of Computation Theory 91} in 
{\em Lecture Notes in Computer Science} {\bf 529} (1991), 68--85.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\bibitem{SH95} {\sc C.~P.~Schnorr, H.~H.~H\"orner}: Attacking the 
Chor-Rivest cryptosystem by improved lattice reduction.
{\em Advances in Cryptology -- Eurocrypt '51} in
{\em Lecture Notes in Computer Science} {\bf 921} (1995), 1--12.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\bibitem{SW94} {\sc B.~Sturmfels, R.~Weismantel}: Gr\"obner bases of lattices,
corner polyhedra, and integer programming.
Preprint (1994)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\bibitem{UWZ94} {\sc R.~Urbaniak, R.~Weismantel, G.~M.~Ziegler}: A Variant
of the Buchberger Algorithm for Integer Programming. 
{\em SIAM J. Discrete Mathematics}, to appear.
\end{thebibliography}

\noindent
Address of the author:

\noindent
Alfred Wassermann\\
Department of Mathematics\\
University of Bayreuth\\
D-95440 Bayreuth\\
Germany\\
Email: {\tt Alfred.Wassermann@uni-bayreuth.de}\\
WWW: {\footnotesize\tt 
http://did.mat.uni-bayreuth.de/wassermann/wassermann.html}
\end{document}
