| ((sk1 × val1) ' + fis0)[n] = sk × val, n ≤ # fis0, ∀ n0, sk0, val0. fis0[n0] = sk0 × val0 ∧ ¬ # fis0 ≤ n0 → (fis0 .vals)[n0] = val0 ∨ fis0 = [] ⊦ (val1 ' + fis0 .vals)[n] = val |
⊦ vals ≠ [] ∧ n ≠ 0 → vals[n] = (vals .rest)[n - 1]
val1 ' + fis0 .vals ≠ [] ∧ n ≠ 0, ((sk1 × val1) ' + fis0)[n] = sk × val, n ≤ # fis0, ∀ n0, sk0, val0. fis0[n0] = sk0 × val0 ∧ ¬ # fis0 ≤ n0 → (fis0 .vals)[n0] = val0 ∨ fis0 = [] ⊦ ((val1 ' + fis0 .vals) .rest)[n - 1] = val
[[CONCRETESIMPRULES : ([CSIMPNAMEDSEQ : list, javavalues, app-02-ant, ⊦ ¬ vals + vals0 ≠ [] ↔ vals = [] ∧ vals0 = []], [CSIMPNAMEDSEQ : list, javavalues, e, ⊦ val ' ≠ []], [CSIMPNAMEDSEQ : list, javavalues, a, ⊦ (vals + vals0) + vals1 = vals + vals0 + vals1], [CSIMPNAMEDSEQ : list-del, fieldinit-assoclista, get-zero-01, ⊦ (fv ' + fis)[0] = fv], [CSIMPNAMEDSEQ : list, fieldinit-assoclista, a, ⊦ (fis + fis0) + fis1 = fis + fis0 + fis1], [CSIMPNAMEDSEQ : pair, fieldinit, inj, ⊦ sk × val = sk0 × val0 ↔ sk = sk0 ∧ val = val0], [CSIMPNAMEDSEQ : list-del, javavalues, get-zero-01, ⊦ (val ' + vals)[0] = val])], [EXTRATERMS : (n, val1 ' + fis0 .vals)]]