doc-src/Intro/bool_nat.thy
author blanchet
Tue, 26 Oct 2010 12:17:19 +0200
changeset 40178 00152d17855b
parent 105 216d6ed87399
permissions -rw-r--r--
reverted e7a80c6752c9 -- there's not much point in putting a diagnosis tool (as opposed to a proof method) in Plain, but more importantly Sledgehammer must be in Main to use SMT solvers

BoolNat = Arith +
types   bool,nat    0
arities bool,nat    :: arith
consts  Suc         :: "nat=>nat"
rules   add0        "0 + n = n::nat"
        addS        "Suc(m)+n = Suc(m+n)"
        nat1        "1 = Suc(0)"
        or0l        "0 + x = x::bool"
        or0r        "x + 0 = x::bool"
        or1l        "1 + x = 1::bool"
        or1r        "x + 1 = 1::bool"
end