| gstore[n] = groupblock(gndx, lax, m) ⊦ abs-log(nx + n ', gstore) = abs-log(nx, gstore) + lax.to-adr(n) |
gstore[n] = groupblock(gndx, lax, m), ∀ gstore, n, gndx, lax, m. gstore[n] = groupblock(gndx, lax, m) → abs-log(nx0 + n ', gstore) = abs-log(nx0, gstore) + lax.to-adr(n) ⊦ abs-log((lnum + nx0) + n ', gstore) = abs-log(lnum + nx0, gstore) + lax.to-adr(n)
Used simplifier rules: abs-log-one: ⊦ abs-log(n ', gstore) = gstore[n].ladrlist.to-adr(n);%abs-log-base: ⊦ abs-log([], gstore) = [];%nat-list freely generated by [], +;;% ⊦ [] + nx = nx; (s)%a: ⊦ (nx + nx0) + nx1 = nx + nx0 + nx1; from specification list[nat-list-set]% ⊦ [] + ax = ax; (s)%a: ⊦ (ax + ax0) + ax1 = ax + ax0 + ax1; from specification list[address-list-set]% ⊦ lax0.to-adr(n) = lax1.to-adr(n) ↔ lax0 = lax1; (s)% ⊦ groupblock(gndx, lax, m).ladrlist = lax; (s)