Removed (now unneeded) declarations of realizers for induction on lists and letters.
authorberghofe
Wed, 07 Aug 2002 16:49:25 +0200
changeset 13470 d2cbbad84ad3
parent 13469 70d8dfef587d
child 13471 aed3aef2a0ca
Removed (now unneeded) declarations of realizers for induction on lists and letters.
src/HOL/Extraction/Higman.thy
--- a/src/HOL/Extraction/Higman.thy	Wed Aug 07 16:48:20 2002 +0200
+++ b/src/HOL/Extraction/Higman.thy	Wed Aug 07 16:49:25 2002 +0200
@@ -292,9 +292,7 @@
   done
 
 
-subsection {* Realizers *}
-
-subsubsection {* Bar induction *}
+subsection {* Realizer for Bar induction *}
 
 datatype Bar =
    Good "letter list list"
@@ -355,34 +353,6 @@
     "\<Lambda>x P r (h1: _) f (h2: _) g.
        Bar_ind_realizer \<cdot> _ \<cdot> _ \<cdot> (\<lambda>r x. realizes r (P x)) \<cdot> _ \<cdot> _ \<bullet> h1 \<bullet> h2"
 
-subsubsection {* Lists *}
-
-theorem list_ind_realizer:
-  assumes f: "P f []"
-  and g: "\<And>a as r. P r as \<Longrightarrow> P (g a as r) (a # as)"
-  shows "P (list_rec f g xs) xs"
-  apply (induct xs)
-  apply simp
-  apply (rule f)
-  apply simp
-  apply (rule g)
-  apply assumption
-  done
-
-realizers
-  list.induct (P): "\<lambda>P xs f g. list_rec f g xs"
-    "\<Lambda>P xs f (h: _) g. list_ind_realizer \<cdot> _ \<cdot> _ \<cdot> _ \<cdot> _ \<bullet> h"
-
-subsubsection {* Letters *}
-
-theorem letter_exhaust_realizer:
-  "(y = A \<Longrightarrow> P r) \<Longrightarrow> (y = B \<Longrightarrow> P s) \<Longrightarrow> P (case y of A \<Rightarrow> r | B \<Rightarrow> s)"
-  by (case_tac y, simp+)
-
-realizers
-  letter.exhaust (P): "\<lambda>y P r s. case y of A \<Rightarrow> r | B \<Rightarrow> s"
-    "\<Lambda>y P r (h: _) s. letter_exhaust_realizer \<cdot> _ \<cdot> (\<lambda>x. realizes x P) \<cdot> _ \<cdot> _ \<bullet> h"
-
 
 subsection {* Extracting the program *}