# HG changeset patch # User wenzelm # Date 1376832672 -7200 # Node ID acc495621d728d6401fc59b736e80e4384b6d3b2 # Parent 1958a5e65ea59e157725eafa241693febb37c3d8 prefer plain subscript; diff -r 1958a5e65ea5 -r acc495621d72 src/HOL/Decision_Procs/Dense_Linear_Order.thy --- a/src/HOL/Decision_Procs/Dense_Linear_Order.thy Sun Aug 18 15:10:18 2013 +0200 +++ b/src/HOL/Decision_Procs/Dense_Linear_Order.thy Sun Aug 18 15:31:12 2013 +0200 @@ -34,7 +34,7 @@ lemma gather_start [no_atp]: "(\x. P x) \ (\x. (\y \ {}. y < x) \ (\y\ {}. x < y) \ P x)" by simp -text{* Theorems for @{text "\z. \x. x < z \ (P x \ P\<^bsub>-\\<^esub>)"}*} +text{* Theorems for @{text "\z. \x. x < z \ (P x \ P\<^sub>-\<^sub>\)"}*} lemma minf_lt[no_atp]: "\z . \x. x < z \ (x < t \ True)" by auto lemma minf_gt[no_atp]: "\z . \x. x < z \ (t < x \ False)" by (simp add: not_less) (rule exI[where x="t"], auto simp add: less_le) @@ -46,7 +46,7 @@ lemma minf_neq[no_atp]: "\z. \x. x < z \ (x \ t \ True)" by auto lemma minf_P[no_atp]: "\z. \x. x < z \ (P \ P)" by blast -text{* Theorems for @{text "\z. \x. x < z \ (P x \ P\<^bsub>+\\<^esub>)"}*} +text{* Theorems for @{text "\z. \x. x < z \ (P x \ P\<^sub>+\<^sub>\)"}*} lemma pinf_gt[no_atp]: "\z. \x. z < x \ (t < x \ True)" by auto lemma pinf_lt[no_atp]: "\z. \x. z < x \ (x < t \ False)" by (simp add: not_less) (rule exI[where x="t"], auto simp add: less_le) @@ -351,7 +351,7 @@ lemma ge_ex[no_atp]: "\y. x \ y" using gt_ex by auto -text {* Theorems for @{text "\z. \x. z \ x \ (P x \ P\<^bsub>+\\<^esub>)"} *} +text {* Theorems for @{text "\z. \x. z \ x \ (P x \ P\<^sub>+\<^sub>\)"} *} lemma pinf_conj[no_atp]: assumes ex1: "\z1. \x. z1 \ x \ (P1 x \ P1')" and ex2: "\z2. \x. z2 \ x \ (P2 x \ P2')" @@ -402,7 +402,7 @@ lemma le_ex[no_atp]: "\y. y \ x" using lt_ex by auto -text {* Theorems for @{text "\z. \x. x \ z \ (P x \ P\<^bsub>-\\<^esub>)"} *} +text {* Theorems for @{text "\z. \x. x \ z \ (P x \ P\<^sub>-\<^sub>\)"} *} lemma minf_conj[no_atp]: assumes ex1: "\z1. \x. x \ z1 \ (P1 x \ P1')" and ex2: "\z2. \x. x \ z2 \ (P2 x \ P2')" diff -r 1958a5e65ea5 -r acc495621d72 src/HOL/Predicate_Compile_Examples/Specialisation_Examples.thy --- a/src/HOL/Predicate_Compile_Examples/Specialisation_Examples.thy Sun Aug 18 15:10:18 2013 +0200 +++ b/src/HOL/Predicate_Compile_Examples/Specialisation_Examples.thy Sun Aug 18 15:31:12 2013 +0200 @@ -194,35 +194,35 @@ | "\\<^sub>e (Suc n) k \ = \\<^sub>e n k (\[k \\<^sub>\ Top]\<^sub>e)" inductive - well_formed :: "env \ type \ bool" ("_ \\<^bsub>wf\<^esub> _" [50, 50] 50) + well_formed :: "env \ type \ bool" ("_ \\<^sub>w\<^sub>f _" [50, 50] 50) where - wf_TVar: "\\i\ = \TVarB T\ \ \ \\<^bsub>wf\<^esub> TVar i" -| wf_Top: "\ \\<^bsub>wf\<^esub> Top" -| wf_arrow: "\ \\<^bsub>wf\<^esub> T \ \ \\<^bsub>wf\<^esub> U \ \ \\<^bsub>wf\<^esub> T \ U" -| wf_all: "\ \\<^bsub>wf\<^esub> T \ TVarB T \ \ \\<^bsub>wf\<^esub> U \ \ \\<^bsub>wf\<^esub> (\<:T. U)" + wf_TVar: "\\i\ = \TVarB T\ \ \ \\<^sub>w\<^sub>f TVar i" +| wf_Top: "\ \\<^sub>w\<^sub>f Top" +| wf_arrow: "\ \\<^sub>w\<^sub>f T \ \ \\<^sub>w\<^sub>f U \ \ \\<^sub>w\<^sub>f T \ U" +| wf_all: "\ \\<^sub>w\<^sub>f T \ TVarB T \ \ \\<^sub>w\<^sub>f U \ \ \\<^sub>w\<^sub>f (\<:T. U)" inductive - well_formedE :: "env \ bool" ("_ \\<^bsub>wf\<^esub>" [50] 50) - and well_formedB :: "env \ binding \ bool" ("_ \\<^bsub>wfB\<^esub> _" [50, 50] 50) + well_formedE :: "env \ bool" ("_ \\<^sub>w\<^sub>f" [50] 50) + and well_formedB :: "env \ binding \ bool" ("_ \\<^sub>w\<^sub>f\<^sub>B _" [50, 50] 50) where - "\ \\<^bsub>wfB\<^esub> B \ \ \\<^bsub>wf\<^esub> type_ofB B" -| wf_Nil: "[] \\<^bsub>wf\<^esub>" -| wf_Cons: "\ \\<^bsub>wfB\<^esub> B \ \ \\<^bsub>wf\<^esub> \ B \ \ \\<^bsub>wf\<^esub>" + "\ \\<^sub>w\<^sub>f\<^sub>B B \ \ \\<^sub>w\<^sub>f type_ofB B" +| wf_Nil: "[] \\<^sub>w\<^sub>f" +| wf_Cons: "\ \\<^sub>w\<^sub>f\<^sub>B B \ \ \\<^sub>w\<^sub>f \ B \ \ \\<^sub>w\<^sub>f" inductive_cases well_formed_cases: - "\ \\<^bsub>wf\<^esub> TVar i" - "\ \\<^bsub>wf\<^esub> Top" - "\ \\<^bsub>wf\<^esub> T \ U" - "\ \\<^bsub>wf\<^esub> (\<:T. U)" + "\ \\<^sub>w\<^sub>f TVar i" + "\ \\<^sub>w\<^sub>f Top" + "\ \\<^sub>w\<^sub>f T \ U" + "\ \\<^sub>w\<^sub>f (\<:T. U)" inductive_cases well_formedE_cases: - "B \ \ \\<^bsub>wf\<^esub>" + "B \ \ \\<^sub>w\<^sub>f" inductive subtyping :: "env \ type \ type \ bool" ("_ \ _ <: _" [50, 50, 50] 50) where - SA_Top: "\ \\<^bsub>wf\<^esub> \ \ \\<^bsub>wf\<^esub> S \ \ \ S <: Top" -| SA_refl_TVar: "\ \\<^bsub>wf\<^esub> \ \ \\<^bsub>wf\<^esub> TVar i \ \ \ TVar i <: TVar i" + SA_Top: "\ \\<^sub>w\<^sub>f \ \ \\<^sub>w\<^sub>f S \ \ \ S <: Top" +| SA_refl_TVar: "\ \\<^sub>w\<^sub>f \ \ \\<^sub>w\<^sub>f TVar i \ \ \ TVar i <: TVar i" | SA_trans_TVar: "\\i\ = \TVarB U\ \ \ \ \\<^sub>\ (Suc i) 0 U <: T \ \ \ TVar i <: T" | SA_arrow: "\ \ T\<^sub>1 <: S\<^sub>1 \ \ \ S\<^sub>2 <: T\<^sub>2 \ \ \ S\<^sub>1 \ S\<^sub>2 <: T\<^sub>1 \ T\<^sub>2" @@ -232,7 +232,7 @@ inductive typing :: "env \ trm \ type \ bool" ("_ \ _ : _" [50, 50, 50] 50) where - T_Var: "\ \\<^bsub>wf\<^esub> \ \\i\ = \VarB U\ \ T = \\<^sub>\ (Suc i) 0 U \ \ \ Var i : T" + T_Var: "\ \\<^sub>w\<^sub>f \ \\i\ = \VarB U\ \ T = \\<^sub>\ (Suc i) 0 U \ \ \ Var i : T" | T_Abs: "VarB T\<^sub>1 \ \ \ t\<^sub>2 : T\<^sub>2 \ \ \ (\:T\<^sub>1. t\<^sub>2) : T\<^sub>1 \ \\<^sub>\ 1 0 T\<^sub>2" | T_App: "\ \ t\<^sub>1 : T\<^sub>11 \ T\<^sub>12 \ \ \ t\<^sub>2 : T\<^sub>11 \ \ \ t\<^sub>1 \ t\<^sub>2 : T\<^sub>12" | T_TAbs: "TVarB T\<^sub>1 \ \ \ t\<^sub>2 : T\<^sub>2 \ \ \ (\<:T\<^sub>1. t\<^sub>2) : (\<:T\<^sub>1. T\<^sub>2)"