equal
deleted
inserted
replaced
31 |
31 |
32 fun inst_state_infer_tac ctxt rel st = |
32 fun inst_state_infer_tac ctxt rel st = |
33 case Term.add_vars (prop_of st) [] of |
33 case Term.add_vars (prop_of st) [] of |
34 [v as (_, T)] => |
34 [v as (_, T)] => |
35 let |
35 let |
36 val cert = Thm.cterm_of (Proof_Context.theory_of ctxt); |
36 val cert = Proof_Context.cterm_of ctxt; |
37 val rel' = singleton (Variable.polymorphic ctxt) rel |
37 val rel' = singleton (Variable.polymorphic ctxt) rel |
38 |> map_types Type_Infer.paramify_vars |
38 |> map_types Type_Infer.paramify_vars |
39 |> Type.constraint T |
39 |> Type.constraint T |
40 |> Syntax.check_term ctxt |
40 |> Syntax.check_term ctxt |
41 |> cert; |
41 |> cert; |