| ⊦ reachable(r, r1, H[r2, ce]) ∧ ce.nxt = null ∧ r1 ∈ H ∧ ¬ r2 ∈ H → (¬ reachable(r, r1, H) ↔ false) |
ce.nxt = null, reachable(r, r1, H[r2, ce]), r1 ∈ H, r1 ∈ H[r2, ce] ⊦ r2 ∈ H, reachable(r, r1, H)
Used simplifier rules: reach-alloc: ⊦ reachable(r, r1, H) → r1 ∈ H;