1
/*@ axiomatic PermutSize {
2
@ logic int permut_size{Here}(int *arr);
4
@ axiom permut_valid{Here}:
6
@ 0 <= permut_size(arr) ==> \valid_range(arr,0,permut_size(arr));
7
@ axiom permut_bound{Here}:
8
@ \forall integer i; \forall int *arr;
9
@ 0 <= i <= permut_size(arr) ==> 0 <= arr[i] <= permut_size(arr);
13
//@ requires 0 <= permut_size(arr);
14
int permut_search(int *arr, int v) {
16
//@ loop invariant 0 <= idx <= permut_size(arr);
18
if (arr[idx] == v) return idx;