author | wenzelm |
Wed, 06 Dec 2000 21:32:25 +0100 | |
changeset 10618 | 5b96bc5fbec3 |
parent 10599 | 2df753cf86e9 |
child 11164 | 03f5dc539fd9 |
permissions | -rw-r--r-- |
(* Title: HOL/NatArith.thy ID: $Id$ Setup arithmetic proof procedures. *) theory NatArith = Nat files "arith_data.ML": setup arith_setup (*elimination of `-' on nat*) lemma nat_diff_split: "P(a - b::nat) = ((a<b --> P 0) & (ALL d. a = b + d --> P d))" by (cases "a < b" rule: case_split) (auto simp add: diff_is_0_eq [THEN iffD2]) ML {* val nat_diff_split = thm "nat_diff_split" *} lemmas [arith_split] = nat_diff_split split_min split_max end