| n = m + 1, vals0[m1] = refval(r), vals0[m] = refval(r), m1 < # vals0, n ≤ # vals0, ¬ is_referencevalue(val) ∨ val .refval = jvmref ⊦ r = jvmref, m1 + 1 = n, vals0 = [], n = 0, dups(vals0 .nonnullrefs), ∃ r0, m0, n0. vals0[m0] = refval(r0) ∧ vals0[n0] = refval(r0) ∧ r0 ≠ jvmref ∧ m0 ≠ n0 ∧ ¬ # vals0 ≤ m0 ∧ ¬ # vals0 ≤ n0 |
vals0[m1] = refval(r), vals0[m] = refval(r), m1 < # vals0, m < # vals0, ¬ is_referencevalue(val) ∨ val .refval = jvmref ⊦ vals0 = [], r = jvmref, m1 = m, dups(vals0 .nonnullrefs), ∃ r0, m0, n0. vals0[m0] = refval(r0) ∧ vals0[n0] = refval(r0) ∧ r0 ≠ jvmref ∧ m0 ≠ n0 ∧ ¬ # vals0 ≤ m0 ∧ ¬ # vals0 ≤ n0
[[CONCRETESIMPRULES : ([CSIMPNAMEDSEQ : nat, , succ-01, ⊦ m + 1 ≤ n ↔ m < n], [CSIMPNAMEDSEQ : nat-basic2, , oz, ⊦ m + 1 ≠ 0], [CSIMPNAMEDSEQ : nat-basic2, , c, ⊦ m + n = n + m], [CSIMPNAMEDSEQ : nat-basic2, , a, ⊦ (m + n0) + n1 = m + n0 + n1], [CSIMPNAMEDSEQ : nat-basic2, , eq-01, ⊦ m + n = m + n0 ↔ n = n0])]]