fact: Record t : Type := mk { lcode0_of :> Lcode0.t A n ; enc : Encoder.t lcode0_of M ; dec : Decoder.t B lcode0_of M ; compatible : cancel_on lcode0_of (Encoder.enc enc) (Decoder.discard dec) }.
imports: mathcomp(all_ssreflect ssralg poly polydiv fingroup perm) mathcomp(finalg zmodp matrix mxalgebra mxpoly vector) ssr_ext ssralg_ext poly_ext f2 hamming decoding channel_code