| key-cons(ndx0), key-cons(nd.key, nd), n ≤ # ndx0, ∀ n. n < # ndx0 → key-cons(ndx0[n].key, ndx0[n]) ⊦ key-cons((nd ' + ndx0)[n].key, (nd ' + ndx0)[n]) |
⊦ ¬ n < # ndx → (ndx + ndx0)[n] = ndx0[n - # ndx]
key-cons(nd.key, nd), key-cons(ndx0), n ≤ # ndx0, ∀ n. n < # ndx0 → key-cons(ndx0[n].key, ndx0[n]) ⊦ n < # nd ', key-cons(ndx0[n - # nd '].key, ndx0[n - # nd '])
Used simplifier rules: ⊦ # nd ' = 0 +1; (s)% ⊦ m < 1 ↔ m = 0; (s)% ⊦ 0 ≤ m; (s)% ⊦ (nd ' + ndx)[0] = nd; (s)%a: ⊦ (ndx + ndx0) + ndx1 = ndx + ndx0 + ndx1; from specification list[node-list] Used terms: n, ndx0, nd '