| lpt[n0] = mklp(m0, m1, lpf, m2), n0 < # lpt, n0 < m, m < # lpt, n0 + 1 < # lpt, ∀ lpt, m, nx. n0 < # lpt ∧ m < # lpt ∧ n0 ≤ m → replay-lpt(lpt, nx, n0)[m] = lpt[m], lpf ≠ LP_INDEX_NODES ∨ m0 = 0 ⊦ (m0 = 0 ⊃ replay-lpt(lpt, nx, n0)[n0, mklp(0, 0, LP_FREE, m2)];replay-lpt(lpt, nx, n0))[m] = lpt[m], lpf = LP_FREE, n0 ∈ nx |
lpt[n0] = mklp(m0, m1, lpf, m2), m0 = 0, n0 + 1 < # lpt, m < # lpt, n0 < m, n0 < # lpt, ∀ lpt, m, nx. n0 < # lpt ∧ m < # lpt ∧ n0 ≤ m → replay-lpt(lpt, nx, n0)[m] = lpt[m], lpf ≠ LP_INDEX_NODES ∨ m0 = 0 ⊦ replay-lpt(lpt, nx, n0)[n0, mklp(0, 0, LP_FREE, m2)][m] = lpt[m], lpf = LP_FREE, n0 ∈ nx
lpt[n0] = mklp(m0, m1, lpf, m2), n0 + 1 < # lpt, m < # lpt, n0 < m, n0 < # lpt, ∀ lpt, m, nx. n0 < # lpt ∧ m < # lpt ∧ n0 ≤ m → replay-lpt(lpt, nx, n0)[m] = lpt[m], lpf ≠ LP_INDEX_NODES ∨ m0 = 0 ⊦ replay-lpt(lpt, nx, n0)[m] = lpt[m], lpf = LP_FREE, m0 = 0, n0 ∈ nx