doc-src/Intro/bool_nat.thy
author blanchet
Fri, 20 Aug 2010 10:58:01 +0200
changeset 38608 01ed56c46259
parent 105 216d6ed87399
permissions -rw-r--r--
beta eta contract the Sledgehammer conjecture (and also the axioms, although this might not be needed), just like Metis does (implicitly); another consequence of the transition to FOF
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
105
216d6ed87399 Initial revision
lcp
parents:
diff changeset
     1
BoolNat = Arith +
216d6ed87399 Initial revision
lcp
parents:
diff changeset
     2
types   bool,nat    0
216d6ed87399 Initial revision
lcp
parents:
diff changeset
     3
arities bool,nat    :: arith
216d6ed87399 Initial revision
lcp
parents:
diff changeset
     4
consts  Suc         :: "nat=>nat"
216d6ed87399 Initial revision
lcp
parents:
diff changeset
     5
rules   add0        "0 + n = n::nat"
216d6ed87399 Initial revision
lcp
parents:
diff changeset
     6
        addS        "Suc(m)+n = Suc(m+n)"
216d6ed87399 Initial revision
lcp
parents:
diff changeset
     7
        nat1        "1 = Suc(0)"
216d6ed87399 Initial revision
lcp
parents:
diff changeset
     8
        or0l        "0 + x = x::bool"
216d6ed87399 Initial revision
lcp
parents:
diff changeset
     9
        or0r        "x + 0 = x::bool"
216d6ed87399 Initial revision
lcp
parents:
diff changeset
    10
        or1l        "1 + x = 1::bool"
216d6ed87399 Initial revision
lcp
parents:
diff changeset
    11
        or1r        "x + 1 = 1::bool"
216d6ed87399 Initial revision
lcp
parents:
diff changeset
    12
end