changeset 1723 | 286f9b6370ab |
parent 1461 | 6bcb44e4d6e5 |
child 1732 | 38776e927da8 |
1722:bb326972ede6 | 1723:286f9b6370ab |
---|---|
108 "!!n.[|p:nat; u:redexes|]==> \ |
108 "!!n.[|p:nat; u:redexes|]==> \ |
109 \ subst_rec(u,App(b,f,a),p) = App(b,subst_rec(u,f,p),subst_rec(u,a,p))"; |
109 \ subst_rec(u,App(b,f,a),p) = App(b,subst_rec(u,f,p),subst_rec(u,a,p))"; |
110 by (asm_full_simp_tac (lift_ss) 1); |
110 by (asm_full_simp_tac (lift_ss) 1); |
111 val subst_App = result(); |
111 val subst_App = result(); |
112 |
112 |
113 fun addsplit ss = (ss setloop (split_tac [expand_if]) |
113 fun addsplit ss = (ss setloop (split_inside_tac [expand_if]) |
114 addsimps [lift_rec_Var,subst_Var]); |
114 addsimps [lift_rec_Var,subst_Var]); |
115 |
115 |
116 |
116 |
117 goal Substitution.thy |
117 goal Substitution.thy |
118 "!!n.u:redexes ==> ALL k:nat.lift_rec(u,k):redexes"; |
118 "!!n.u:redexes ==> ALL k:nat.lift_rec(u,k):redexes"; |