| ((btree(rp, rp0, adr, height0 +1, dirty, ri, iast0, as, alladrs, nstat) * P))(zh), as ⊆ alladrs, as ⊆ dom iast0, iast0 | as ⊆ iast1, ∀ rp, rp0, adr, dirty, ri, iast0, as, alladrs, nstat, P, zh, iast1. ((btree(rp, rp0, adr, height0, dirty, ri, iast0, as, alladrs, nstat) * P))(zh) ∧ iast0 | as ⊆ iast1 ∧ as ⊆ dom iast0 ∧ as ⊆ alladrs → ((btree(rp, rp0, adr, height0, dirty, ri, iast1, as, alladrs, nstat) * P))(zh) ⊦ ((btree(rp, rp0, adr, height0 +1, dirty, ri, iast1, as, alladrs, nstat) * P))(zh) |
((btree(rp, rp0, adr, height0 + 1, dirty, ri, iast0, as, alladrs, nstat) * P))(zh), iast0 | as ⊆ iast1, as ⊆ dom iast0, as ⊆ alladrs, ∀ rp, rp0, adr, dirty, ri, iast0, as, alladrs, nstat, P, zh, iast1. ((btree(rp, rp0, adr, height0, dirty, ri, iast0, as, alladrs, nstat) * P))(zh) ∧ iast0 | as ⊆ iast1 ∧ as ⊆ dom iast0 ∧ as ⊆ alladrs → ((btree(rp, rp0, adr, height0, dirty, ri, iast1, as, alladrs, nstat) * P))(zh) ⊦ ((btree(rp, rp0, adr, height0 + 1, dirty, ri, iast1, as, alladrs, nstat) * P))(zh)
Used simplifier rules: ⊦ m +1 = m + 1; (s)