| crash(gstore, gstore0, ginval, nx) ↓[m] = groupblock(gndx0, lax0, m3), gstore[m] = groupblock(gndx, lax, m2), crash(gstore, gstore0, ginval, nx) ↓[@(m, m0, m1)] = mkgnode(nd, m4, boolvar, boolvar0), inv(groupblock(gndx, lax, m2)), inv(gstore \ ginval), @(m0, m1) ∈ lax0, m ∈ gstore, @(m0, m1) ∈ prefixn(valid-group-nodes(gndx), lax) ⊦ nd = nodes(gstore ↓, ginval)[@(m, m0, m1)], m ∈ ginval |
⊦ n ∈ gstore → gstore ↓[n] = gstore[n] ↓
crash(gstore, gstore0, ginval, nx) ↓[@(m, m0, m1)] = mkgnode(nd, m4, boolvar, boolvar0), gstore[m] = groupblock(gndx, lax, m2), crash(gstore, gstore0, ginval, nx)[m] ↓ = groupblock(gndx0, lax0, m3), inv(gstore \ ginval), inv(groupblock(gndx, lax, m2)), @(m0, m1) ∈ prefixn(valid-group-nodes(gndx), lax), m ∈ gstore, @(m0, m1) ∈ lax0, m ∈ crash(gstore, gstore0, ginval, nx) ⊦ nd = nodes(gstore ↓, ginval)[@(m, m0, m1)], m ∈ ginval
Used simplifier rules: ⊦ n ∈ crash(gstore, gstore0, ginval, nx) ↔ n ∈ gstore ∨ n ∈ ginval; (ws) Used terms: m, crash(gstore, gstore0, ginval, nx)