Semilinear equivalence of codes #
A semilinear monomial transformation applies one automorphism of the alphabet to every
coordinate, rescales by coordinate units, and permutes coordinates. Its induced equivalence
of codes preserves dimension, cardinality, and Hamming data. This
allows conjugate codes over a finite field to be compared without treating field
conjugation as a linear map over that field. Over an alphabet whose only ring automorphism is
the identity, such as ZMod n, semilinear equivalence is just monomial equivalence.
Use TauCeti.semilinearMonomialEquiv u e σ for the word transformation and
TauCeti.IsSemilinearEquivalent C D for the induced relation on codes.
The restriction to codewords is TauCeti.semilinearCodeEquiv u e σ h. Invariance of
weight distributions and enumerators is in
TauCeti.InformationTheory.Coding.Semilinear.WeightEnumerator.
The conventions extend TauCeti.monomialEquiv: the units are applied after the alphabet
automorphism and before relabelling. Codes remain ordinary submodules, and their images
are formed with Mathlib's semilinear Submodule.map. When using the semilinear
map projections, make RingHomInvPair.of_ringEquiv and
RingHomInvPair.of_ringEquiv_symm local instances, as in this file.
The conventions follow Huffman and Pless, Fundamentals of Error-Correcting Codes, §1.7.
At coordinate j, apply the alphabet automorphism at e.symm j, then multiply by
the unit at that source coordinate.
To recover coordinate i, read coordinate e i, undo its unit scaling, then apply
the inverse alphabet automorphism.
The identity alphabet automorphism recovers the monomial transformation.
The inverse uses the inverse alphabet automorphism and its images of the inverse units.
Composition conjugates the first scaling by the second alphabet automorphism.
Semilinear monomial transformations transport support by their coordinate equivalence.
A semilinear monomial transformation preserves Hamming weight.
A semilinear monomial transformation preserves Hamming distance.
Codes are semilinearly equivalent when a semilinear monomial transformation carries one onto the other. The alphabet automorphism is shared by all coordinates.
Instances For
Characterize semilinear equivalence by a semilinear image equality.
A semilinear monomial transformation mapping one code onto another restricts to a semilinear equivalence between their codewords.
Instances For
The induced code equivalence acts by the ambient semilinear monomial transformation.
The inverse code equivalence acts by the inverse ambient semilinear transformation.
Monomial equivalence is semilinear equivalence with the identity alphabet automorphism.
Semilinear equivalence of codes is reflexive.
Semilinear equivalence of codes is symmetric.
Semilinear equivalence of codes is transitive.
Semilinearly equivalent codes have the same cardinality.
Semilinearly equivalent codes have the same dimension.
Semilinearly equivalent codes have the same minimum Hamming distance.
When the identity is the only ring automorphism of the alphabet, as for ZMod n, semilinear
equivalence is monomial equivalence.