| n < nused, n < # zbrar, sorted(zbrar, 0, nused), nused ≤ # zbrar ⊦ payload(zbrar[n, mkzentry(zbrar[n].key, adr)], 0, nused) = payload(zbrar, 0, nused)[zbrar[n].key, adr] |
n < nused, m + nused ≤ # zbrar, zbrar[m + n].key = key, sorted(zbrar, m, nused) ⊦ payload(zbrar[m + n, mkzentry(key, adr)], m, nused) = payload(zbrar, m, nused)[key, adr]
Used simplifier rules: ⊦ n + 0 = n; (s)%a: ⊦ (m + n0) + n1 = m + n0 + n1; from specification nat-basic%c: ⊦ m + n = n + m; from specification nat-basic Used terms: n, nused, 0, zbrar, zbrar[n].key, adr