| ⊦ is_array(str, r, st) ∧ r ≠ r0 → ( path∃(str, r, r0, st) ↔ (∃ i. 0 ≤ i ∧ i < st[r -- _length] .intval ∧ is_referencevalue(st[r -- i ']) ∧ ( st[r -- i '] .refval ≠ jvmref ∧ st[st[r -- i '] .refval -- _type] .type ≤ st[r -- _type] .type .type ∧ path∃(str, st[r -- i '] .refval, r0, st) ∨ st[r -- i '] .refval = jvmref ∧ r0 = jvmref))) |