const In : set set prop term iIn = In infix iIn 2000 2000 term nIn = \x:set.\y:set.~ x iIn y const Pi : set (set set) set term setexp = \x:set.\y:set.Pi y \z:set.x const Empty : set axiom EmptyE: !x:set.nIn x Empty axiom FalseE: ~ False const ordinal : set prop const omega : set axiom omega_ordinal: ordinal omega const nat_p : set prop const ordsucc : set set axiom nat_ordsucc: !x:set.nat_p x -> nat_p (ordsucc x) axiom nat_p_omega: !x:set.nat_p x -> x iIn omega const SNo : set prop const minus_SNo : set set term - = minus_SNo axiom SNo_minus_SNo: !x:set.SNo x -> SNo - x const SNoLt : set set prop term < = SNoLt infix < 2020 2020 const SNoLe : set set prop term <= = SNoLe infix <= 2020 2020 axiom SNoLtLe_or: !x:set.!y:set.SNo x -> SNo y -> x < y | y <= x const SNoS_ : set set const SNoLev : set set const SNo_ : set set prop axiom SNoS_E2: !x:set.ordinal x -> !y:set.y iIn SNoS_ x -> !P:prop.(SNoLev y iIn x -> ordinal (SNoLev y) -> SNo y -> SNo_ (SNoLev y) y -> P) -> P axiom nat_ind: !p:set prop.p Empty -> (!x:set.nat_p x -> p x -> p (ordsucc x)) -> !x:set.nat_p x -> p x const abs_SNo : set set const add_SNo : set set set term + = add_SNo infix + 2281 2280 const eps_ : set set const nat_primrec : set (set set set) set set const Eps_i : (set prop) set const ap : set set set const Sigma : set (set set) set lemma !x:set.SNo x -> (!y:set.y iIn SNoS_ omega -> (!z:set.z iIn omega -> abs_SNo (y + - x) < eps_ z) -> y = x) -> (!y:set.y iIn omega -> ?z:set.z iIn SNoS_ omega & (z < x & x < z + eps_ y)) -> nat_primrec (Eps_i \y:set.y iIn SNoS_ omega & y < x & x < y + eps_ Empty) (\y:set.\z:set.Eps_i \w:set.w iIn SNoS_ omega & w < x & x < w + eps_ (ordsucc y) & z < w) Empty iIn SNoS_ omega & nat_primrec (Eps_i \y:set.y iIn SNoS_ omega & y < x & x < y + eps_ Empty) (\y:set.\z:set.Eps_i \w:set.w iIn SNoS_ omega & w < x & x < w + eps_ (ordsucc y) & z < w) Empty < x & x < nat_primrec (Eps_i \y:set.y iIn SNoS_ omega & y < x & x < y + eps_ Empty) (\y:set.\z:set.Eps_i \w:set.w iIn SNoS_ omega & w < x & x < w + eps_ (ordsucc y) & z < w) Empty + eps_ Empty -> (!y:set.nat_p y -> nat_primrec (Eps_i \z:set.z iIn SNoS_ omega & z < x & x < z + eps_ Empty) (\z:set.\w:set.Eps_i \u:set.u iIn SNoS_ omega & u < x & x < u + eps_ (ordsucc z) & w < u) (ordsucc y) = Eps_i \z:set.z iIn SNoS_ omega & z < x & x < z + eps_ (ordsucc y) & nat_primrec (Eps_i \w:set.w iIn SNoS_ omega & w < x & x < w + eps_ Empty) (\w:set.\u:set.Eps_i \v:set.v iIn SNoS_ omega & v < x & x < v + eps_ (ordsucc w) & u < v) y < z) -> (!y:set.nat_p y -> nat_primrec (Eps_i \z:set.z iIn SNoS_ omega & z < x & x < z + eps_ Empty) (\z:set.\w:set.Eps_i \u:set.u iIn SNoS_ omega & u < x & x < u + eps_ (ordsucc z) & w < u) y iIn SNoS_ omega & nat_primrec (Eps_i \z:set.z iIn SNoS_ omega & z < x & x < z + eps_ Empty) (\z:set.\w:set.Eps_i \u:set.u iIn SNoS_ omega & u < x & x < u + eps_ (ordsucc z) & w < u) y < x & x < nat_primrec (Eps_i \z:set.z iIn SNoS_ omega & z < x & x < z + eps_ Empty) (\z:set.\w:set.Eps_i \u:set.u iIn SNoS_ omega & u < x & x < u + eps_ (ordsucc z) & w < u) y + eps_ y & !z:set.z iIn y -> SNo (ap (Sigma omega (nat_primrec (Eps_i \w:set.w iIn SNoS_ omega & w < x & x < w + eps_ Empty) \w:set.\u:set.Eps_i \v:set.v iIn SNoS_ omega & v < x & x < v + eps_ (ordsucc w) & u < v)) z) -> ap (Sigma omega (nat_primrec (Eps_i \w:set.w iIn SNoS_ omega & w < x & x < w + eps_ Empty) \w:set.\u:set.Eps_i \v:set.v iIn SNoS_ omega & v < x & x < v + eps_ (ordsucc w) & u < v)) z < nat_primrec (Eps_i \w:set.w iIn SNoS_ omega & w < x & x < w + eps_ Empty) (\w:set.\u:set.Eps_i \v:set.v iIn SNoS_ omega & v < x & x < v + eps_ (ordsucc w) & u < v) y) -> ?y:set.y iIn setexp (SNoS_ omega) omega & !z:set.z iIn omega -> ap y z < x & x < ap y z + eps_ z & !w:set.w iIn z -> ap y w < ap y z lemma !x:set.!y:set.SNo x -> (!z:set.z iIn SNoS_ omega -> (!w:set.w iIn omega -> abs_SNo (z + - x) < eps_ w) -> z = x) -> (!z:set.z iIn omega -> ?w:set.w iIn SNoS_ omega & (w < x & x < w + eps_ z)) -> (!z:set.nat_p z -> nat_primrec (Eps_i \w:set.w iIn SNoS_ omega & w < x & x < w + eps_ Empty) (\w:set.\u:set.Eps_i \v:set.v iIn SNoS_ omega & v < x & x < v + eps_ (ordsucc w) & u < v) (ordsucc z) = Eps_i \w:set.w iIn SNoS_ omega & w < x & x < w + eps_ (ordsucc z) & nat_primrec (Eps_i \u:set.u iIn SNoS_ omega & u < x & x < u + eps_ Empty) (\u:set.\v:set.Eps_i \x2:set.x2 iIn SNoS_ omega & x2 < x & x < x2 + eps_ (ordsucc u) & v < x2) z < w) -> nat_p y -> nat_primrec (Eps_i \z:set.z iIn SNoS_ omega & z < x & x < z + eps_ Empty) (\z:set.\w:set.Eps_i \u:set.u iIn SNoS_ omega & u < x & x < u + eps_ (ordsucc z) & w < u) y iIn SNoS_ omega & nat_primrec (Eps_i \z:set.z iIn SNoS_ omega & z < x & x < z + eps_ Empty) (\z:set.\w:set.Eps_i \u:set.u iIn SNoS_ omega & u < x & x < u + eps_ (ordsucc z) & w < u) y < x & x < nat_primrec (Eps_i \z:set.z iIn SNoS_ omega & z < x & x < z + eps_ Empty) (\z:set.\w:set.Eps_i \u:set.u iIn SNoS_ omega & u < x & x < u + eps_ (ordsucc z) & w < u) y + eps_ y & (!z:set.z iIn y -> SNo (ap (Sigma omega (nat_primrec (Eps_i \w:set.w iIn SNoS_ omega & w < x & x < w + eps_ Empty) \w:set.\u:set.Eps_i \v:set.v iIn SNoS_ omega & v < x & x < v + eps_ (ordsucc w) & u < v)) z) -> ap (Sigma omega (nat_primrec (Eps_i \w:set.w iIn SNoS_ omega & w < x & x < w + eps_ Empty) \w:set.\u:set.Eps_i \v:set.v iIn SNoS_ omega & v < x & x < v + eps_ (ordsucc w) & u < v)) z < nat_primrec (Eps_i \w:set.w iIn SNoS_ omega & w < x & x < w + eps_ Empty) (\w:set.\u:set.Eps_i \v:set.v iIn SNoS_ omega & v < x & x < v + eps_ (ordsucc w) & u < v) y) -> nat_primrec (Eps_i \z:set.z iIn SNoS_ omega & z < x & x < z + eps_ Empty) (\z:set.\w:set.Eps_i \u:set.u iIn SNoS_ omega & u < x & x < u + eps_ (ordsucc z) & w < u) y iIn SNoS_ omega -> nat_primrec (Eps_i \z:set.z iIn SNoS_ omega & z < x & x < z + eps_ Empty) (\z:set.\w:set.Eps_i \u:set.u iIn SNoS_ omega & u < x & x < u + eps_ (ordsucc z) & w < u) y < x -> SNo (nat_primrec (Eps_i \z:set.z iIn SNoS_ omega & z < x & x < z + eps_ Empty) (\z:set.\w:set.Eps_i \u:set.u iIn SNoS_ omega & u < x & x < u + eps_ (ordsucc z) & w < u) y) -> (?z:set.z iIn SNoS_ omega & z < x & x < z + eps_ (ordsucc y) & nat_primrec (Eps_i \w:set.w iIn SNoS_ omega & w < x & x < w + eps_ Empty) (\w:set.\u:set.Eps_i \v:set.v iIn SNoS_ omega & v < x & x < v + eps_ (ordsucc w) & u < v) y < z) -> nat_primrec (Eps_i \z:set.z iIn SNoS_ omega & z < x & x < z + eps_ Empty) (\z:set.\w:set.Eps_i \u:set.u iIn SNoS_ omega & u < x & x < u + eps_ (ordsucc z) & w < u) (ordsucc y) iIn SNoS_ omega & nat_primrec (Eps_i \z:set.z iIn SNoS_ omega & z < x & x < z + eps_ Empty) (\z:set.\w:set.Eps_i \u:set.u iIn SNoS_ omega & u < x & x < u + eps_ (ordsucc z) & w < u) (ordsucc y) < x & x < nat_primrec (Eps_i \z:set.z iIn SNoS_ omega & z < x & x < z + eps_ Empty) (\z:set.\w:set.Eps_i \u:set.u iIn SNoS_ omega & u < x & x < u + eps_ (ordsucc z) & w < u) (ordsucc y) + eps_ (ordsucc y) & !z:set.z iIn ordsucc y -> SNo (ap (Sigma omega (nat_primrec (Eps_i \w:set.w iIn SNoS_ omega & w < x & x < w + eps_ Empty) \w:set.\u:set.Eps_i \v:set.v iIn SNoS_ omega & v < x & x < v + eps_ (ordsucc w) & u < v)) z) -> ap (Sigma omega (nat_primrec (Eps_i \w:set.w iIn SNoS_ omega & w < x & x < w + eps_ Empty) \w:set.\u:set.Eps_i \v:set.v iIn SNoS_ omega & v < x & x < v + eps_ (ordsucc w) & u < v)) z < nat_primrec (Eps_i \w:set.w iIn SNoS_ omega & w < x & x < w + eps_ Empty) (\w:set.\u:set.Eps_i \v:set.v iIn SNoS_ omega & v < x & x < v + eps_ (ordsucc w) & u < v) (ordsucc y) lemma !x:set.!y:set.!z:set.SNo x -> (!w:set.w iIn SNoS_ omega -> (!u:set.u iIn omega -> abs_SNo (w + - x) < eps_ u) -> w = x) -> nat_p y -> nat_primrec (Eps_i \w:set.w iIn SNoS_ omega & w < x & x < w + eps_ Empty) (\w:set.\u:set.Eps_i \v:set.v iIn SNoS_ omega & v < x & x < v + eps_ (ordsucc w) & u < v) y iIn SNoS_ omega -> nat_primrec (Eps_i \w:set.w iIn SNoS_ omega & w < x & x < w + eps_ Empty) (\w:set.\u:set.Eps_i \v:set.v iIn SNoS_ omega & v < x & x < v + eps_ (ordsucc w) & u < v) y < x -> SNo (nat_primrec (Eps_i \w:set.w iIn SNoS_ omega & w < x & x < w + eps_ Empty) (\w:set.\u:set.Eps_i \v:set.v iIn SNoS_ omega & v < x & x < v + eps_ (ordsucc w) & u < v) y) -> x < z + eps_ (ordsucc y) -> SNo z -> z <= nat_primrec (Eps_i \w:set.w iIn SNoS_ omega & w < x & x < w + eps_ Empty) (\w:set.\u:set.Eps_i \v:set.v iIn SNoS_ omega & v < x & x < v + eps_ (ordsucc w) & u < v) y -> SNo - nat_primrec (Eps_i \w:set.w iIn SNoS_ omega & w < x & x < w + eps_ Empty) (\w:set.\u:set.Eps_i \v:set.v iIn SNoS_ omega & v < x & x < v + eps_ (ordsucc w) & u < v) y -> ?w:set.w iIn SNoS_ omega & w < x & x < w + eps_ (ordsucc y) & nat_primrec (Eps_i \u:set.u iIn SNoS_ omega & u < x & x < u + eps_ Empty) (\u:set.\v:set.Eps_i \x2:set.x2 iIn SNoS_ omega & x2 < x & x < x2 + eps_ (ordsucc u) & v < x2) y < w var x:set hyp SNo x hyp !y:set.y iIn SNoS_ omega -> (!z:set.z iIn omega -> abs_SNo (y + - x) < eps_ z) -> y = x hyp !y:set.y iIn omega -> ?z:set.z iIn SNoS_ omega & (z < x & x < z + eps_ y) hyp nat_primrec (Eps_i \y:set.y iIn SNoS_ omega & y < x & x < y + eps_ Empty) (\y:set.\z:set.Eps_i \w:set.w iIn SNoS_ omega & w < x & x < w + eps_ (ordsucc y) & z < w) Empty iIn SNoS_ omega & nat_primrec (Eps_i \y:set.y iIn SNoS_ omega & y < x & x < y + eps_ Empty) (\y:set.\z:set.Eps_i \w:set.w iIn SNoS_ omega & w < x & x < w + eps_ (ordsucc y) & z < w) Empty < x & x < nat_primrec (Eps_i \y:set.y iIn SNoS_ omega & y < x & x < y + eps_ Empty) (\y:set.\z:set.Eps_i \w:set.w iIn SNoS_ omega & w < x & x < w + eps_ (ordsucc y) & z < w) Empty + eps_ Empty claim (!y:set.nat_p y -> nat_primrec (Eps_i \z:set.z iIn SNoS_ omega & z < x & x < z + eps_ Empty) (\z:set.\w:set.Eps_i \u:set.u iIn SNoS_ omega & u < x & x < u + eps_ (ordsucc z) & w < u) (ordsucc y) = Eps_i \z:set.z iIn SNoS_ omega & z < x & x < z + eps_ (ordsucc y) & nat_primrec (Eps_i \w:set.w iIn SNoS_ omega & w < x & x < w + eps_ Empty) (\w:set.\u:set.Eps_i \v:set.v iIn SNoS_ omega & v < x & x < v + eps_ (ordsucc w) & u < v) y < z) -> ?y:set.y iIn setexp (SNoS_ omega) omega & !z:set.z iIn omega -> ap y z < x & x < ap y z + eps_ z & !w:set.w iIn z -> ap y w < ap y z