equal
deleted
inserted
replaced
129 \ (lift_rec(lift_rec(u,i),succ(n)) = lift_rec(lift_rec(u,n),i))"; |
129 \ (lift_rec(lift_rec(u,i),succ(n)) = lift_rec(lift_rec(u,n),i))"; |
130 by (etac redexes.induct 1); |
130 by (etac redexes.induct 1); |
131 by (ALLGOALS Asm_simp_tac); |
131 by (ALLGOALS Asm_simp_tac); |
132 by Safe_tac; |
132 by Safe_tac; |
133 by (case_tac "n < xa" 1); |
133 by (case_tac "n < xa" 1); |
134 by ((forward_tac [lt_trans2] 1) THEN (assume_tac 1)); |
134 by ((ftac lt_trans2 1) THEN (assume_tac 1)); |
135 by (ALLGOALS (asm_full_simp_tac (simpset() addsimps [lift_rec_Var, leI]))); |
135 by (ALLGOALS (asm_full_simp_tac (simpset() addsimps [lift_rec_Var, leI]))); |
136 qed "lift_lift_rec"; |
136 qed "lift_lift_rec"; |
137 |
137 |
138 Goal "[|u:redexes; n:nat|] ==> \ |
138 Goal "[|u:redexes; n:nat|] ==> \ |
139 \ lift_rec(lift(u),succ(n)) = lift(lift_rec(u,n))"; |
139 \ lift_rec(lift(u),succ(n)) = lift(lift_rec(u,n))"; |
174 THEN ALLGOALS(asm_simp_tac (simpset() addsimps [lift_lift]))); |
174 THEN ALLGOALS(asm_simp_tac (simpset() addsimps [lift_lift]))); |
175 by Safe_tac; |
175 by Safe_tac; |
176 by (excluded_middle_tac "n < x" 1); |
176 by (excluded_middle_tac "n < x" 1); |
177 by (Asm_full_simp_tac 1); |
177 by (Asm_full_simp_tac 1); |
178 by (eres_inst_tac [("i","x")] leE 1); |
178 by (eres_inst_tac [("i","x")] leE 1); |
179 by (forward_tac [lt_trans1] 1 THEN assume_tac 1); |
179 by (ftac lt_trans1 1 THEN assume_tac 1); |
180 by (ALLGOALS(asm_simp_tac |
180 by (ALLGOALS(asm_simp_tac |
181 (simpset() addsimps [succ_pred,leI,gt_pred]))); |
181 (simpset() addsimps [succ_pred,leI,gt_pred]))); |
182 by (asm_full_simp_tac (simpset() addsimps [leI]) 1); |
182 by (asm_full_simp_tac (simpset() addsimps [leI]) 1); |
183 by (case_tac "n < xa" 1); |
183 by (case_tac "n < xa" 1); |
184 by (Asm_full_simp_tac 2); |
184 by (Asm_full_simp_tac 2); |
216 by (excluded_middle_tac "n < x" 1); |
216 by (excluded_middle_tac "n < x" 1); |
217 by (Asm_full_simp_tac 1); |
217 by (Asm_full_simp_tac 1); |
218 by (eres_inst_tac [("j","n")] leE 1); |
218 by (eres_inst_tac [("j","n")] leE 1); |
219 by (asm_simp_tac (simpset() addsimps [gt_pred]) 1); |
219 by (asm_simp_tac (simpset() addsimps [gt_pred]) 1); |
220 by (asm_simp_tac (simpset() addsimps [subst_rec_lift_rec]) 1); |
220 by (asm_simp_tac (simpset() addsimps [subst_rec_lift_rec]) 1); |
221 by (forward_tac [lt_trans2] 1 THEN assume_tac 1); |
221 by (ftac lt_trans2 1 THEN assume_tac 1); |
222 by (asm_simp_tac (simpset() addsimps [gt_pred]) 1); |
222 by (asm_simp_tac (simpset() addsimps [gt_pred]) 1); |
223 qed "subst_rec_subst_rec"; |
223 qed "subst_rec_subst_rec"; |
224 |
224 |
225 |
225 |
226 Goal "[|v:redexes; u:redexes; w:redexes; n:nat|] ==> \ |
226 Goal "[|v:redexes; u:redexes; w:redexes; n:nat|] ==> \ |