[Iris-Club] Change in weakest-pre
Ralf Jung
jung at mpi-sws.org
Sat Nov 7 18:39:27 CET 2015
Hi all,
Janno and Dave reminded me the other day, that I recently made one
change to weakest-pre that is not documented as a closed issue
<https://gitlab.mpi-sws.org/FP/iris-coq/issues?assignee_id=&author_id=&label_name=&milestone_id=&scope=all&sort=created_desc&state=closed>.
While I introduced the user-defined fork, I also changed the value case
of weakest-pre to no longer do anything interesting. It is now just
is_value e -> n > 1 -> \phi e w n
Notice that weakest-pre is still trivially true at step index 1 (and 0),
which is important for the atomic rule of consequence and the new
lifting lemmas <https://gitlab.mpi-sws.org/FP/iris-coq/issues/5>.
The advantage of this change is that we don't need a post-rule of
consequence for weakest-pre anymore: We now define Hoare triples as
{P} e {Q} := \box(P => wp(e, vs(Q)))
and the post-part of the rule of consequence follows by view shift
transitivity. It also means all of the weakest-pre proofs need to do
less, because the value case got much simpler. Generally, this removes
redundancy we used to have in the definitions, where weakest-pre of a
value, and a view shift, were pretty much the same thing.
Kind regards,
Ralf
More information about the Iris-Club
mailing list