Loop invariant - Too Weak


Document last modified: 

Sample Loop

Loop invariant: i ≤ A.length

int A[] = {5, 6, 7};

int i = 0;

//@ loop_invariant (i ≤ A.length);

while( i < A.length ) {
          A[i]=2*A[i];
          i = i + 1;
}

Statement Object Values
  i=0
A.length = 3
//@ loop_invariant (i ≤ A.length);

while( i < A.length ) {

}

 
State at time of loop exit i = 3
A.length = 3