| ⊦ P((mk(rs, f) ++ r)[r, f(r)] -- r) ∧ r ∈ (mk(rs, f) ++ r)[r, f(r)] ∧ (mk(rs, f) ++ r)[r, f(r)][r] = f(r) ↔ ((r => f(r) * P))(mk(rs ++ r, f)[r, f(r)]), r = null, r ∈ rs |
⊦ P(mk(rs, f)) ↔ ((r => f(r) * P))(mk(rs ++ r, f)[r, f(r)]), r = null, r ∈ rs
Used simplifier rules: in-mk: ⊦ r ∈ mk(rs, f) ↔ r ∈ rs;% ⊦ H[r0, o][r] = (r = r0 ∧ r0 ∈ H ⊃ o;H[r]); (s)% ⊦ r ∈ H[r0, o] ↔ r ∈ H; (s)%¬ r ∈ H, r ≠ null ⊦ (H ++ r) -- r = H; (s)%r ∈ H ⊦ H[r, o] -- r = H -- r; (s)%r0 ≠ null, ¬ r0 ∈ H ⊦ r ∈ H ++ r0 ↔ r = r0 ∨ r ∈ H; (s)