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