split_beta is now declared as monotonicity rule, to allow bounded
authorberghofe
Wed, 07 May 2008 10:56:40 +0200
changeset 26798 a9134a089106
parent 26797 a6cb51c314f2
child 26799 5bd38256ce5b
split_beta is now declared as monotonicity rule, to allow bounded quantifiers in introduction rules of inductive predicates.
src/HOL/Product_Type.thy
--- a/src/HOL/Product_Type.thy	Wed May 07 10:56:39 2008 +0200
+++ b/src/HOL/Product_Type.thy	Wed May 07 10:56:40 2008 +0200
@@ -476,7 +476,7 @@
 Addsimprocs [split_beta_proc, split_eta_proc];
 *}
 
-lemma split_beta: "(%(x, y). P x y) z = P (fst z) (snd z)"
+lemma split_beta [mono]: "(%(x, y). P x y) z = P (fst z) (snd z)"
   by (subst surjective_pairing, rule split_conv)
 
 lemma split_split [noatp]: "R(split c p) = (ALL x y. p = (x, y) --> R(c x y))"