add lemmas
authorAndreas Lochbihler
Fri, 27 Sep 2013 09:07:45 +0200
changeset 53944 50c8f7f21327
parent 53943 2b761d9a74f5
child 53945 4191acef9d0e
add lemmas
src/HOL/Lifting.thy
src/HOL/Transfer.thy
--- a/src/HOL/Lifting.thy	Fri Sep 27 08:59:22 2013 +0200
+++ b/src/HOL/Lifting.thy	Fri Sep 27 09:07:45 2013 +0200
@@ -76,6 +76,16 @@
 
 lemma left_unique_eq: "left_unique op=" unfolding left_unique_def by blast
 
+lemma [simp]:
+  shows left_unique_conversep: "left_unique A\<inverse>\<inverse> \<longleftrightarrow> right_unique A"
+  and right_unique_conversep: "right_unique A\<inverse>\<inverse> \<longleftrightarrow> left_unique A"
+by(auto simp add: left_unique_def right_unique_def)
+
+lemma [simp]:
+  shows left_total_conversep: "left_total A\<inverse>\<inverse> \<longleftrightarrow> right_total A"
+  and right_total_conversep: "right_total A\<inverse>\<inverse> \<longleftrightarrow> left_total A"
+by(simp_all add: left_total_def right_total_def)
+
 subsection {* Quotient Predicate *}
 
 definition
--- a/src/HOL/Transfer.thy	Fri Sep 27 08:59:22 2013 +0200
+++ b/src/HOL/Transfer.thy	Fri Sep 27 09:07:45 2013 +0200
@@ -201,6 +201,12 @@
   "bi_unique R \<longleftrightarrow> (R ===> R ===> op =) (op =) (op =)"
   unfolding bi_unique_def fun_rel_def by auto
 
+lemma bi_unique_conversep [simp]: "bi_unique R\<inverse>\<inverse> = bi_unique R"
+by(auto simp add: bi_unique_def)
+
+lemma bi_total_conversep [simp]: "bi_total R\<inverse>\<inverse> = bi_total R"
+by(auto simp add: bi_total_def)
+
 text {* Properties are preserved by relation composition. *}
 
 lemma OO_def: "R OO S = (\<lambda>x z. \<exists>y. R x y \<and> S y z)"