| key0 ∈ ri[key, adr], key ∈ ri, ∀ key. key ∈ ri → ri[key] ∈ fs ∧ node-closed(fs[ri[key]], ri, fs, ro), ∀ key. key ∈ ri → ri[key] ∈ fs ∧ key-cons(key, fs[ri[key]]) ⊦ key0 = key, adr ∈ fs, (ri[key, adr][key0] = adr ∨ ri[key, adr][key0] ∈ fs) ∧ node-closed(fs[adr, fs[ri[key]]][ri[key, adr][key0]], ri[key, adr], fs[adr, fs[ri[key]]], ro) |
key ∈ ri, key0 ∈ ri, ∀ key. key ∈ ri → ri[key] ∈ fs ∧ key-cons(key, fs[ri[key]]), ∀ key. key ∈ ri → ri[key] ∈ fs ∧ node-closed(fs[ri[key]], ri, fs, ro) ⊦ key0 = key, adr ∈ fs, (ri[key0] = adr ∨ ri[key0] ∈ fs) ∧ node-closed(fs[adr, fs[ri[key]]][ri[key0]], ri[key, adr], fs[adr, fs[ri[key]]], ro)
Used simplifier rules: ⊦ key ≠ key0 → ri[key0, adr][key] = ri[key]; (s)% ⊦ key ≠ key0 → (key ∈ ri[key0, adr] ↔ key ∈ ri); (s)