equal
deleted
inserted
replaced
304 (*Makes parameters in a goal have distinctive names (not guaranteed unique!) |
304 (*Makes parameters in a goal have distinctive names (not guaranteed unique!) |
305 A name clash could cause the printer to rename bound vars; |
305 A name clash could cause the printer to rename bound vars; |
306 then res_inst_tac would not work properly.*) |
306 then res_inst_tac would not work properly.*) |
307 fun rename_vars (a, []) = [] |
307 fun rename_vars (a, []) = [] |
308 | rename_vars (a, (_,T)::vars) = |
308 | rename_vars (a, (_,T)::vars) = |
309 (a,T) :: rename_vars (bump_string a, vars); |
309 (a,T) :: rename_vars (Symbol.bump_string a, vars); |
310 |
310 |
311 (*Move all parameters to the front of the subgoal, renaming them apart; |
311 (*Move all parameters to the front of the subgoal, renaming them apart; |
312 if n>0 then deletes assumption n. *) |
312 if n>0 then deletes assumption n. *) |
313 fun flatten_params n A = |
313 fun flatten_params n A = |
314 let val params = strip_params A; |
314 let val params = strip_params A; |