【发布时间】:2020-05-26 14:42:34
【问题描述】:
以下构造函数不起作用并失败
parent !in 代表
为什么 Dafny 不能证明后置条件,即父级不属于Repr 集?
constructor Init(x: HashObj, parent:Node?)
ensures Valid() && fresh(Repr - {this, data})
ensures Contents == {x.get_hash()}
ensures Repr == {this, data};
ensures left == null;
ensures right == null;
ensures data == x;
ensures parent != null ==> parent !in Repr;
ensures this in Repr;
{
data := x;
left := null;
right := null;
Contents := {x.get_hash()};
Repr := {this} + {data};
}
【问题讨论】:
标签: dafny