equal
deleted
inserted
replaced
97 else |
97 else |
98 subst |
98 subst |
99 end; |
99 end; |
100 |
100 |
101 val subst = fold make_subst free_vars []; |
101 val subst = fold make_subst free_vars []; |
102 val csubst = map (pairself (cterm_of thy)) subst; |
102 val csubst = map (apply2 (cterm_of thy)) subst; |
103 val inst_thm = Drule.cterm_instantiate csubst thm; |
103 val inst_thm = Drule.cterm_instantiate csubst thm; |
104 in |
104 in |
105 Conv.fconv_rule |
105 Conv.fconv_rule |
106 ((Conv.concl_conv (nprems_of inst_thm) o HOLogic.Trueprop_conv o Conv.fun2_conv o Conv.arg1_conv) |
106 ((Conv.concl_conv (nprems_of inst_thm) o HOLogic.Trueprop_conv o Conv.fun2_conv o Conv.arg1_conv) |
107 (Raw_Simplifier.rewrite ctxt false (Transfer.get_sym_relator_eq ctxt))) inst_thm |
107 (Raw_Simplifier.rewrite ctxt false (Transfer.get_sym_relator_eq ctxt))) inst_thm |