Quotient-Paper/Paper.thy
changeset 2209 5952b0f28261
parent 2208 b0b2198040d7
child 2210 6aaec9dd0c62
--- a/Quotient-Paper/Paper.thy	Sat Jun 05 07:26:22 2010 +0200
+++ b/Quotient-Paper/Paper.thy	Sat Jun 05 08:02:39 2010 +0200
@@ -464,34 +464,38 @@
 subsection {* Proving Regularization *}
 
 text {*
-  Isabelle provides 
-
-
 
-  Separtion of regularization from injection thanks to the following 2 lemmas:
-  \begin{lemma}
-  If @{term R2} is an equivalence relation, then:
-  \begin{eqnarray}
-  @{thm (rhs) ball_reg_eqv_range[no_vars]} & = & @{thm (lhs) ball_reg_eqv_range[no_vars]}\\
-  @{thm (rhs) bex_reg_eqv_range[no_vars]} & = & @{thm (lhs) bex_reg_eqv_range[no_vars]}
-  \end{eqnarray}
-  \end{lemma}
+  Isabelle provides a set of \emph{mono} rules, that are used to split implications
+  of similar statements into simpler implication subgoals. These are enchanced
+  with special quotient theorem in the regularization goal. Below we only show
+  the versions for the universal quantifier. For the existential quantifier
+  and abstraction they are analoguous with some symmetry.
 
-  Monos.
-
-  Other lemmas used in regularization:
-  @{thm [display] ball_reg_eqv[no_vars]}
-  @{thm [display] babs_reg_eqv[no_vars]}
-  @{thm [display] babs_simp[no_vars]}
+  First, bounded universal quantifiers can be removed on the right:
 
   @{thm [display] ball_reg_right[no_vars]}
 
+  They can be removed anywhere if the relation is an equivalence relation:
+
+  @{thm [display] ball_reg_eqv[no_vars]}
+
+  And finally it can be removed anywhere if @{term R2} is an equivalence relation, then:
+  \[
+  @{thm (rhs) ball_reg_eqv_range[no_vars]} = @{thm (lhs) ball_reg_eqv_range[no_vars]}
+  \]
+
+  The last theorem is new in comparison with Homeier's package; it allows separating
+  regularization from injection.
+
 *}
 
 (*
+  @{thm (rhs) bex_reg_eqv_range[no_vars]} = @{thm (lhs) bex_reg_eqv_range[no_vars]}
   @{thm [display] bex_reg_left[no_vars]}
   @{thm [display] bex1_bexeq_reg[no_vars]}
   @{thm [display] bex_reg_eqv[no_vars]}
+  @{thm [display] babs_reg_eqv[no_vars]}
+  @{thm [display] babs_simp[no_vars]}
 *)
 
 subsection {* Injection *}