const In : set set prop term iIn = In infix iIn 2000 2000 term Subq = \x:set.\y:set.!z:set.z iIn x -> z iIn y const SNo : set prop const minus_SNo : set set term - = minus_SNo axiom SNo_minus_SNo: !x:set.SNo x -> SNo - x const SNoLev : set set axiom minus_SNo_Lev: !x:set.SNo x -> SNoLev - x = SNoLev x const SNoLt : set set prop term < = SNoLt infix < 2020 2020 axiom minus_SNo_Lt_contra2: !x:set.!y:set.SNo x -> SNo y -> x < - y -> y < - x const SNoR : set set axiom SNoR_I: !x:set.SNo x -> !y:set.SNo y -> SNoLev y iIn SNoLev x -> x < y -> y iIn SNoR x const Repl : set (set set) set axiom ReplI: !x:set.!f:set set.!y:set.y iIn x -> f y iIn Repl x f axiom minus_SNo_invol: !x:set.SNo x -> - - x = x const SNoL : set set axiom SNoL_E: !x:set.SNo x -> !y:set.y iIn SNoL x -> !P:prop.(SNo y -> SNoLev y iIn SNoLev x -> y < x -> P) -> P axiom minus_SNo_Lt_contra: !x:set.!y:set.SNo x -> SNo y -> x < y -> - y < - x axiom SNoL_I: !x:set.SNo x -> !y:set.SNo y -> SNoLev y iIn SNoLev x -> y < x -> y iIn SNoL x axiom SNoR_E: !x:set.SNo x -> !y:set.y iIn SNoR x -> !P:prop.(SNo y -> SNoLev y iIn SNoLev x -> x < y -> P) -> P 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 axiom set_ext: !x:set.!y:set.Subq x y -> Subq y x -> x = y var x:set hyp SNo x claim SNo - x -> SNoL - x = Repl (SNoR x) minus_SNo