| id-idx(lpt0, lpt1) ⊦ bleb.isbuf? → bleb.leb < # lpt1 ∧ (boolvar ∧ lpt1[bleb.leb].size = LEB_SIZE ∨ lpt1[bleb.leb].size = # avol[bleb.leb].data) ↔ bleb.isbuf? → bleb.leb < # lpt0 ∧ (boolvar ∧ lpt0[bleb.leb].size = LEB_SIZE ∨ lpt0[bleb.leb].size = # avol[bleb.leb].data) |
lpt1[bleb.leb] = mklp(m, m0, lpf, m1), id-idx(lpt0, lpt1) ⊦ bleb.isbuf? → bleb.leb < # lpt1 ∧ (boolvar ∧ m0 = LEB_SIZE ∨ m0 = # avol[bleb.leb].data) ↔ bleb.isbuf? → bleb.leb < # lpt0 ∧ (boolvar ∧ lpt0[bleb.leb].size = LEB_SIZE ∨ lpt0[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: lpt1[bleb.leb], m, m0, lpf, m1