|
For the following operators, C and D are codes defined as a subset
(or subspace) of the vector space V.
Return true if and only if the linear code C is a cyclic code.
Return true if and only if the linear code C is self-dual.
(i.e. C equals the dual of C).
Return true if and only if the linear code C is
self-orthogonal
(i.e., C is contained in the dual of C).
Return true if and only if the linear code C equals the Hermitian dual
of C.
Return true if and only if the linear code C is contained in the
Hermitian dual of C.
IsMDS(C) : Code -> BoolElt
Returns true if and only if the linear code C is maximum-distance separable;
that is, has parameters [n, k, n - k + 1].
Returns true if and only if the linear code C is equidistant.
Returns true if and only if the linear code C is perfect; that is,
if and only if the cardinality of C is equal to the size
of the sphere packing bound of C.
Returns true if and only if the binary linear code C is nearly perfect.
Returns true if and only if C is an even linear binary code,
(i.e., all codewords have even weight). If true, then Magma will
adjust the upper and lower minimum weight bounds of C if possible.
Returns true if and only if C is a doubly even linear binary code,
(i.e., all codewords have weight divisible by 4). If true, then Magma will
adjust the upper and lower minimum weight bounds of C if possible.
Returns true if and only if the (non-quantum) code C is projective.
We look at an extended quadratic residue code over GF(2) which is self-dual,
and then confirm it manually.
> C := ExtendCode( QRCode(GF(2),23) );
> C:Minimal;
[24, 12, 8] Linear Code over GF(2)
> IsSelfDual(C);
true
> D := Dual(C);
> D: Minimal;
[24, 12, 8] Linear Code over GF(2)
> C eq D;
true
We look at the CordaroWagnerCode of length 6, which is
self-orthogonal, and then confirm it manually.
> C := CordaroWagnerCode(6);
> C;
[6, 2, 4] Linear Code over GF(2)
Generator matrix:
[1 1 0 0 1 1]
[0 0 1 1 1 1]
> IsSelfOrthogonal(C);
true
> D := Dual(C);
> D;
[6, 4, 2] Linear Code over GF(2)
Generator matrix:
[1 0 0 1 0 1]
[0 1 0 1 0 1]
[0 0 1 1 0 0]
[0 0 0 0 1 1]
> C subset D;
true
[Next][Prev] [Right] [Left] [Up] [Index] [Root]
|