proposition: Lemma exp2k_crealP : @creal_axiom F (fun i => 2%:R ^- i).
proof: Proof. pose_big_modulus m F. exists m=> e i j e_gt0 hi hj. wlog leij : i j {hj} hi / (i <= j)%N. move=> hwlog; case/orP: (leq_total i j)=> /hwlog; first exact. by rewrite distrC; apply. rewrite ger0_norm ?subr_ge0; last first. by rewrite ?lef_pinv -?topredE /= ?gtr0E // ler_eexpn2l ?ltr1n. rewrite -(@ltr_pmul2l _ (2%:R ^+ i )) ?gtr0E //. rewrite mulrBr mulfV ?gt_eqF ?gtr0E //. rewrite (le_lt_trans (_ : _ <= 1)) // ?ger_addl ?oppr_le0 ?mulr_ge0 ?ger0E //. by rewrite -ltr_pdivr_mulr // mul1r upper_nthrootP. by close. Qed.
imports: HB(structures) mathcomp.ssreflect.ssreflect mathcomp(ssrfun ssrbool eqtype ssrnat seq choice fintype) mathcomp(bigop order ssralg ssrnum ssrint rat poly polydiv polyorder) mathcomp(perm matrix mxpoly polyXY binomial generic_quotient) mathcomp(cauchyreals separable zmodp bigenough)