| lpt[n] = mklp(m0, n1, lpf0, m1) ⊦ bleb.isbuf? → bleb.leb < # lpt ∧ ( boolvar ∧ lpt[n, mklp(n0, n1, lpf1, n2)][bleb.leb].size = LEB_SIZE ∨ lpt[n, mklp(n0, n1, lpf1, n2)][bleb.leb].size = # avol[bleb.leb].data) ↔ bleb.isbuf? → bleb.leb < # lpt ∧ (boolvar ∧ lpt[bleb.leb].size = LEB_SIZE ∨ lpt[bleb.leb].size = # avol[bleb.leb].data) |
lpt[n] = mklp(m0, n1, lpf0, m1), lpt[n, mklp(n0, n1, lpf1, n2)][bleb.leb] = mklp(m, m2, lpf, m3) ⊦ bleb.isbuf? → bleb.leb < # lpt ∧ (boolvar ∧ m2 = LEB_SIZE ∨ m2 = # avol[bleb.leb].data) ↔ bleb.isbuf? → bleb.leb < # lpt ∧ (boolvar ∧ lpt[bleb.leb].size = LEB_SIZE ∨ lpt[bleb.leb].size = # avol[bleb.leb].data)
Used simplifier rules: ⊦ ((m = lp.ref-size ∧ m0 = lp.size) ∧ lpf = lp.flags) ∧ m1 = lp.gcheapidx ↔ lp = mklp(m, m0, lpf, m1); (elim) Used terms: lpt[n, mklp(n0, n1, lpf1, n2)][bleb.leb], m, m2, lpf, m3