| nx0 < # ar, m < # ar, n < # ar, m < # ar[m, a], ∀ ar0, n0, f0. nx0 < # ar0 ∧ n0 < # ar0 → ar0.mapIndices(nx0, f0)[n0] = (n0 ∈ nx0 ⊃ f0(ar0[n0]);ar0[n0]) ⊦ ar[m, f(ar[m])].mapIndices(nx0, f)[n] = ar[n], n = m, dups(nx0), m ∈ nx0, n ∈ nx0 |
n < # ar, nx0 < # ar, m < # ar, ∀ ar0, n0, f0. nx0 < # ar0 ∧ n0 < # ar0 → ar0.mapIndices(nx0, f0)[n0] = (n0 ∈ nx0 ⊃ f0(ar0[n0]);ar0[n0]) ⊦ ar[m, f(ar[m])].mapIndices(nx0, f)[n] = ar[n], n = m, dups(nx0), n ∈ nx0, m ∈ nx0
Used simplifier rules: ⊦ # ar[n, a] = # ar; (s)