| ∀ adr, ri. adr ∈ referenced-adrs(ax0, ri) ↔ adr ∈ ax0 ∧ adr ∈ ri ⊦ adr ∈ referenced-adrs(adr0 + ax0, ri) ↔ adr ∈ adr0 + ax0 ∧ adr ∈ ri |
∀ adr, ri. adr ∈ referenced-adrs(ax0, ri) ↔ adr ∈ ax0 ∧ adr ∈ ri ⊦ adr ∈ (adr0 ∈ ri ⊃ adr0 ';[]) ∨ adr ∈ referenced-adrs(ax0, ri) ↔ (adr = adr0 ∨ adr ∈ ax0) ∧ adr ∈ ri
Used simplifier rules: referenced-adrs-rec: ⊦ referenced-adrs(adr ' + ax, ri) = (adr ∈ ri ⊃ adr ';[]) + referenced-adrs(ax, ri);% ⊦ adr ∈ adr0 ' + ax ↔ adr = adr0 ∨ adr ∈ ax; (s)% ⊦ adr ∈ ax + ax0 ↔ adr ∈ ax ∨ adr ∈ ax0; (s)%a: ⊦ (ax + ax0) + ax1 = ax + ax0 + ax1; from specification list[address-list-set]% ⊦ adr + ax = adr ' + ax; (s)