| ⊦ lpt.mapIndices(ns ++ n, λ lp. lp.size:= LEB_SIZE) = lpt.mapIndices(ns, λ lp. lp.size:= LEB_SIZE)[n, lpt.mapIndices(ns, λ lp. lp.size:= LEB_SIZE)[n].size:= LEB_SIZE], n ∈ ns |
⊦ lpt = lpt0 ↔ # lpt = # lpt0 ∧ (∀ n. n < # lpt → lpt[n] = lpt0[n])
⊦ n ∈ ns, # lpt.mapIndices(ns ++ n, λ lp. lp.size:= LEB_SIZE) = # lpt.mapIndices(ns, λ lp. lp.size:= LEB_SIZE)[n, lpt.mapIndices(ns, λ lp. lp.size:= LEB_SIZE)[n].size:= LEB_SIZE] ∧ (∀ n0. n0 < # lpt.mapIndices(ns ++ n, λ lp. lp.size:= LEB_SIZE) → lpt.mapIndices(ns ++ n, λ lp. lp.size:= LEB_SIZE)[n0] = lpt.mapIndices(ns, λ lp. lp.size:= LEB_SIZE)[n, lpt.mapIndices(ns, λ lp. lp.size:= LEB_SIZE)[n].size:= LEB_SIZE][n0])
Used terms: lpt.mapIndices(ns, λ lp. lp.size:= LEB_SIZE) [n, lpt.mapIndices(ns, λ lp. lp.size:= LEB_SIZE)[n].size:= LEB_SIZE ], lpt.mapIndices(ns ++ n, λ lp. lp.size:= LEB_SIZE)