| ⊦ nodes-cons(@(m, m0, m1) ' + ax, nd ' + ndx, gstore, ginval) ↔ @(m, m0, m1) ∈ gstore ∧ ¬ m ∈ ginval ∧ gstore[@(m, m0, m1)].nd = nd ∧ nodes-cons(ax, ndx, gstore, ginval) |
gstore[@(m, m0, m1)] = mkgnode(nd0, m2, boolvar, boolvar0) ⊦ nodes-cons(@(m, m0, m1) ' + ax, nd ' + ndx, gstore, ginval) ↔ @(m, m0, m1) ∈ gstore ∧ ¬ m ∈ ginval ∧ nd0 = nd ∧ nodes-cons(ax, ndx, gstore, ginval)
Used simplifier rules: ⊦ ((nd = gnd.nd ∧ m = gnd.sqnum) ∧ (boolvar ↔ gnd.start)) ∧ (boolvar0 ↔ gnd.end) ↔ gnd = mkgnode(nd, m, boolvar, boolvar0); (elim) Used terms: gstore[@(m, m0, m1)], nd0, m2, boolvar, boolvar0