const SNo : set prop const mul_SNo : set set set term * = mul_SNo infix * 2291 2290 const Empty : set axiom mul_SNo_zeroL: !x:set.SNo x -> Empty * x = Empty axiom SNo_mul_SNo: !x:set.!y:set.SNo x -> SNo y -> SNo (x * y) const add_SNo : set set set term + = add_SNo infix + 2281 2280 axiom add_SNo_0R: !x:set.SNo x -> x + Empty = x const SNoLe : set set prop term <= = SNoLe infix <= 2020 2020 lemma !x:set.!y:set.!z:set.SNo x -> Empty <= x -> SNo y -> SNo z -> y <= z -> Empty * z + x * y = x * y -> x * z + Empty * y = x * z -> x * y <= x * z var x:set var y:set var z:set hyp SNo x hyp Empty <= x hyp SNo y hyp SNo z hyp y <= z claim Empty * z + x * y = x * y -> x * y <= x * z