equal
deleted
inserted
replaced
68 val assum_problems: int * term -> (term -> term) * term list * term |
68 val assum_problems: int * term -> (term -> term) * term list * term |
69 val varifyT: typ -> typ |
69 val varifyT: typ -> typ |
70 val unvarifyT: typ -> typ |
70 val unvarifyT: typ -> typ |
71 val varify: term -> term |
71 val varify: term -> term |
72 val unvarify: term -> term |
72 val unvarify: term -> term |
73 val legacy_varifyT: typ -> typ |
|
74 val legacy_varify: term -> term |
|
75 val get_goal: term -> int -> term |
73 val get_goal: term -> int -> term |
76 val goal_params: term -> int -> term * term list |
74 val goal_params: term -> int -> term * term list |
77 val prems_of_goal: term -> int -> term list |
75 val prems_of_goal: term -> int -> term list |
78 val concl_of_goal: term -> int -> term |
76 val concl_of_goal: term -> int -> term |
79 end; |
77 end; |
504 | Free (x, _) => raise TERM (bad_fixed x, [tm]) |
502 | Free (x, _) => raise TERM (bad_fixed x, [tm]) |
505 | _ => NONE)) |
503 | _ => NONE)) |
506 |> perhaps (Term_Subst.map_types_option unvarifyT_option) |
504 |> perhaps (Term_Subst.map_types_option unvarifyT_option) |
507 handle TYPE (msg, _, _) => raise TERM (msg, [tm]); |
505 handle TYPE (msg, _, _) => raise TERM (msg, [tm]); |
508 |
506 |
509 val legacy_varifyT = Term.map_atyps (fn TFree (a, S) => TVar ((a, 0), S) | T => T); |
|
510 |
|
511 val legacy_varify = |
|
512 Term.map_aterms (fn Free (x, T) => Var ((x, 0), T) | t => t) #> |
|
513 Term.map_types legacy_varifyT; |
|
514 |
|
515 |
507 |
516 (* goal states *) |
508 (* goal states *) |
517 |
509 |
518 fun get_goal st i = nth_prem (i, st) |
510 fun get_goal st i = nth_prem (i, st) |
519 handle TERM _ => error "Goal number out of range"; |
511 handle TERM _ => error "Goal number out of range"; |