equal
deleted
inserted
replaced
1063 in (subst, other_assms, subst_atomic subst t) end |
1063 in (subst, other_assms, subst_atomic subst t) end |
1064 |
1064 |
1065 fun pick_nits_in_subgoal state params mode i step = |
1065 fun pick_nits_in_subgoal state params mode i step = |
1066 let |
1066 let |
1067 val ctxt = Proof.context_of state |
1067 val ctxt = Proof.context_of state |
1068 val t = state |> Proof.raw_goal |> #goal |> prop_of |
1068 val t = state |> Proof.raw_goal |> #goal |> Thm.prop_of |
1069 in |
1069 in |
1070 case Logic.count_prems t of |
1070 case Logic.count_prems t of |
1071 0 => (writeln "No subgoal!"; (noneN, [])) |
1071 0 => (writeln "No subgoal!"; (noneN, [])) |
1072 | n => |
1072 | n => |
1073 let |
1073 let |
1074 val t = Logic.goal_params t i |> fst |
1074 val t = Logic.goal_params t i |> fst |
1075 val assms = map term_of (Assumption.all_assms_of ctxt) |
1075 val assms = map Thm.term_of (Assumption.all_assms_of ctxt) |
1076 val (subst, assms, t) = extract_fixed_frees ctxt (assms, t) |
1076 val (subst, assms, t) = extract_fixed_frees ctxt (assms, t) |
1077 in pick_nits_in_term state params mode i n step subst [] assms t end |
1077 in pick_nits_in_term state params mode i n step subst [] assms t end |
1078 end |
1078 end |
1079 |
1079 |
1080 end; |
1080 end; |