Monomial and permutation equivalences of linear codes #
A monomial transformation of the coordinate space ι → R rescales each coordinate by a unit
of R and then relabels the coordinates along an equivalence of index types; a permutation
transformation only relabels. Two linear codes — unbundled submodules of coordinate spaces — are
monomially, respectively permutation, equivalent when such a transformation carries one onto the
other. These are the transformations preserving all Hamming data of a code, so weights, weight
distributions, pairwise Hamming distances and minimum distance are invariants of the resulting
equivalence classes.
The coordinate transformations and their ambient monomial and permutation groups are defined
in TauCeti.LinearAlgebra.Monomial. This file develops their Hamming invariants and their
actions on codes.
Main definitions #
TauCeti.signedEquiv u e: the monomial equivalence induced by integer signs and a coordinate relabelling, available over every commutative ring.TauCeti.IsMonomialEquivalent,TauCeti.IsPermutationEquivalent: the two resulting equivalence relations on linear codes.TauCeti.monomialAut C: the monomial automorphism group of a code, acting on its codewords.TauCeti.permutationAut C: the coordinate-permutation automorphism group of a code.
Main statements #
TauCeti.hammingNorm_monomialEquiv,TauCeti.hammingDist_monomialEquiv: a monomial equivalence preserves Hamming weight and Hamming distance.TauCeti.hammingNorm_signedEquiv: so does a signed coordinate change, for Hamming weight.TauCeti.IsMonomialEquivalent.finrank_eq,TauCeti.IsMonomialEquivalent.card_eq: monomially equivalent codes have the same dimension and the same number of codewords.TauCeti.IsPermutationEquivalent.finrank_eq,TauCeti.IsPermutationEquivalent.card_eq: the corresponding invariants for permutation-equivalent codes.TauCeti.IsMonomialEquivalent.hammingMinDist_eq,TauCeti.IsPermutationEquivalent.hammingMinDist_eq: equivalent codes have the same minimum distance, including under the zero-code convention.TauCeti.monomialGroup_eq_permutationGroup,TauCeti.isMonomialEquivalent_iff_isPermutationEquivalent,TauCeti.monomialAut_eq_permutationAut: over a ring whose only unit is one — the binary field in particular — monomial transformations are exactly coordinate permutations, so the two notions of equivalence and the two automorphism groups agree.
Invariance of the weight distribution and weight enumerator is in
TauCeti.InformationTheory.Coding.Weight.Enumerator.
References #
W. C. Huffman and V. Pless, Fundamentals of Error-Correcting Codes, Cambridge University Press (2003), §1.6.
Monomial transformations of a coordinate space #
A monomial equivalence of finite coordinate spaces preserves Hamming weight.
A monomial equivalence of finite coordinate spaces preserves Hamming distance.
Signed coordinate transformations #
A monomial coordinate change agrees with a signed coordinate change when its coordinate units are images of integer units.
Permutation equivalence of linear codes #
Unfolds permutation equivalence to the existence of a relabelling carrying one code onto the other.
A coordinate relabelling that maps one code onto another restricts to a linear equivalence between their codewords.
Instances For
permutationCodeEquiv acts on codewords by the ambient relabelling
LinearEquiv.funCongrLeft R R e.symm, in its simp normal form LinearMap.funLeft R R e.symm.
The inverse of permutationCodeEquiv acts on codewords by the inverse relabelling.
Permutation-equivalent codes have the same dimension.
Permutation-equivalent codes have the same minimum distance.
Monomial equivalence of linear codes #
Two linear codes are monomially equivalent when some monomial transformation of the coordinate spaces carries one onto the other.
Instances For
Unfolds monomial equivalence to the existence of a monomial transformation carrying one code onto the other.
A monomial transformation that maps one code onto another restricts to a linear equivalence between their codewords.
Instances For
monomialCodeEquiv acts on codewords by the ambient monomial transformation.
The inverse of monomialCodeEquiv acts on codewords by the inverse monomial
transformation.
A monomial equivalence matches every word of the target code with a word of the source code of the same Hamming weight.
Monomial equivalence preserves divisibility of all codeword weights.
Monomially equivalent codes have the same dimension.
Monomially equivalent codes have the same number of codewords.
Monomially equivalent codes have the same minimum distance.
The monomial group and the automorphism group of a code #
A monomial-group element preserves Hamming weight.
A monomial-group element preserves Hamming distance.
The monomial automorphism group of a linear code: the monomial transformations of its coordinate space that map the code onto itself.
Instances For
The monomial automorphism group of C consists exactly of the monomial transformations
mapping C onto itself.
A monomial automorphism of a code permutes its codewords.
Monomial automorphisms act by R-linear maps, so their action on codewords commutes with
the scalar action.
The converse orientation of TauCeti.instSMulCommClassMonomialAut: the monomial
automorphism action on codewords commutes with the scalar action of R.
A monomial automorphism of a code preserves Hamming weight.
A monomial automorphism of a code preserves Hamming distance.
The permutation group and the permutation automorphism group of a code #
A permutation-group element preserves Hamming weight.
A permutation-group element preserves Hamming distance.
A permutation automorphism of a code permutes its codewords.
Permutation automorphisms act by R-linear maps, so their action on codewords commutes with
the scalar action.
The converse orientation of TauCeti.instSMulCommClassPermutationAut: the permutation
automorphism action on codewords commutes with the scalar action of R.
A permutation automorphism of a code preserves Hamming weight.
A permutation automorphism of a code preserves Hamming distance.
Permutation transformations as monomial transformations #
A permutation automorphism of a code is a monomial automorphism of it.
Monomial transformations when one is the only unit #
When one is the only unit, monomial equivalence is permutation equivalence.
When one is the only unit, the monomial and permutation automorphism groups of a code coincide.