const In : set set prop term iIn = In infix iIn 2000 2000 const SNo : set prop const SNoLt : set set prop term < = SNoLt infix < 2020 2020 term SNoCutP = \x:set.\y:set.(!z:set.z iIn x -> SNo z) & (!z:set.z iIn y -> SNo z) & !z:set.z iIn x -> !w:set.w iIn y -> z < w term Subq = \x:set.\y:set.!z:set.z iIn x -> z iIn y const Pi : set (set set) set term setexp = \x:set.\y:set.Pi y \z:set.x const ap : set set set axiom ap_Pi: !x:set.!f:set set.!y:set.!z:set.y iIn Pi x f -> z iIn x -> ap y z iIn f z const Repl : set (set set) set axiom ReplE_impred: !x:set.!f:set set.!y:set.y iIn Repl x f -> !P:prop.(!z:set.z iIn x -> y = f z -> P) -> P const SNoS_ : set set const omega : set const SNoCut : set set set const SNoLev : set set const ordsucc : set set lemma !x:set.!y:set.!P:prop.y iIn setexp (SNoS_ omega) omega -> (SNoCutP (Repl omega (ap x)) (Repl omega (ap y)) -> SNo (SNoCut (Repl omega (ap x)) (Repl omega (ap y))) -> SNoLev (SNoCut (Repl omega (ap x)) (Repl omega (ap y))) iIn ordsucc omega -> SNoCut (Repl omega (ap x)) (Repl omega (ap y)) iIn SNoS_ (ordsucc omega) -> (!z:set.z iIn omega -> ap x z < SNoCut (Repl omega (ap x)) (Repl omega (ap y))) -> (!z:set.z iIn omega -> SNoCut (Repl omega (ap x)) (Repl omega (ap y)) < ap y z) -> P) -> SNoCutP (Repl omega (ap x)) (Repl omega (ap y)) -> SNo (SNoCut (Repl omega (ap x)) (Repl omega (ap y))) -> (!z:set.z iIn Repl omega (ap x) -> z < SNoCut (Repl omega (ap x)) (Repl omega (ap y))) -> (!z:set.z iIn Repl omega (ap y) -> SNoCut (Repl omega (ap x)) (Repl omega (ap y)) < z) -> Subq (Repl omega (ap x)) (SNoS_ omega) -> Subq (Repl omega (ap y)) (SNoS_ omega) -> P var x:set var y:set var P:prop hyp x iIn setexp (SNoS_ omega) omega hyp y iIn setexp (SNoS_ omega) omega hyp SNoCutP (Repl omega (ap x)) (Repl omega (ap y)) -> SNo (SNoCut (Repl omega (ap x)) (Repl omega (ap y))) -> SNoLev (SNoCut (Repl omega (ap x)) (Repl omega (ap y))) iIn ordsucc omega -> SNoCut (Repl omega (ap x)) (Repl omega (ap y)) iIn SNoS_ (ordsucc omega) -> (!z:set.z iIn omega -> ap x z < SNoCut (Repl omega (ap x)) (Repl omega (ap y))) -> (!z:set.z iIn omega -> SNoCut (Repl omega (ap x)) (Repl omega (ap y)) < ap y z) -> P hyp SNoCutP (Repl omega (ap x)) (Repl omega (ap y)) hyp SNo (SNoCut (Repl omega (ap x)) (Repl omega (ap y))) hyp !z:set.z iIn Repl omega (ap x) -> z < SNoCut (Repl omega (ap x)) (Repl omega (ap y)) hyp !z:set.z iIn Repl omega (ap y) -> SNoCut (Repl omega (ap x)) (Repl omega (ap y)) < z claim Subq (Repl omega (ap x)) (SNoS_ omega) -> P