seL4 / l4v

seL4 specification and proofs

Home Page:https://sel4.systems

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

`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).