| inv(gstore \ ginval), ri-cons(ri, nodes(gstore ↓, ginval)), adr ∈ ri ⊦ #(range ri | adr.lnum) = 0, (range ri | adr.lnum).size = 0, range ri | adr.lnum = ∅, ∃ adr0. adr0 ∈ ri ∧ adr0.lnum = adr.lnum |
adr = @(m, m0, m1), inv(gstore \ ginval), ri-cons(ri, nodes(gstore ↓, ginval)), adr ∈ ri ⊦ #(range ri | m) = 0, (range ri | m).size = 0, range ri | m = ∅, ∃ adr0. adr0 ∈ ri ∧ adr0.lnum = m
Used simplifier rules: ⊦ (m = adr.lnum ∧ m0 = adr.pos) ∧ m1 = adr.size ↔ adr = @(m, m0, m1); (elim) Used terms: adr, m, m0, m1