proposition: Lemma ncvgD u v lu lv : ncvg u lu%:E -> ncvg v lv%:E -> ncvg (u \+ v) (lu + lv)%:E.
proof: Proof. move=> cu cv; elim/nbh_finW => e /= gt0_e; pose z := e / 2%:R. case: (cu (B lu z)) (cv (B lv z)) => [ku {}cu] [kv {}cv]. exists (maxn ku kv) => n; rewrite geq_max => /andP[leu lev]. rewrite inE opprD addrACA (le_lt_trans (ler_normD _ _)) //. move: (cu _ leu) (cv _ lev); rewrite !inE eclamp_id. by rewrite mulr_gt0 // invr_gt0 ltr0Sn. move=> cu' cv'; suff ->: e = z + z by rewrite ltrD. exact: splitr. Qed.
imports: mathcomp(all_ssreflect all_algebra) mathcomp.bigenough.bigenough mathcomp.classical(boolp classical_sets functions) mathcomp.classical(mathcomp_extra) xfinmap ereal reals discrete topology