BoundsMinimumDistance( n, k, F )
The function BoundsMinimumDistance
calculates a lower and upper bound
for the minimum distance of an optimal linear code with word length n,
dimension k over field F. The function returns a record with the two
bounds and an explenation for each bound. The function Display
can be
used to show the explanations.
The values for the lower and upper bound are obtained from a table. GUAVA has tables containing lower and upper bounds for q=2 (n leq 257), 3 and 4 (n leq 130). These tables were derived from the table of Brouwer & Verhoeff. For codes over other fields and for larger word lengths, trivial bounds are used.
The resulting record can be used in the function BestKnownLinearCode
(see BestKnownLinearCode) to construct a code with minimum distance
equal to the lower bound.
gap> bounds := BoundsMinimumDistance( 7, 3 );; Display( bounds ); an optimal linear [7,3,d] code over GF(2) has d=4 ---------------------------------------------------------------------- Lb(7,3)=4, by shortening of: Lb(8,4)=4, u
|
u+v construction of C1 and C2: C1: Lb(4,3)=2, dual of the repetition code C2: Lb(4,1)=4, repetition code ---------------------------------------------------------------------- Ub(7,3)=4, Griesmer bound # The lower bound is equal to the upper bound, so a code with # these parameters is optimal. gap> C := BestKnownLinearCode( bounds );; Display( C ); a linear [7,3,4]2..3 shortened code of a linear [8,4,4]2 U
|
U+V construction code of U: a cyclic [4,3,2]1 dual code of a cyclic [4,1,4]2 repetition code over GF(2) V: a cyclic [4,1,4]2 repetition code over GF(2)
GAP 3.4.4