theorem CReal.powerSeriesUniformConvergesOn : ((x0 : ((x0 : AxNat) -> CReal)) -> ((x1 : CReal) -> ((x2 : ((x2 : AxNat) -> CReal.le (CReal.abs (x0 x2)) x1)) -> ((x3 : CReal) -> ((x4 : CReal.le CReal.zero x3) -> ((x5 : AxNat) -> ((x6 : ((x6 : AxNat) -> ((x7 : AxNat) -> CReal.Within (Rat.sub (CReal.seq (CReal.sumRange (fun (x8 : AxNat) => CReal.mul x1 (CReal.pow x3 x8)) x6) x6) (CReal.seq (CReal.sumRange (fun (x8 : AxNat) => CReal.mul x1 (CReal.pow x3 x8)) x7) x7)) (Rat.add (Rat.natDivSucc x5 x6) (Rat.natDivSucc x5 x7))))) -> CReal.UniformConvergesOn (fun (x7 : AxNat) => fun (x8 : CReal) => CReal.sumRange (fun (x9 : AxNat) => CReal.powerSeriesTerm x0 x9 x8) x7) (fun (x7 : CReal) => CReal.mk (CReal.speedup (fun (x8 : AxNat) => CReal.seq (CReal.sumRange (fun (x9 : AxNat) => CReal.powerSeriesTerm x0 x9 (CReal.max CReal.zero (CReal.min x7 x3))) x8) x8) (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5))))))))) (CReal.regular_of_kregular (fun (x8 : AxNat) => CReal.seq (CReal.sumRange (fun (x9 : AxNat) => CReal.powerSeriesTerm x0 x9 (CReal.max CReal.zero (CReal.min x7 x3))) x8) x8) (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) (fun (x8 : AxNat) => fun (x9 : AxNat) => And.intro (Rat.le (Rat.neg (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5))))))))) x8) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5))))))))) x9))) (Rat.sub ((fun (x10 : AxNat) => CReal.seq (CReal.sumRange (fun (x11 : AxNat) => CReal.powerSeriesTerm x0 x11 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10) x8) ((fun (x10 : AxNat) => CReal.seq (CReal.sumRange (fun (x11 : AxNat) => CReal.powerSeriesTerm x0 x11 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10) x9))) (Rat.le (Rat.sub ((fun (x10 : AxNat) => CReal.seq (CReal.sumRange (fun (x11 : AxNat) => CReal.powerSeriesTerm x0 x11 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10) x8) ((fun (x10 : AxNat) => CReal.seq (CReal.sumRange (fun (x11 : AxNat) => CReal.powerSeriesTerm x0 x11 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10) x9)) (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5))))))))) x8) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5))))))))) x9))) (Rat.le_trans (Rat.neg (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5))))))))) x8) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5))))))))) x9))) (Rat.neg (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x8) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x9))) (Rat.sub ((fun (x10 : AxNat) => CReal.seq (CReal.sumRange (fun (x11 : AxNat) => CReal.powerSeriesTerm x0 x11 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10) x8) ((fun (x10 : AxNat) => CReal.seq (CReal.sumRange (fun (x11 : AxNat) => CReal.powerSeriesTerm x0 x11 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10) x9)) (Rat.neg_le_neg (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x8) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x9)) (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5))))))))) x8) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5))))))))) x9)) (Rat.add_le_add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x8) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5))))))))) x8) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x9) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5))))))))) x9) (Rat.natDivSucc_le_add_left (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) (AxNat.succ AxNat.zero) x8) (Rat.natDivSucc_le_add_left (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) (AxNat.succ AxNat.zero) x9))) (And.rec.{0} (Rat.le (Rat.neg (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x8) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x9))) (Rat.sub ((fun (x10 : AxNat) => CReal.seq (CReal.sumRange (fun (x11 : AxNat) => CReal.powerSeriesTerm x0 x11 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10) x8) ((fun (x10 : AxNat) => CReal.seq (CReal.sumRange (fun (x11 : AxNat) => CReal.powerSeriesTerm x0 x11 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10) x9))) (Rat.le (Rat.sub ((fun (x10 : AxNat) => CReal.seq (CReal.sumRange (fun (x11 : AxNat) => CReal.powerSeriesTerm x0 x11 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10) x8) ((fun (x10 : AxNat) => CReal.seq (CReal.sumRange (fun (x11 : AxNat) => CReal.powerSeriesTerm x0 x11 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10) x9)) (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x8) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x9))) (fun (x10 : And (Rat.le (Rat.neg (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x8) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x9))) (Rat.sub ((fun (x10 : AxNat) => CReal.seq (CReal.sumRange (fun (x11 : AxNat) => CReal.powerSeriesTerm x0 x11 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10) x8) ((fun (x10 : AxNat) => CReal.seq (CReal.sumRange (fun (x11 : AxNat) => CReal.powerSeriesTerm x0 x11 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10) x9))) (Rat.le (Rat.sub ((fun (x10 : AxNat) => CReal.seq (CReal.sumRange (fun (x11 : AxNat) => CReal.powerSeriesTerm x0 x11 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10) x8) ((fun (x10 : AxNat) => CReal.seq (CReal.sumRange (fun (x11 : AxNat) => CReal.powerSeriesTerm x0 x11 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10) x9)) (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x8) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x9)))) => Rat.le (Rat.neg (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x8) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x9))) (Rat.sub ((fun (x11 : AxNat) => CReal.seq (CReal.sumRange (fun (x12 : AxNat) => CReal.powerSeriesTerm x0 x12 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) x8) ((fun (x11 : AxNat) => CReal.seq (CReal.sumRange (fun (x12 : AxNat) => CReal.powerSeriesTerm x0 x12 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) x9))) (fun (x10 : Rat.le (Rat.neg (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x8) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x9))) (Rat.sub ((fun (x10 : AxNat) => CReal.seq (CReal.sumRange (fun (x11 : AxNat) => CReal.powerSeriesTerm x0 x11 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10) x8) ((fun (x10 : AxNat) => CReal.seq (CReal.sumRange (fun (x11 : AxNat) => CReal.powerSeriesTerm x0 x11 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10) x9))) => fun (x11 : Rat.le (Rat.sub ((fun (x11 : AxNat) => CReal.seq (CReal.sumRange (fun (x12 : AxNat) => CReal.powerSeriesTerm x0 x12 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) x8) ((fun (x11 : AxNat) => CReal.seq (CReal.sumRange (fun (x12 : AxNat) => CReal.powerSeriesTerm x0 x12 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) x9)) (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x8) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x9))) => x10) ((fun (x10 : AxNat) => fun (x11 : AxNat) => Or.rec (AxNat.le x10 x11) (AxNat.le x11 x10) (fun (x12 : Or (AxNat.le x10 x11) (AxNat.le x11 x10)) => CReal.Within (Rat.sub (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10) (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11)) (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11))) (fun (x12 : AxNat.le x10 x11) => Eq.rec.{0, 1} Rat (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10)) (fun (x13 : Rat) => fun (x14 : Eq.{1} Rat (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10)) x13) => CReal.Within (Rat.sub (CReal.seq (CReal.sumRange (fun (x15 : AxNat) => CReal.powerSeriesTerm x0 x15 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10) (CReal.seq (CReal.sumRange (fun (x15 : AxNat) => CReal.powerSeriesTerm x0 x15 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11)) x13) (Eq.rec.{0, 1} Rat (Rat.neg (Rat.sub (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10))) (fun (x13 : Rat) => fun (x14 : Eq.{1} Rat (Rat.neg (Rat.sub (CReal.seq (CReal.sumRange (fun (x14 : AxNat) => CReal.powerSeriesTerm x0 x14 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) (CReal.seq (CReal.sumRange (fun (x14 : AxNat) => CReal.powerSeriesTerm x0 x14 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10))) x13) => CReal.Within x13 (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10))) (Rat.bounds_neg (Rat.sub (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10)) (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10)) (And.rec.{0} (Rat.le (Rat.neg (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10))) (Rat.sub (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10))) (Rat.le (Rat.sub (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10)) (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10))) (fun (x13 : And (Rat.le (Rat.neg (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10))) (Rat.sub (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10))) (Rat.le (Rat.sub (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10)) (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10)))) => Rat.le (Rat.neg (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10))) (Rat.sub (CReal.seq (CReal.sumRange (fun (x14 : AxNat) => CReal.powerSeriesTerm x0 x14 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) (CReal.seq (CReal.sumRange (fun (x14 : AxNat) => CReal.powerSeriesTerm x0 x14 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10))) (fun (x13 : Rat.le (Rat.neg (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10))) (Rat.sub (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10))) => fun (x14 : Rat.le (Rat.sub (CReal.seq (CReal.sumRange (fun (x14 : AxNat) => CReal.powerSeriesTerm x0 x14 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) (CReal.seq (CReal.sumRange (fun (x14 : AxNat) => CReal.powerSeriesTerm x0 x14 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10)) (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10))) => x13) (CReal.sumRange_cauchy_dominated_ordered_normalized (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) (fun (x13 : AxNat) => CReal.mul x1 (CReal.pow x3 x13)) x5 x10 x11 (fun (x13 : AxNat) => (fun (x14 : AxNat) => fun (x15 : CReal) => fun (x16 : CReal.le CReal.zero x15) => fun (x17 : CReal.le x15 x3) => CReal.powerSeriesTerm_abs_le x0 x1 x2 x15 x3 x16 x17 x14) x13 (CReal.max CReal.zero (CReal.min x7 x3)) (CReal.le_max_left CReal.zero (CReal.min x7 x3)) (CReal.max_le CReal.zero (CReal.min x7 x3) x3 x4 (CReal.min_le_right x7 x3))) x6 x12)) (And.rec.{0} (Rat.le (Rat.neg (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10))) (Rat.sub (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10))) (Rat.le (Rat.sub (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10)) (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10))) (fun (x13 : And (Rat.le (Rat.neg (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10))) (Rat.sub (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10))) (Rat.le (Rat.sub (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10)) (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10)))) => Rat.le (Rat.sub (CReal.seq (CReal.sumRange (fun (x14 : AxNat) => CReal.powerSeriesTerm x0 x14 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) (CReal.seq (CReal.sumRange (fun (x14 : AxNat) => CReal.powerSeriesTerm x0 x14 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10)) (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10))) (fun (x13 : Rat.le (Rat.neg (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10))) (Rat.sub (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10))) => fun (x14 : Rat.le (Rat.sub (CReal.seq (CReal.sumRange (fun (x14 : AxNat) => CReal.powerSeriesTerm x0 x14 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) (CReal.seq (CReal.sumRange (fun (x14 : AxNat) => CReal.powerSeriesTerm x0 x14 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10)) (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10))) => x14) (CReal.sumRange_cauchy_dominated_ordered_normalized (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) (fun (x13 : AxNat) => CReal.mul x1 (CReal.pow x3 x13)) x5 x10 x11 (fun (x13 : AxNat) => (fun (x14 : AxNat) => fun (x15 : CReal) => fun (x16 : CReal.le CReal.zero x15) => fun (x17 : CReal.le x15 x3) => CReal.powerSeriesTerm_abs_le x0 x1 x2 x15 x3 x16 x17 x14) x13 (CReal.max CReal.zero (CReal.min x7 x3)) (CReal.le_max_left CReal.zero (CReal.min x7 x3)) (CReal.max_le CReal.zero (CReal.min x7 x3) x3 x4 (CReal.min_le_right x7 x3))) x6 x12))) (Rat.sub (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10) (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11)) (Rat.neg_sub (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10))) (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11)) (Rat.add_comm (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10))) (fun (x12 : AxNat.le x11 x10) => CReal.sumRange_cauchy_dominated_ordered_normalized (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) (fun (x13 : AxNat) => CReal.mul x1 (CReal.pow x3 x13)) x5 x11 x10 (fun (x13 : AxNat) => (fun (x14 : AxNat) => fun (x15 : CReal) => fun (x16 : CReal.le CReal.zero x15) => fun (x17 : CReal.le x15 x3) => CReal.powerSeriesTerm_abs_le x0 x1 x2 x15 x3 x16 x17 x14) x13 (CReal.max CReal.zero (CReal.min x7 x3)) (CReal.le_max_left CReal.zero (CReal.min x7 x3)) (CReal.max_le CReal.zero (CReal.min x7 x3) x3 x4 (CReal.min_le_right x7 x3))) x6 x12) (AxNat.le_total x10 x11)) x8 x9))) (Rat.le_trans (Rat.sub ((fun (x10 : AxNat) => CReal.seq (CReal.sumRange (fun (x11 : AxNat) => CReal.powerSeriesTerm x0 x11 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10) x8) ((fun (x10 : AxNat) => CReal.seq (CReal.sumRange (fun (x11 : AxNat) => CReal.powerSeriesTerm x0 x11 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10) x9)) (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x8) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x9)) (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5))))))))) x8) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5))))))))) x9)) (And.rec.{0} (Rat.le (Rat.neg (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x8) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x9))) (Rat.sub ((fun (x10 : AxNat) => CReal.seq (CReal.sumRange (fun (x11 : AxNat) => CReal.powerSeriesTerm x0 x11 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10) x8) ((fun (x10 : AxNat) => CReal.seq (CReal.sumRange (fun (x11 : AxNat) => CReal.powerSeriesTerm x0 x11 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10) x9))) (Rat.le (Rat.sub ((fun (x10 : AxNat) => CReal.seq (CReal.sumRange (fun (x11 : AxNat) => CReal.powerSeriesTerm x0 x11 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10) x8) ((fun (x10 : AxNat) => CReal.seq (CReal.sumRange (fun (x11 : AxNat) => CReal.powerSeriesTerm x0 x11 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10) x9)) (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x8) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x9))) (fun (x10 : And (Rat.le (Rat.neg (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x8) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x9))) (Rat.sub ((fun (x10 : AxNat) => CReal.seq (CReal.sumRange (fun (x11 : AxNat) => CReal.powerSeriesTerm x0 x11 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10) x8) ((fun (x10 : AxNat) => CReal.seq (CReal.sumRange (fun (x11 : AxNat) => CReal.powerSeriesTerm x0 x11 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10) x9))) (Rat.le (Rat.sub ((fun (x10 : AxNat) => CReal.seq (CReal.sumRange (fun (x11 : AxNat) => CReal.powerSeriesTerm x0 x11 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10) x8) ((fun (x10 : AxNat) => CReal.seq (CReal.sumRange (fun (x11 : AxNat) => CReal.powerSeriesTerm x0 x11 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10) x9)) (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x8) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x9)))) => Rat.le (Rat.sub ((fun (x11 : AxNat) => CReal.seq (CReal.sumRange (fun (x12 : AxNat) => CReal.powerSeriesTerm x0 x12 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) x8) ((fun (x11 : AxNat) => CReal.seq (CReal.sumRange (fun (x12 : AxNat) => CReal.powerSeriesTerm x0 x12 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) x9)) (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x8) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x9))) (fun (x10 : Rat.le (Rat.neg (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x8) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x9))) (Rat.sub ((fun (x10 : AxNat) => CReal.seq (CReal.sumRange (fun (x11 : AxNat) => CReal.powerSeriesTerm x0 x11 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10) x8) ((fun (x10 : AxNat) => CReal.seq (CReal.sumRange (fun (x11 : AxNat) => CReal.powerSeriesTerm x0 x11 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10) x9))) => fun (x11 : Rat.le (Rat.sub ((fun (x11 : AxNat) => CReal.seq (CReal.sumRange (fun (x12 : AxNat) => CReal.powerSeriesTerm x0 x12 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) x8) ((fun (x11 : AxNat) => CReal.seq (CReal.sumRange (fun (x12 : AxNat) => CReal.powerSeriesTerm x0 x12 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) x9)) (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x8) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x9))) => x11) ((fun (x10 : AxNat) => fun (x11 : AxNat) => Or.rec (AxNat.le x10 x11) (AxNat.le x11 x10) (fun (x12 : Or (AxNat.le x10 x11) (AxNat.le x11 x10)) => CReal.Within (Rat.sub (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10) (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11)) (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11))) (fun (x12 : AxNat.le x10 x11) => Eq.rec.{0, 1} Rat (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10)) (fun (x13 : Rat) => fun (x14 : Eq.{1} Rat (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10)) x13) => CReal.Within (Rat.sub (CReal.seq (CReal.sumRange (fun (x15 : AxNat) => CReal.powerSeriesTerm x0 x15 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10) (CReal.seq (CReal.sumRange (fun (x15 : AxNat) => CReal.powerSeriesTerm x0 x15 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11)) x13) (Eq.rec.{0, 1} Rat (Rat.neg (Rat.sub (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10))) (fun (x13 : Rat) => fun (x14 : Eq.{1} Rat (Rat.neg (Rat.sub (CReal.seq (CReal.sumRange (fun (x14 : AxNat) => CReal.powerSeriesTerm x0 x14 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) (CReal.seq (CReal.sumRange (fun (x14 : AxNat) => CReal.powerSeriesTerm x0 x14 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10))) x13) => CReal.Within x13 (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10))) (Rat.bounds_neg (Rat.sub (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10)) (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10)) (And.rec.{0} (Rat.le (Rat.neg (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10))) (Rat.sub (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10))) (Rat.le (Rat.sub (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10)) (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10))) (fun (x13 : And (Rat.le (Rat.neg (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10))) (Rat.sub (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10))) (Rat.le (Rat.sub (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10)) (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10)))) => Rat.le (Rat.neg (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10))) (Rat.sub (CReal.seq (CReal.sumRange (fun (x14 : AxNat) => CReal.powerSeriesTerm x0 x14 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) (CReal.seq (CReal.sumRange (fun (x14 : AxNat) => CReal.powerSeriesTerm x0 x14 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10))) (fun (x13 : Rat.le (Rat.neg (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10))) (Rat.sub (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10))) => fun (x14 : Rat.le (Rat.sub (CReal.seq (CReal.sumRange (fun (x14 : AxNat) => CReal.powerSeriesTerm x0 x14 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) (CReal.seq (CReal.sumRange (fun (x14 : AxNat) => CReal.powerSeriesTerm x0 x14 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10)) (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10))) => x13) (CReal.sumRange_cauchy_dominated_ordered_normalized (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) (fun (x13 : AxNat) => CReal.mul x1 (CReal.pow x3 x13)) x5 x10 x11 (fun (x13 : AxNat) => (fun (x14 : AxNat) => fun (x15 : CReal) => fun (x16 : CReal.le CReal.zero x15) => fun (x17 : CReal.le x15 x3) => CReal.powerSeriesTerm_abs_le x0 x1 x2 x15 x3 x16 x17 x14) x13 (CReal.max CReal.zero (CReal.min x7 x3)) (CReal.le_max_left CReal.zero (CReal.min x7 x3)) (CReal.max_le CReal.zero (CReal.min x7 x3) x3 x4 (CReal.min_le_right x7 x3))) x6 x12)) (And.rec.{0} (Rat.le (Rat.neg (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10))) (Rat.sub (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10))) (Rat.le (Rat.sub (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10)) (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10))) (fun (x13 : And (Rat.le (Rat.neg (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10))) (Rat.sub (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10))) (Rat.le (Rat.sub (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10)) (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10)))) => Rat.le (Rat.sub (CReal.seq (CReal.sumRange (fun (x14 : AxNat) => CReal.powerSeriesTerm x0 x14 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) (CReal.seq (CReal.sumRange (fun (x14 : AxNat) => CReal.powerSeriesTerm x0 x14 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10)) (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10))) (fun (x13 : Rat.le (Rat.neg (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10))) (Rat.sub (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10))) => fun (x14 : Rat.le (Rat.sub (CReal.seq (CReal.sumRange (fun (x14 : AxNat) => CReal.powerSeriesTerm x0 x14 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) (CReal.seq (CReal.sumRange (fun (x14 : AxNat) => CReal.powerSeriesTerm x0 x14 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10)) (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10))) => x14) (CReal.sumRange_cauchy_dominated_ordered_normalized (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) (fun (x13 : AxNat) => CReal.mul x1 (CReal.pow x3 x13)) x5 x10 x11 (fun (x13 : AxNat) => (fun (x14 : AxNat) => fun (x15 : CReal) => fun (x16 : CReal.le CReal.zero x15) => fun (x17 : CReal.le x15 x3) => CReal.powerSeriesTerm_abs_le x0 x1 x2 x15 x3 x16 x17 x14) x13 (CReal.max CReal.zero (CReal.min x7 x3)) (CReal.le_max_left CReal.zero (CReal.min x7 x3)) (CReal.max_le CReal.zero (CReal.min x7 x3) x3 x4 (CReal.min_le_right x7 x3))) x6 x12))) (Rat.sub (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10) (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11)) (Rat.neg_sub (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x11) x11) (CReal.seq (CReal.sumRange (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) x10) x10))) (Rat.add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11)) (Rat.add_comm (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x11) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x10))) (fun (x12 : AxNat.le x11 x10) => CReal.sumRange_cauchy_dominated_ordered_normalized (fun (x13 : AxNat) => CReal.powerSeriesTerm x0 x13 (CReal.max CReal.zero (CReal.min x7 x3))) (fun (x13 : AxNat) => CReal.mul x1 (CReal.pow x3 x13)) x5 x11 x10 (fun (x13 : AxNat) => (fun (x14 : AxNat) => fun (x15 : CReal) => fun (x16 : CReal.le CReal.zero x15) => fun (x17 : CReal.le x15 x3) => CReal.powerSeriesTerm_abs_le x0 x1 x2 x15 x3 x16 x17 x14) x13 (CReal.max CReal.zero (CReal.min x7 x3)) (CReal.le_max_left CReal.zero (CReal.min x7 x3)) (CReal.max_le CReal.zero (CReal.min x7 x3) x3 x4 (CReal.min_le_right x7 x3))) x6 x12) (AxNat.le_total x10 x11)) x8 x9)) (Rat.add_le_add (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x8) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5))))))))) x8) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) x9) (Rat.natDivSucc (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5))))))))) x9) (Rat.natDivSucc_le_add_left (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) (AxNat.succ AxNat.zero) x8) (Rat.natDivSucc_le_add_left (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ (AxNat.succ x5)))))))) (AxNat.succ AxNat.zero) x9)))))) CReal.zero x3)))))))