`cinit lift: name` does not substitute `name = t` assumptions
lsf37 opened this issue · comments
Currently cinit lift: x_'
leaves an assumption of the form x = t
in the assumptions, where x
is a new parameter (the lifted x_'
) and x
occurs in the procedure body.
According to the ML code in substutite_asm_eqs
in ctac-method.ML
the intention is that these equations should be used for substitution so that the procedure body instead contains t
.
It's not clear to me since when this stopped working or if it ever worked in the first place.
Instead of custom code, we can probably call bound_hyp_subst_tac
or hyp_subst_tac
directly here to the the intended effect. Any fallout from that should be relatively easy to fix (famous last words).