proposition: Lemma comp_mpoly_id p : p \mPo [tuple 'X_i | i < n] = p.
proof: Proof. rewrite [p]mpolyE raddf_sum /=; apply/eq_bigr. move=> m _; rewrite comp_mpolyZ; congr (_ *: _). rewrite /comp_mpoly mmapX -mmap1_id; apply/mmap1_eq. by move=> /= i; rewrite tnth_map tnth_ord_tuple. 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