| m0 + 1 = # pebs, pebs[m0] = mkpeb(buf, m, true), abs(subarray(pebs, 0, m0), apebs), ubi-io-initial(apebs), ubi-io-initial(pebs) ⊦ abs(pebs, copy(apebs, 0, mkapebs(m0 + 1), 0, m0)[m0, mkpeb(empty, empty, mkbuf(LEB_SIZE), 0, true)]) |
⊦ abs(pebs, apebs) ↔ # pebs = # apebs ∧ (∀ n. n < # pebs → abs-peb(pebs[n], apebs[n]))
m0 + 1 = # pebs, pebs[m0] = mkpeb(buf, m, true), abs(subarray(pebs, 0, m0), apebs), ubi-io-initial(pebs), ubi-io-initial(apebs) ⊦ # pebs = # copy(apebs, 0, mkapebs(m0 + 1), 0, m0)[m0, mkpeb(empty, empty, mkbuf(LEB_SIZE), 0, true)] ∧ (∀ n. n < # pebs → abs-peb(pebs[n], copy(apebs, 0, mkapebs(m0 + 1), 0, m0)[m0, mkpeb(empty, empty, mkbuf(LEB_SIZE), 0, true)][n]))
Used terms: copy(apebs, 0, mkapebs(m0 + 1), 0, m0) [m0, mkpeb(empty, empty, mkbuf(LEB_SIZE), 0, true) ], pebs