| n < scan(key, zbrar, 0, nused), sorted(zbrar, 0, nused), scan(key, zbrar, 0, nused) ≤ # zbrar, scan(key, zbrar, 0, nused) ≤ nused, nused ≤ # zbrar ⊦ zbrar[n].key < key |
n < scan(key, zbrar, 0, nused), n < nused, n < # zbrar, sorted(zbrar, 0, nused), nused ≤ # zbrar, scan(key, zbrar, 0, nused) ≤ nused, scan(key, zbrar, 0, nused) ≤ # zbrar ⊦ zbrar[n].key < key
Used simplifier rules: ⊦ m < n → n ≠ 0; (s)%fle: ⊦ m < n ∧ n ≤ n0 → m < n0; (forward) from specification nat%f: ⊦ m < n → n ≠ 0; (forward) from specification nat-basic