proposition: Lemma inj_s2m n d: {in basis n d &, injective (@s2m n \o val)}.
proof: Proof. move=> t1 t2; rewrite !inE=> srt_t1 srt_t2 eq_tm. apply/val_inj/(inj_map val_inj). apply/(sorted_eq leq_trans anti_leq srt_t1 srt_t2). apply/perm_map/allP=> /= i _; move/mnmP/(_ i): eq_tm. by rewrite !mnmE => ->. Qed.
imports: HB(structures) mathcomp(ssreflect ssrfun ssrbool eqtype ssrnat seq path) mathcomp(choice fintype tuple finfun bigop finset binomial) mathcomp(order fingroup perm ssralg zmodp poly ssrint) mathcomp(matrix vector) mathcomp(bigenough) ssrcomplements freeg