diff -r 39ae45d3a11b -r 2b8e387d2dfc Nominal/Ex/Lambda.thy --- a/Nominal/Ex/Lambda.thy Thu Jun 16 23:11:50 2011 +0900 +++ b/Nominal/Ex/Lambda.thy Thu Jun 16 20:07:03 2011 +0100 @@ -10,7 +10,8 @@ | App "lam" "lam" | Lam x::"name" l::"lam" bind x in l ("Lam [_]. _" [100, 100] 100) -text {* free name function *} + +section {* free name function *} text {* first returns an atom list *} @@ -20,7 +21,8 @@ "frees_lst (Var x) = [atom x]" | "frees_lst (App t1 t2) = frees_lst t1 @ frees_lst t2" | "frees_lst (Lam [x]. t) = removeAll (atom x) (frees_lst t)" - unfolding eqvt_def frees_lst_graph_def + unfolding eqvt_def + unfolding frees_lst_graph_def apply (rule, perm_simp, rule) apply(rule TrueI) apply(rule_tac y="x" in lam.exhaust) @@ -74,7 +76,9 @@ by (metis fresh_fun_app) -text {* A test with a locale and an interpretation. *} +section {* A test with a locale and an interpretation. *} + +text {* conclusion: it is no necessary *} locale test = fixes f1::"name \ ('a::pt)" @@ -126,7 +130,7 @@ apply (simp_all add: eqvt_def permute_fun_def permute_pure) done -text {* height function *} +section {* height function *} nominal_primrec height :: "lam \ int" @@ -149,7 +153,7 @@ thm height.simps -text {* capture - avoiding substitution *} +section {* capture-avoiding substitution *} nominal_primrec subst :: "lam \ name \ lam \ lam" ("_ [_ ::= _]" [90, 90, 90] 90)