3
框架规则作为变更保存者?
一帧的规则,像下面给出的一个,捕获的想法,给定一个计划c与前提p保存在运行前和后置条件q保存后,一些不相交的条件r应之前和之后都保持c运行。(连接词*要求其参数不相交。)通常,前置条件和后置条件是堆的状态,并且c是一种有效的程序,可以某种方式修改堆。 {p} c {q} ----------------- (where no free variable in r is modified by c) {p * r} c {q * r} 我所看到的关于框架规则的讨论似乎总是集中在如何r保留堆的不相交部分上。这将启用“局部推理”:在对具有影响的效果进行推理时c,我们可以忽略r堆的一部分,而只关心实际更改的部分。但是另一种看待它的方法是,即使从那里p到qr现在都保留了从到的更改。换句话说,重要的是我们要以后置条件结束{q * r},而不是{q' * r}其他条件q'。 所以,我的问题是,是否有框架规则,讨论或利用保存-的变化-从-的任何治疗p至- q事情。