#include #pragma CIVL ACSL $input int N; $assume(N > 0); void arrayZeroes(int *a, int n) { int i; /*@ loop invariant 0 <= i && i <=n; @ loop invariant \forall int j; 0<=j && j @ a[j] == 0; @*/ for (i = 0; i < n; i++) a[i] = 0; } int main() { int a[N]; $havoc(&a); arrayZeroes(a, N); $assert($forall (int i : 0 .. N-1) a[i] == 0); }