src/HOL/BNF_LFP.thy
changeset 55066 4e5ddf3162ac
parent 55062 6d3fad6f01c9
child 55084 8ee9aabb2bca
equal deleted inserted replaced
55065:6d0af3c10864 55066:4e5ddf3162ac
   223   assumes "(\<And>x y. PROP P x y)"
   223   assumes "(\<And>x y. PROP P x y)"
   224   shows "PROP P x y"
   224   shows "PROP P x y"
   225 by (rule `(\<And>x y. PROP P x y)`)
   225 by (rule `(\<And>x y. PROP P x y)`)
   226 
   226 
   227 lemma nchotomy_relcomppE:
   227 lemma nchotomy_relcomppE:
   228   "\<lbrakk>\<And>y. \<exists>x. y = f x; (r OO s) a c; (\<And>b. r a (f b) \<Longrightarrow> s (f b) c \<Longrightarrow> P)\<rbrakk> \<Longrightarrow> P"
   228   "\<lbrakk>\<And>y. \<exists>x. y = f x; (r OO s) a c; \<And>b. r a (f b) \<Longrightarrow> s (f b) c \<Longrightarrow> P\<rbrakk> \<Longrightarrow> P"
   229   by (metis relcompp.cases)
   229   by (metis relcompp.cases)
   230 
   230 
   231 lemma vimage2p_fun_rel: "(fun_rel (vimage2p f g R) R) f g"
   231 lemma vimage2p_fun_rel: "fun_rel (vimage2p f g R) R f g"
   232   unfolding fun_rel_def vimage2p_def by auto
   232   unfolding fun_rel_def vimage2p_def by auto
   233 
   233 
   234 lemma predicate2D_vimage2p: "\<lbrakk>R \<le> vimage2p f g S; R x y\<rbrakk> \<Longrightarrow> S (f x) (g y)"
   234 lemma predicate2D_vimage2p: "\<lbrakk>R \<le> vimage2p f g S; R x y\<rbrakk> \<Longrightarrow> S (f x) (g y)"
   235   unfolding vimage2p_def by auto
   235   unfolding vimage2p_def by auto
   236 
   236