diff -r 425b4c406d80 -r b3d97424b130 Nominal/Ex/CPS/Lt.thy --- a/Nominal/Ex/CPS/Lt.thy Mon Jun 11 14:02:57 2012 +0100 +++ b/Nominal/Ex/CPS/Lt.thy Tue Jun 12 01:23:52 2012 +0100 @@ -7,7 +7,7 @@ nominal_datatype lt = Var name ("_~" [150] 149) - | App lt lt (infixl "$" 100) + | App lt lt (infixl "$$" 100) | Lam x::"name" t::"lt" binds x in t nominal_primrec @@ -49,7 +49,7 @@ where "isValue (Var x) = True" | "isValue (Lam y N) = True" -| "isValue (A $ B) = False" +| "isValue (A $$ B) = False" unfolding eqvt_def isValue_graph_def by (perm_simp, auto) (erule lt.exhaust, auto) @@ -60,9 +60,9 @@ inductive eval :: "[lt, lt] \ bool" (" _ \\<^isub>\ _" [80,80] 80) where - evbeta: "\atom x\V; isValue V\ \ ((Lam x M) $ V) \\<^isub>\ (M[x ::= V])" -| ev1: "\isValue V; M \\<^isub>\ M' \ \ (V $ M) \\<^isub>\ (V $ M')" -| ev2: "M \\<^isub>\ M' \ (M $ N) \\<^isub>\ (M' $ N)" + evbeta: "\atom x\V; isValue V\ \ ((Lam x M) $$ V) \\<^isub>\ (M[x ::= V])" +| ev1: "\isValue V; M \\<^isub>\ M' \ \ (V $$ M) \\<^isub>\ (V $$ M')" +| ev2: "M \\<^isub>\ M' \ (M $$ N) \\<^isub>\ (M' $$ N)" equivariance eval @@ -111,7 +111,7 @@ lemma evbeta': fixes x :: name assumes "isValue V" and "atom x\V" and "N = (M[x ::= V])" - shows "((Lam x M) $ V) \\<^isub>\\<^sup>* N" + shows "((Lam x M) $$ V) \\<^isub>\\<^sup>* N" using assms by simp (rule evs2, rule evbeta, simp_all add: evs1) end