| is-encoded-rec(vtbl, buf), v ∈ vtbl, ∀ vtbl0, buf. # vtbl0 < # vtbl → is-encoded-rec(vtbl0, buf) → # buf = # vtbl0 * (ENCODED_VOLID_SIZE + ENCODED_NAT_SIZE) ⊦ # buf = # vtbl * (ENCODED_VOLID_SIZE + ENCODED_NAT_SIZE) |
⊦ v ∈ vtbl ↔ (∃ n, vtbl0. vtbl = vtbl0[v, n] ∧ ¬ v ∈ vtbl0)
v ∈ vtbl ↔ (∃ n, vtbl0. vtbl = vtbl0[v, n] ∧ ¬ v ∈ vtbl0), is-encoded-rec(vtbl, buf), v ∈ vtbl, ∀ vtbl0, buf. # vtbl0 < # vtbl → is-encoded-rec(vtbl0, buf) → # buf = # vtbl0 * (ENCODED_VOLID_SIZE + ENCODED_NAT_SIZE) ⊦ # buf = # vtbl * (ENCODED_VOLID_SIZE + ENCODED_NAT_SIZE)
Used terms: v, vtbl