| zbrar[m].key < key, zbrar[scan(key, zbrar, m + 1, len0)].key < key, scan(key, zbrar, m + 1, len0) ≤ m + len0, ∀ zbrar0, key0, m0. ¬ zbrar0[scan(key0, zbrar0, m0, len0)].key < key0 ∨ ¬ scan(key0, zbrar0, m0, len0) < m0 + len0 ⊦ |
Used simplifier rules: ⊦ m < n + 1 ↔ ¬ n < m; (s)% ⊦ m ≤ n → (n < m ↔ false); (s)%a: ⊦ (m + n0) + n1 = m + n0 + n1; from specification nat-basic%c: ⊦ m + n = n + m; from specification nat-basic Used terms: zbrar, key, m + 1