Skip to content
This repository has been archived by the owner on Jan 30, 2023. It is now read-only.

Commit

Permalink
trac #15285: Doc of AffineGeometryDesign
Browse files Browse the repository at this point in the history
  • Loading branch information
nathanncohen committed Jan 10, 2014
1 parent 8468131 commit 6ff6a06
Showing 1 changed file with 21 additions and 7 deletions.
28 changes: 21 additions & 7 deletions src/sage/combinat/designs/block_design.py
Expand Up @@ -219,14 +219,18 @@ def ProjectivePlaneDesign(n, type="Desarguesian"):

def AffineGeometryDesign(n, d, F):
r"""
Returns an Affine Geometry Design.
INPUT:
- ``n`` is the Euclidean dimension, so the number of points is
- `n` (integer) -- the Euclidean dimension. The number of points is
`v=|F^n|`.
- ``v`` is the number of points `v = |F^n|` (`F = GF(q)`, some `q`)
- `d` (integer) -- the dimension of the (affine) subspaces of `P = GF(q)^n`
which make up the blocks.
- `d` is the dimension of the (affine) subspaces of `P = GF(q)^n` which make
up the blocks.
- `F` -- a Finite Field (i.e. ``FiniteField(17)``), or a prime power
(i.e. an integer)
`AG_{n,d} (F)`, as it is sometimes denoted, is a `2` - `(v, k, \lambda)`
design of points and `d`- flats (cosets of dimension `n`) in the affine
Expand All @@ -237,8 +241,8 @@ def AffineGeometryDesign(n, d, F):
v = q^n,\ k = q^d ,
\lambda =\frac{(q^{n-1}-1) \cdots (q^{n+1-d}-1)}{(q^{n-1}-1) \cdots (q-1)}.
Wraps some functions used in GAP Design's PGPointFlatBlockDesign.
Does *not* require GAP's Design.
Wraps some functions used in GAP Design's ``PGPointFlatBlockDesign``. Does
*not* require GAP's Design package.
EXAMPLES::
Expand All @@ -252,8 +256,18 @@ def AffineGeometryDesign(n, d, F):
(2, 8, 4, 3)
sage: BD.is_block_design()
(True, [3, 8, 4, 1])
With an integer instead of a Finite Field::
sage: BD = designs.AffineGeometryDesign(3, 2, 4)
sage: BD.parameters()
(2, 64, 16, 5)
"""
q = F.order()
try:
q = int(F)
except TypeError:
q = F.order()

from sage.interfaces.gap import gap, GapElement
from sage.sets.set import Set
gap.eval("V:=GaloisField(%s)^%s"%(q,n))
Expand Down

0 comments on commit 6ff6a06

Please sign in to comment.