| new(adr0 + ax0, fs), adr ∈ fs, adr ∈ adr0 + ax0, ∀ fs, adr. ¬(new(ax0, fs) ∧ adr ∈ ax0 ∧ adr ∈ fs) ⊦ |
new(ax0, fs), adr ∈ fs, adr ∈ ax0, ∀ fs0, adr1. ¬ new(ax0, fs0) ∨ ¬ adr1 ∈ ax0 ∨ ¬ adr1 ∈ fs0 ⊦ adr0 ∈ fs
Used simplifier rules: new-rec: ⊦ new(adr ' + log, fs) ↔ ¬ adr ∈ fs ∧ new(log, fs);%a: ⊦ (ax + ax0) + ax1 = ax + ax0 + ax1; from specification list[address-list-set]% ⊦ adr ∈ adr0 ' + ax ↔ adr = adr0 ∨ adr ∈ ax; (s)% ⊦ adr + ax = adr ' + ax; (s)