You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

10 lines
511 B

property SkipAfterRemove
prefix "ArrayList"
nondet (start)
start -> start: *
start -> removed: remove(Collection, Index, IgnoreRet) => c := Collection; i := Index
removed -> ok: get(Collection, Index, IgnoreRet) when i == Index && c == Collection
removed -> error: get(Collection, Index, IgnoreRet) when i != Index && c == Collection => j := Index
// TODO(rgrigore): Dropping the assignment above makes it slow. Also, swapping the conjuncts!
// This is weird prover-stuff to be investigated.