proposition: Lemma my_ord_enum_ok (h : nat) (a : 'I_h) : a \in my_ord_enum h.
proof: Proof. elim: h a => [|h Hh] a. move: (ltn_ord a). by rewrite ltn0. rewrite /= in_cons. case/boolP : (_ == _) => //= a_not_h. suff a_ltn_h : a < h. apply/mapP. exists (Ordinal a_ltn_h) => //. by apply val_inj. by rewrite ltn_neqAle a_not_h /= -ltnS. Qed.
imports: Wf_nat Init.Wf Recdef Reals mathcomp(all_ssreflect perm zmodp matrix ssralg) mathcomp(Rstruct) ssrR Reals_ext ssr_ext ssralg_ext bigop_ext f2 fdist channel pproba linearcode subgraph_partition tanner tanner_partition summary ldpc checksum ldpc_algo