proposition: Lemma Convn_idem (a : T) (n : nat) (d : {fdist 'I_n}) (g : 'I_n -> T) : (forall i : 'I_n, (d i != 0)%coqR -> g i = a) -> <|>_d g = a.
proof: Proof. move=> Hg; apply: S1_inj. rewrite S1_Convn (eq_bigr (fun i => scalept (d i) (S1 a))). by rewrite -S1_Convn Convn_cst. move=> /= i _. by have [-> //|/Hg ->//] := eqVneq (d i) 0%coqR; rewrite !scale0pt. Qed.
imports: HB(structures) mathcomp(all_ssreflect ssralg fingroup perm matrix) mathcomp(mathcomp_extra boolp classical_sets Rstruct) mathcomp(ssrnum ereal) mathcomp(lra Rstruct reals) Reals ssrR Reals_ext Ranalysis_ext ssr_ext ssralg_ext logb realType_ext fdist