【发布时间】:2018-08-21 17:54:33
【问题描述】:
考虑以下 C 代码:
#include <assert.h>
//@ requires p < q;
void f(char *p, char *q)
{
assert(p <= q-1);
}
//@ requires a < b;
void g(int a, int b)
{
assert(a <= b-1);
}
使用 alt-ergo,frama-c 成功地证明了 g() 中的断言成立,但未能证明与 f() 相同。为什么?
【问题讨论】:
标签: frama-c