const ordinal : set prop const SNo : set prop axiom ordinal_SNo: !x:set.ordinal x -> SNo x const add_SNo : set set set term + = add_SNo infix + 2281 2280 const SNoCut : set set set const binunion : set set set const Repl : set (set set) set const SNoS_ : set set const Empty : set lemma !x:set.!y:set.ordinal x -> ordinal y -> SNo x -> SNo y -> x + y = SNoCut (binunion (Repl (SNoS_ x) \z:set.z + y) (Repl (SNoS_ y) (add_SNo x))) Empty var x:set var y:set hyp ordinal x hyp ordinal y claim SNo x -> x + y = SNoCut (binunion (Repl (SNoS_ x) \z:set.z + y) (Repl (SNoS_ y) (add_SNo x))) Empty