Construction of Additive Codes
Construction of General Additive Codes
AdditiveCode<F, K, n | L> : FldFin, RngIntElt, List -> Code
AdditiveCode(G) : ModMatRngElt -> CodeAdd
Example CodeAdd_AddLinDiff (H156E1)
Example CodeAdd_CodeAddFromMatrix (H156E2)
AdditiveCode(K, C) : FldFin, Code -> CodeAdd
Example CodeAdd_CodeAddFromCode (H156E3)
Example CodeAdd_CodeAddFromCodeFail (H156E4)
Some Trivial Additive Codes
AdditiveZeroCode(F, K, n) : FldFin, FldFin, RngIntElt -> CodeAdd
AdditiveRepetitionCode(F, K, n) : FldFin, FldFin, RngIntElt -> Code
AdditiveZeroSumCode(F, K, n) : FldFin, FldFin, RngIntElt -> Code
AdditiveUniverseCode(F, K, n) : FldFin,FldFin, RngIntElt -> Code
RandomAdditiveCode(F, K, n, k) : FldFin,FldFin, RngIntElt, RngIntElt -> Code
Example CodeAdd_SimpleCodeChain (H156E5)
Invariants of an Additive Code
The Ambient Space and Alphabet
Alphabet(C) : Code -> Rng
CoefficientField(C) : Code -> Rng
AmbientSpace(C) : Code -> ModTupRng
Generic(C) : Code -> Code
Example CodeAdd_alphabet-coeff-field (H156E6)
Basic Numerical Invariants
Length(C) : Code -> RngIntElt
Dimension(C) : Code -> FldRatElt
NumberOfGenerators(C) : Code -> RngIntElt
# C : Code -> RngIntElt
InformationRate(C) : Code -> FldPrElt
The Code Space
GeneratorMatrix(C) : Code -> ModMatFldElt
Basis(C) : Code -> [ ModTupRngElt ]
C . i : Code, RngIntElt -> ModTupFldElt
The Dual Space
Dual(C) : CodeAdd -> CodeAdd
ParityCheckMatrix(C) : Code -> ModMatFldElt
Construction of a Codeword
C ! [a1, ..., an] : Code, [ RngElt ] -> ModTupRngElt
C ! u : Code, ModTupRngElt -> ModTupRngElt
C ! 0 : Code, RngIntElt -> ModTupRngElt
Random(C): Code -> ModTupRngElt
Arithmetic Operations on Codewords
u + v : ModTupRngElt, ModTupRngElt -> ModTupRngElt
- u : ModTupRngElt -> ModTupRngElt
u - v : ModTupRngElt, ModTupRngElt -> ModTupRngElt
a * u : RngElt, ModTupRngElt -> ModTupRngElt
Normalize(u) : ModTupRngElt -> ModTupRngElt
Distance and Weight
Distance(u, v) : ModTupRngElt, ModTupRngElt -> RngIntElt
Weight(u) : ModTupRngElt -> RngIntElt
Vector Space and Related Operations
(u, v) : ModTupRngElt, ModTupRngElt -> RngElt
TraceInnerProduct(K, u, v) : FldFin, ModTupFldElt, ModTupFldElt -> FldFinElt
Support(w) : ModTupRngElt -> { RngIntElt }
Coordinates(C, u) : Code, ModTupRngElt -> [ RngFinElt ]
Parent(w): ModTupRngElt -> ModTupRng
Rotate(u, k) : ModTupRngElt, RngIntElt -> ModTupRngElt
Rotate(~u, k) : ModTupRngElt, RngIntElt ->
Trace(u, S) : ModTupFldElt, FldFin -> ModTupFldElt
Predicates for Codewords
u eq v : ModTupRngElt, ModTupRngElt -> BoolElt
u ne v : ModTupRngElt, ModTupRngElt -> BoolElt
IsZero(u) : ModTupRngElt -> BoolElt
Accessing Components of a Codeword
u[i] : ModTupRngElt, RngIntElt -> RngElt
u[i] := x;
The Subcode Constructor
sub<C | L> : CodeAdd, List -> CodeAdd
Subcode(C, k) : CodeAdd, RngIntElt -> CodeAdd
Subcode(C, S) : CodeAdd, { RngIntElt } -> Code
SubcodeBetweenCode(C1, C2, k) : CodeAdd, CodeAdd, RngIntElt -> CodeAdd
SubcodeWordsOfWeight(C, w) : CodeAdd, RngIntElt -> CodeAdd
SubcodeWordsOfWeight(C, S) : CodeAdd, { RngIntElt } -> CodeAdd
Example CodeAdd_SubcodeBetweenCode (H156E7)
Sum, Intersection and Dual
C + D : CodeAdd, CodeAdd -> CodeAdd
C meet D : Code, Code -> Code
Dual(C) : Code -> Code
Membership and Equality
u in C : ModTupRngElt, CodeAdd -> BoolElt
u notin C : ModTupRngElt, CodeAdd -> BoolElt
C subset D : Code, Code -> BoolElt
C notsubset D : Code, Code -> BoolElt
C eq D : Code, Code -> BoolElt
C ne D : Code, Code -> BoolElt
Properties of Codes
IsSelfDual(C) : Code -> BoolElt
IsSelfOrthogonal(C) : Code -> BoolElt
IsPerfect(C) : Code -> BoolElt
IsProjective(C) : Code -> BoolElt
IsAdditiveProjective(C) : CodeAdd -> BoolElt
The Minimum Weight
MinimumWeight(C: parameters) : CodeAdd -> RngIntElt
Example CodeAdd_additive-minweight (H156E8)
The Weight Distribution
WeightDistribution(C) : CodeAdd -> [ <RngIntElt, RngIntElt> ]
DualWeightDistribution(C) : CodeAdd -> [ <RngIntElt, RngIntElt> ]
The Weight Enumerator
WeightEnumerator(C): CodeAdd -> RngMPolElt
CompleteWeightEnumerator(C): CodeAdd -> RngMPolElt
CompleteWeightEnumerator(C, u): Code, ModTupFldElt -> RngMPolElt
The MacWilliams Transform
MacWilliamsTransform(n, k, q, W) : RngIntElt, RngIntElt, RngIntElt, [ <RngIntElt, RngIntElt> ] -> [ <RngIntElt, RngIntElt> ]
Words
Words(C, w: parameters) : Code, RngIntElt -> { ModTupFldElt }
NumberOfWords(C, w) : Code, RngIntElt -> RngIntElt
WordsOfBoundedWeight(C, l, u: parameters) : Code, RngIntElt, RngIntElt -> { ModTupFldElt }
Cyclic Codes
AdditiveCyclicCode(v) : ModTupFldElt -> CodeAdd
AdditiveCyclicCode(n, f) : RngIntElt, RngUPolElt -> CodeAdd
AdditiveCyclicCode(v4, v2) : ModTupFldElt, ModTupFldElt -> CodeAdd
AdditiveCyclicCode(n, f4, f2) : RngIntElt, RngUPolElt, RngUPolElt -> CodeAdd
Quasicyclic Codes
AdditiveQuasiCyclicCode(n, Q) : RngIntElt, SeqEnum[RngUPolElt] -> CodeAdd
AdditiveQuasiCyclicCode(n, Q, h) : RngIntElt, SeqEnum[RngUPolElt], RngIntElt -> CodeAdd
AdditiveQuasiCyclicCode(Q) : SeqEnum[ModTupFldElt] -> CodeAdd
AdditiveQuasiCyclicCode(Q, h) : SeqEnum[ModTupFldElt], RngIntElt -> CodeAdd
Standard Constructions
AugmentCode(C) : CodeAdd -> Code
CodeComplement(C, S) : Code, Code -> Code
DirectSum(C, D) : Code, Code -> Code
DirectSum(Q) : [Code] -> Code
DirectProduct(C, D) : Code, Code -> Code
ExtendCode(C) : CodeAdd -> CodeAdd
ExtendCode(C, n) : Code, RngIntElt -> Code
PadCode(C, n) : CodeAdd, RngIntElt -> CodeAdd
PlotkinSum(C1, C2) : Code, Code -> Code
PlotkinSum(C1, C2, C3: parameters) : Code,Code,Code -> Code
PunctureCode(C, i) : CodeAdd, RngIntElt -> Code
PunctureCode(C, S) : CodeAdd, { RngIntElt } -> Code
ShortenCode(C, i) : Code, RngIntElt -> Code
ShortenCode(C, S) : Code, { RngIntElt } -> Code
Combining Codes
C1 cat C2 : CodeAdd, CodeAdd -> CodeAdd
Juxtaposition(C1, C2) : Code, Code -> Code
Automorphism Group
AutomorphismGroup(C) : CodeAdd -> GrpPerm
PermutationGroup(C) : CodeAdd -> GrpPerm
[Next][Prev] [Right] [____] [Up] [Index] [Root]
Version: V2.19 of
Mon Dec 17 14:40:36 EST 2012