| lpt[n] = mklp(n0, n1, lpf, n2) ⊦ lp.flags = LP_GROUP_NODES, abs-gstore(avol, lpt[n, lp], gstore, ginval) ↔ abs-gstore(avol, lpt, gstore, ginval), lpf = LP_GROUP_NODES |
lpt[n] = mklp(n0, n1, lpf, n2) ⊦ lp.flags = LP_GROUP_NODES, (∀ n3. (n3 < # lpt ∧ lpt[n, lp][n3].flags = LP_GROUP_NODES ↔ n3 ∈ gstore) ∧ (n3 ∈ gstore ∧ ¬ n3 ∈ ginval → abs-leb(avol[n3], gstore[n3], lpt[n3])) ∧ (n3 ∈ gstore → lpt[n3].ref-size = gstore[n3].ref-size)) ↔ (∀ n. (n < # lpt ∧ lpt[n].flags = LP_GROUP_NODES ↔ n ∈ gstore) ∧ (n ∈ gstore ∧ ¬ n ∈ ginval → abs-leb(avol[n], gstore[n], lpt[n])) ∧ (n ∈ gstore → lpt[n].ref-size = gstore[n].ref-size)), lpf = LP_GROUP_NODES
Used simplifier rules: abs-gstore-def: ⊦ abs-gstore(avol, lpt, gstore, ginval) ↔ (∀ n. (n < # lpt ∧ lpt[n].flags = LP_GROUP_NODES ↔ n ∈ gstore) ∧ ( n ∈ gstore ∧ ¬ n ∈ ginval → abs-leb(avol[n], gstore[n], lpt[n])) ∧ (n ∈ gstore → lpt[n].ref-size = gstore[n].ref-size));%m ≠ n ⊦ lpt[m, lp][n] = lpt[n]; (s)% ⊦ m < # lpt → lpt[m, lp][m] = lp; (s)% ⊦ # lpt[n, lp] = # lpt; (s)