Myhill_1.thy
changeset 181 97090fc7aa9f
parent 179 edacc141060f
child 203 5d724fe0e096
--- a/Myhill_1.thy	Thu Jul 28 17:52:36 2011 +0000
+++ b/Myhill_1.thy	Sun Jul 31 10:27:41 2011 +0000
@@ -11,11 +11,17 @@
 
 text {* Myhill-Nerode relation *}
 
+
 definition
-  str_eq_rel :: "'a lang \<Rightarrow> ('a list \<times> 'a list) set" ("\<approx>_" [100] 100)
+  str_eq :: "'a lang \<Rightarrow> ('a list \<times> 'a list) set" ("\<approx>_" [100] 100)
 where
   "\<approx>A \<equiv> {(x, y).  (\<forall>z. x @ z \<in> A \<longleftrightarrow> y @ z \<in> A)}"
 
+abbreviation
+  str_eq_applied :: "'a list \<Rightarrow> 'a lang \<Rightarrow> 'a list \<Rightarrow> bool" ("_ \<approx>_ _")
+where
+  "x \<approx>A y \<equiv> (x, y) \<in> \<approx>A"
+
 definition 
   finals :: "'a lang \<Rightarrow> 'a lang set"
 where
@@ -25,7 +31,7 @@
   shows "A = \<Union> finals A"
 unfolding finals_def
 unfolding Image_def
-unfolding str_eq_rel_def
+unfolding str_eq_def
 by (auto) (metis append_Nil2)
 
 lemma finals_in_partitions:
@@ -247,7 +253,7 @@
   assumes "s \<in> X" "X \<in> UNIV // \<approx>A" 
   shows "X = \<approx>A `` {s}"
 using assms
-unfolding quotient_def Image_def str_eq_rel_def
+unfolding quotient_def Image_def str_eq_def 
 by auto
 
 lemma every_eqclass_has_transition:
@@ -263,11 +269,11 @@
     using has_str in_CS defined_by_str by blast
   then have "Y \<cdot> {[c]} \<subseteq> X" 
     unfolding Y_def Image_def conc_def
-    unfolding str_eq_rel_def
+    unfolding str_eq_def
     by clarsimp
   moreover
   have "s \<in> Y" unfolding Y_def 
-    unfolding Image_def str_eq_rel_def by simp
+    unfolding Image_def str_eq_def by simp
   ultimately show thesis using that by blast
 qed