while i < 10{ i := i+1;assert a[5] == 5;
到目前为止,非常简单:声明新数组a并用相应的索引位置初始化它的值因此,assert语句应该是正确的,但是dafny抱怨说“违反断言”。我试过将a5与其他数字进行比较,例如4和6,以及其他接近的数字,但是它没有起作用,我想知道为什么?与此相关,我想问一下在dafny (使用VSCode)中打
下面是用Dafny编写的一个简单的排序算法: requires a != null && b !但是,如果我将不变量forall m,n | 0 <= m < j < n <= i :: a[m] <= a[n]从内循环中删除,则Dafny告诉我,不变量sorted(a,j,i+1)可能不是由循环维护