| vals0[m] = refval(r), m < # vals0 ⊦ r = jvmref, vals0 = [], r ≠ jvmref ∧ (∃ m. vals0[m] = refval(r) ∧ m < # vals0), dups(vals0 .nonnullrefs), ∃ r1, m0, n0. vals0[m0] = refval(r1) ∧ vals0[n0] = refval(r1) ∧ r1 ≠ jvmref ∧ m0 ≠ n0 ∧ ¬ # vals0 ≤ m0 ∧ ¬ # vals0 ≤ n0 |
vals0[m] = refval(r), m < # vals0 ⊦ r = jvmref, vals0 = [], dups(vals0 .nonnullrefs), ∃ r1, m0, n0. vals0[m0] = refval(r1) ∧ vals0[n0] = refval(r1) ∧ r1 ≠ jvmref ∧ m0 ≠ n0 ∧ ¬ # vals0 ≤ m0 ∧ ¬ # vals0 ≤ n0, ∃ m0. vals0[m0] = refval(r) ∧ ¬ # vals0 ≤ m0
[[CONCRETESIMPRULES : ([CSIMPNAMEDSEQ : nat, , lels, ⊦ ¬ m < n ↔ n ≤ m])]]