【问题标题】:Compute the weakest precondition计算最弱的前提条件
【发布时间】:2018-02-26 23:00:26
【问题描述】:

计算以下每个赋值语句和后置条件的最弱前置条件:

a = a + 2 * b - 1 {a > 1}

尝试:

两边都有a

0 = 2b -1

1/2 = b 是最弱的precon

回答: b > 1 - a/2

你是怎么得到这个答案的?

【问题讨论】:

  • 这里有一种方法:从a + 2 * b - 1 > 1 开始并求解b
  • 好的,我明白了,你
  • @melpomene 你能发表你的答案吗?有些人(包括我)会寻找第一眼的绿色复选符号。

标签: preconditions


【解决方案1】:

这里是答案:

a = a + 2 * b - 1 {a > 1}

我们将a in {a > 1} 替换为a + 2 * b - 1

a + 2 * b - 1 > 1
a + 2 * b > 2
2 * b > 2 - a
b > 1 - a / 2`

我想你已经找到了答案,但对于那些可能会来这里寻找这个答案的人。

【讨论】:

    猜你喜欢
    • 2018-03-29
    • 2022-07-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-06
    相关资源
    最近更新 更多