src/HOL/BNF/BNF_Def.thy
changeset 52719 480a3479fa47
parent 52660 7f7311d04727
child 52730 6bf02eb4ddf7
--- a/src/HOL/BNF/BNF_Def.thy	Sun Jul 21 14:02:33 2013 +0200
+++ b/src/HOL/BNF/BNF_Def.thy	Mon Jul 22 21:12:15 2013 +0200
@@ -197,6 +197,21 @@
   ((\<lambda>i. if i \<in> g ` C then the_inv_into C g i else x) o g) i = id i"
 unfolding Func_def by (auto elim: the_inv_into_f_f)
 
+definition vimagep where
+  "vimagep f g R = (\<lambda>x y. R (f x) (g y))"
+
+lemma vimagepI: "R (f x) (g y) \<Longrightarrow> vimagep f g R x y"
+  unfolding vimagep_def by -
+
+lemma vimagepD: "vimagep f g R x y \<Longrightarrow> R (f x) (g y)"
+  unfolding vimagep_def by -
+
+lemma fun_rel_iff_leq_vimagep: "(fun_rel R S) f g = (R \<le> vimagep f g S)"
+  unfolding fun_rel_def vimagep_def by auto
+
+lemma convol_image_vimagep: "<f o fst, g o snd> ` Collect (split (vimagep f g R)) \<subseteq> Collect (split R)"
+  unfolding vimagep_def convol_def by auto
+
 ML_file "Tools/bnf_def_tactics.ML"
 ML_file "Tools/bnf_def.ML"