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