| # kx1 = # ax0, new(ax0, fs), key ∈ ri, key1 ∈ ri, kx1.toSet ⊆ dom ri, ∀ key. key ∈ ri → ri[key] ∈ fs ∧ key-cons(key, fs[ri[key]]), ∀ kx0, fs0, key0, ri0. # ax0 = # kx0 ∧ new(ax0, fs0) ∧ key0 ∈ ri0 ∧ kx0.toSet ⊆ dom ri0 ∧ (∀ key. key ∈ ri0 → ri0[key] ∈ fs0 ∧ key-cons(key, fs0[ri0[key]])) → fs0[ax0, fs0[ri0[kx0]]][ri0[kx0, ax0][key0]] = fs0[ri0[key0]] ∨ dups(kx0) ⊦ fs[ri[key1]] = (∅)[ri[key]], dups(ax0), dups(kx1), key ∈ kx1, key1 ∈ kx1, ri[key] ∈ ax0, ri[key] ∈ fs |
Used terms: key