theorem CReal.converges_of_scaled_cauchy : ((x0 : ((x0 : AxNat) -> CReal)) -> ((x1 : AxNat) -> ((x2 : ((x2 : AxNat) -> ((x3 : AxNat) -> CReal.Within (Rat.sub (CReal.seq (x0 x2) x2) (CReal.seq (x0 x3) x3)) (Rat.add (Rat.natDivSucc x1 x2) (Rat.natDivSucc x1 x3))))) -> CReal.Converges x0 (CReal.mk (CReal.speedup (fun (x3 : AxNat) => CReal.seq (x0 x3) x3) x1) (CReal.regular_of_kregular (fun (x3 : AxNat) => CReal.seq (x0 x3) x3) x1 (fun (x3 : AxNat) => fun (x4 : AxNat) => And.intro (Rat.le (Rat.neg (Rat.add (Rat.natDivSucc (AxNat.succ x1) x3) (Rat.natDivSucc (AxNat.succ x1) x4))) (Rat.sub ((fun (x5 : AxNat) => CReal.seq (x0 x5) x5) x3) ((fun (x5 : AxNat) => CReal.seq (x0 x5) x5) x4))) (Rat.le (Rat.sub ((fun (x5 : AxNat) => CReal.seq (x0 x5) x5) x3) ((fun (x5 : AxNat) => CReal.seq (x0 x5) x5) x4)) (Rat.add (Rat.natDivSucc (AxNat.succ x1) x3) (Rat.natDivSucc (AxNat.succ x1) x4))) (Rat.le_trans (Rat.neg (Rat.add (Rat.natDivSucc (AxNat.succ x1) x3) (Rat.natDivSucc (AxNat.succ x1) x4))) (Rat.neg (Rat.add (Rat.natDivSucc x1 x3) (Rat.natDivSucc x1 x4))) (Rat.sub ((fun (x5 : AxNat) => CReal.seq (x0 x5) x5) x3) ((fun (x5 : AxNat) => CReal.seq (x0 x5) x5) x4)) (Rat.neg_le_neg (Rat.add (Rat.natDivSucc x1 x3) (Rat.natDivSucc x1 x4)) (Rat.add (Rat.natDivSucc (AxNat.succ x1) x3) (Rat.natDivSucc (AxNat.succ x1) x4)) (Rat.add_le_add (Rat.natDivSucc x1 x3) (Rat.natDivSucc (AxNat.succ x1) x3) (Rat.natDivSucc x1 x4) (Rat.natDivSucc (AxNat.succ x1) x4) (Rat.natDivSucc_le_add_left x1 (AxNat.succ AxNat.zero) x3) (Rat.natDivSucc_le_add_left x1 (AxNat.succ AxNat.zero) x4))) (And.rec.{0} (Rat.le (Rat.neg (Rat.add (Rat.natDivSucc x1 x3) (Rat.natDivSucc x1 x4))) (Rat.sub ((fun (x5 : AxNat) => CReal.seq (x0 x5) x5) x3) ((fun (x5 : AxNat) => CReal.seq (x0 x5) x5) x4))) (Rat.le (Rat.sub ((fun (x5 : AxNat) => CReal.seq (x0 x5) x5) x3) ((fun (x5 : AxNat) => CReal.seq (x0 x5) x5) x4)) (Rat.add (Rat.natDivSucc x1 x3) (Rat.natDivSucc x1 x4))) (fun (x5 : And (Rat.le (Rat.neg (Rat.add (Rat.natDivSucc x1 x3) (Rat.natDivSucc x1 x4))) (Rat.sub ((fun (x5 : AxNat) => CReal.seq (x0 x5) x5) x3) ((fun (x5 : AxNat) => CReal.seq (x0 x5) x5) x4))) (Rat.le (Rat.sub ((fun (x5 : AxNat) => CReal.seq (x0 x5) x5) x3) ((fun (x5 : AxNat) => CReal.seq (x0 x5) x5) x4)) (Rat.add (Rat.natDivSucc x1 x3) (Rat.natDivSucc x1 x4)))) => Rat.le (Rat.neg (Rat.add (Rat.natDivSucc x1 x3) (Rat.natDivSucc x1 x4))) (Rat.sub ((fun (x6 : AxNat) => CReal.seq (x0 x6) x6) x3) ((fun (x6 : AxNat) => CReal.seq (x0 x6) x6) x4))) (fun (x5 : Rat.le (Rat.neg (Rat.add (Rat.natDivSucc x1 x3) (Rat.natDivSucc x1 x4))) (Rat.sub ((fun (x5 : AxNat) => CReal.seq (x0 x5) x5) x3) ((fun (x5 : AxNat) => CReal.seq (x0 x5) x5) x4))) => fun (x6 : Rat.le (Rat.sub ((fun (x6 : AxNat) => CReal.seq (x0 x6) x6) x3) ((fun (x6 : AxNat) => CReal.seq (x0 x6) x6) x4)) (Rat.add (Rat.natDivSucc x1 x3) (Rat.natDivSucc x1 x4))) => x5) (x2 x3 x4))) (Rat.le_trans (Rat.sub ((fun (x5 : AxNat) => CReal.seq (x0 x5) x5) x3) ((fun (x5 : AxNat) => CReal.seq (x0 x5) x5) x4)) (Rat.add (Rat.natDivSucc x1 x3) (Rat.natDivSucc x1 x4)) (Rat.add (Rat.natDivSucc (AxNat.succ x1) x3) (Rat.natDivSucc (AxNat.succ x1) x4)) (And.rec.{0} (Rat.le (Rat.neg (Rat.add (Rat.natDivSucc x1 x3) (Rat.natDivSucc x1 x4))) (Rat.sub ((fun (x5 : AxNat) => CReal.seq (x0 x5) x5) x3) ((fun (x5 : AxNat) => CReal.seq (x0 x5) x5) x4))) (Rat.le (Rat.sub ((fun (x5 : AxNat) => CReal.seq (x0 x5) x5) x3) ((fun (x5 : AxNat) => CReal.seq (x0 x5) x5) x4)) (Rat.add (Rat.natDivSucc x1 x3) (Rat.natDivSucc x1 x4))) (fun (x5 : And (Rat.le (Rat.neg (Rat.add (Rat.natDivSucc x1 x3) (Rat.natDivSucc x1 x4))) (Rat.sub ((fun (x5 : AxNat) => CReal.seq (x0 x5) x5) x3) ((fun (x5 : AxNat) => CReal.seq (x0 x5) x5) x4))) (Rat.le (Rat.sub ((fun (x5 : AxNat) => CReal.seq (x0 x5) x5) x3) ((fun (x5 : AxNat) => CReal.seq (x0 x5) x5) x4)) (Rat.add (Rat.natDivSucc x1 x3) (Rat.natDivSucc x1 x4)))) => Rat.le (Rat.sub ((fun (x6 : AxNat) => CReal.seq (x0 x6) x6) x3) ((fun (x6 : AxNat) => CReal.seq (x0 x6) x6) x4)) (Rat.add (Rat.natDivSucc x1 x3) (Rat.natDivSucc x1 x4))) (fun (x5 : Rat.le (Rat.neg (Rat.add (Rat.natDivSucc x1 x3) (Rat.natDivSucc x1 x4))) (Rat.sub ((fun (x5 : AxNat) => CReal.seq (x0 x5) x5) x3) ((fun (x5 : AxNat) => CReal.seq (x0 x5) x5) x4))) => fun (x6 : Rat.le (Rat.sub ((fun (x6 : AxNat) => CReal.seq (x0 x6) x6) x3) ((fun (x6 : AxNat) => CReal.seq (x0 x6) x6) x4)) (Rat.add (Rat.natDivSucc x1 x3) (Rat.natDivSucc x1 x4))) => x6) (x2 x3 x4)) (Rat.add_le_add (Rat.natDivSucc x1 x3) (Rat.natDivSucc (AxNat.succ x1) x3) (Rat.natDivSucc x1 x4) (Rat.natDivSucc (AxNat.succ x1) x4) (Rat.natDivSucc_le_add_left x1 (AxNat.succ AxNat.zero) x3) (Rat.natDivSucc_le_add_left x1 (AxNat.succ AxNat.zero) x4)))))))))