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 term TransSet = \x:set.!y:set.y iIn x -> Subq y x term ordinal = \x:set.TransSet x & !y:set.y iIn x -> TransSet y const PNoEq_ : set (set prop) (set prop) prop term PNoLt_ = \x:set.\p:set prop.\q:set prop.?y:set.y iIn x & (PNoEq_ y p q & ~ p y & q y) term nIn = \x:set.\y:set.~ x iIn y const PNoLe : set (set prop) set (set prop) prop term PNo_downc = \P:set (set prop) prop.\x:set.\p:set prop.?y:set.ordinal y & ?q:set prop.P y q & PNoLe x p y q const PNoLt : set (set prop) set (set prop) prop term PNo_rel_strict_upperbd = \P:set (set prop) prop.\x:set.\p:set prop.!y:set.y iIn x -> !q:set prop.PNo_downc P y q -> PNoLt y q x p term PNo_strict_upperbd = \P:set (set prop) prop.\x:set.\p:set prop.!y:set.ordinal y -> !q:set prop.P y q -> PNoLt y q x p axiom PNoLeLt_tra: !x:set.!y:set.!z:set.ordinal x -> ordinal y -> ordinal z -> !p:set prop.!q:set prop.!p2:set prop.PNoLe x p y q -> PNoLt y q z p2 -> PNoLt x p z p2 const ordsucc : set set lemma !x:set.!y:set.!p:set prop.!z:set.!q:set prop.!w:set.!p2:set prop.ordinal x -> y iIn ordsucc x -> z iIn y -> TransSet x -> ordinal y -> ordinal z -> Subq z y -> ordinal w -> PNoLe z q w p2 -> PNoLt w p2 x p -> PNoLt z q x p -> PNoLt z q y p var P:set (set prop) prop var x:set var y:set var p:set prop var z:set var q:set prop var w:set var p2:set prop hyp ordinal x hyp y iIn ordsucc x hyp PNo_strict_upperbd P x p hyp z iIn y hyp TransSet x hyp ordinal y hyp ordinal z hyp Subq z y hyp ordinal w hyp P w p2 hyp PNoLe z q w p2 claim PNoLt w p2 x p -> PNoLt z q y p