| ((ls(rxs, x0) * ls(rys, x1 + y) * del-list(to_delete, n0)))(H), (((lls(rxs, null, x0) * ls(rys, x1 + y)) * del-list(to_delete, n0)))(H), ((ls(rxs, x0) * lls(rys, r, x1) * ls(r, y) * del-list(to_delete, n0)))(H), # x0 < h0, # x0 + # x1 < h0, n0 + # x0 ≤ h0, n0 ≤ # x0 + # x1 + # y, x1 + y = [] ∨ # x1 + # y = h0 ⊦ r = null, ∃ y0. y = H[r].val ' + y0 ∧ (∃ r0. (((lls(rys, r0, x1) * r0 => H[r].val × H[r].nxt) * ls(rxs, x0) * ls(H[r].nxt, y0) * del-list(to_delete, n0)))(H)) ∧ n0 ≤ # x0 + # x1 + # y0 + 1 |
H[r] = a × r1, ((ls(rxs, x0) * lls(rys, r, x1) * ls(r, y) * del-list(to_delete, n0)))(H), (((lls(rxs, null, x0) * ls(rys, x1 + y)) * del-list(to_delete, n0)))(H), ((ls(rxs, x0) * ls(rys, x1 + y) * del-list(to_delete, n0)))(H), # x0 + # x1 < h0, # x0 < h0, n0 ≤ # x0 + # x1 + # y, n0 + # x0 ≤ h0, x1 + y = [] ∨ # x1 + # y = h0 ⊦ r = null, ∃ y0. y = a ' + y0 ∧ (∃ r0. (((lls(rys, r0, x1) * r0 => a × r1) * ls(rxs, x0) * ls(r1, y0) * del-list(to_delete, n0)))(H)) ∧ n0 ≤ # x0 + # x1 + # y0 + 1
Used simplifier rules: ⊦ a = ce.val ∧ r = ce.nxt ↔ ce = a × r; (elim) Used terms: H[r], a, r1