| ⊦ precise(r.=>_) |
¬ precise(r.=>_) ⊦
| ¬ precise(r.=>_) ⊦ |
¬ precise(_∃(λ o. r => o)) ⊦
Used simplifier rules: mapex: ⊦ r.=>_ = _∃(λ o. r => o);
| ¬ precise(_∃(λ o. r => o)) ⊦ |
⊦ precise(hP) ↔ (∀ h, h0, h1. h0 ⊆ h ∧ h1 ⊆ h ∧ hP(h0) ∧ hP(h1) → h0 = h1)
∃ h, h0, h1. ¬(h0 ⊆ h ∧ h1 ⊆ h ∧ (_∃(λ o. r => o))(h0) ∧ (_∃(λ o. r => o))(h1) → h0 = h1) ⊦
Used terms: _∃(λ o. r => o)
| ⊦ precise(hP) ↔ (∀ h, h0, h1. h0 ⊆ h ∧ h1 ⊆ h ∧ hP(h0) ∧ hP(h1) → h0 = h1) |
| ∃ h, h0, h1. ¬(h0 ⊆ h ∧ h1 ⊆ h ∧ (_∃(λ o. r => o))(h0) ∧ (_∃(λ o. r => o))(h1) → h0 = h1) ⊦ |
h0 ≠ h1, h0 ⊆ h, h1 ⊆ h, (r => o)(h0), (r => o0)(h1) ⊦
Used simplifier rules: ⊦ (_∃ bP)(h) ↔ (∃ b. bP(b)(h)); (s)
| h0 ≠ h1, h0 ⊆ h, h1 ⊆ h, (r => o)(h0), (r => o0)(h1) ⊦ |
⊦ (r => o)(h) ↔ h = (∅ ++ r)(r := o) ∧ r ≠ null
h1 = (∅ ++ r)(r := o0), h0 ≠ h1, r ≠ null, h0 ⊆ h, h1 ⊆ h, (r => o)(h0) ⊦
Used terms: r, o0, h1
| ⊦ (r => o)(h) ↔ h = (∅ ++ r)(r := o) ∧ r ≠ null |
| h1 = (∅ ++ r)(r := o0), h0 ≠ h1, r ≠ null, h0 ⊆ h, h1 ⊆ h, (r => o)(h0) ⊦ |
h0 ≠ (∅ ++ r)(r := o0), r ≠ null, h0 ⊆ h, (r => o)(h0), (∅ ++ r)(r := o0) ⊆ h ⊦
| h0 ≠ (∅ ++ r)(r := o0), r ≠ null, h0 ⊆ h, (r => o)(h0), (∅ ++ r)(r := o0) ⊆ h ⊦ |
⊦ (r => o)(h) ↔ h = (∅ ++ r)(r := o) ∧ r ≠ null
h0 = (∅ ++ r)(r := o), h0 ≠ (∅ ++ r)(r := o0), r ≠ null, h0 ⊆ h, (∅ ++ r)(r := o0) ⊆ h ⊦
Used terms: r, o, h0
| ⊦ (r => o)(h) ↔ h = (∅ ++ r)(r := o) ∧ r ≠ null |
| h0 = (∅ ++ r)(r := o), h0 ≠ (∅ ++ r)(r := o0), r ≠ null, h0 ⊆ h, (∅ ++ r)(r := o0) ⊆ h ⊦ |
r ≠ null, (∅ ++ r)(r := o) ≠ (∅ ++ r)(r := o0), (∅ ++ r)(r := o0) ⊆ h, (∅ ++ r)(r := o) ⊆ h ⊦
| r ≠ null, (∅ ++ r)(r := o) ≠ (∅ ++ r)(r := o0), (∅ ++ r)(r := o0) ⊆ h, (∅ ++ r)(r := o) ⊆ h ⊦ |
⊦ h0 = h1 ↔ (∀ r. (r ∈ h0 ↔ r ∈ h1) ∧ (r ∈ h0 → h0(r) = h1(r)))
r ≠ null, (∅ ++ r)(r := o) ⊆ h, (∅ ++ r)(r := o0) ⊆ h, ∃ r0. ¬((r0 ∈ (∅ ++ r)(r := o) ↔ r0 ∈ (∅ ++ r)(r := o0)) ∧ (r0 ∈ (∅ ++ r)(r := o) → (∅ ++ r)(r := o)(r0) = (∅ ++ r)(r := o0)(r0))) ⊦
Used terms: (∅ ++ r)(r := o), (∅ ++ r)(r := o0)
| ⊦ h0 = h1 ↔ (∀ r. (r ∈ h0 ↔ r ∈ h1) ∧ (r ∈ h0 → h0(r) = h1(r))) |
| r ≠ null, (∅ ++ r)(r := o) ⊆ h, (∅ ++ r)(r := o0) ⊆ h, ∃ r0. ¬((r0 ∈ (∅ ++ r)(r := o) ↔ r0 ∈ (∅ ++ r)(r := o0)) ∧ (r0 ∈ (∅ ++ r)(r := o) → (∅ ++ r)(r := o)(r0) = (∅ ++ r)(r := o0)(r0))) ⊦ |
o ≠ o0, r ≠ null, (∅ ++ r)(r := o) ⊆ h, (∅ ++ r)(r := o0) ⊆ h ⊦
Used simplifier rules: r0 ≠ null, ¬ r0 ∈ h ⊦ r ∈ h ++ r0 ↔ r = r0 ∨ r ∈ h; (s) ⊦ ¬ r ∈ ∅; (s) ⊦ h(r0 := o)(r) = (r = r0 ∧ r0 ∈ h ⊃ o;h(r)); (s) ⊦ r ∈ h(r0 := o) ↔ r ∈ h; (s)
| o ≠ o0, r ≠ null, (∅ ++ r)(r := o) ⊆ h, (∅ ++ r)(r := o0) ⊆ h ⊦ |
⊦ h0 ⊆ h1 ↔ (∀ r. (r ∈ h0 → r ∈ h1) ∧ (r ∈ h0 → h0(r) = h1(r)))
o ≠ o0, r ≠ null, (∅ ++ r)(r := o) ⊆ h, ∀ r0. (r0 ∈ (∅ ++ r)(r := o0) → r0 ∈ h) ∧ (r0 ∈ (∅ ++ r)(r := o0) → (∅ ++ r)(r := o0)(r0) = h(r0)) ⊦
Used terms: (∅ ++ r)(r := o0), h
| ⊦ h0 ⊆ h1 ↔ (∀ r. (r ∈ h0 → r ∈ h1) ∧ (r ∈ h0 → h0(r) = h1(r))) |
| o ≠ o0, r ≠ null, (∅ ++ r)(r := o) ⊆ h, ∀ r0. (r0 ∈ (∅ ++ r)(r := o0) → r0 ∈ h) ∧ (r0 ∈ (∅ ++ r)(r := o0) → (∅ ++ r)(r := o0)(r0) = h(r0)) ⊦ |
o ≠ o0, r ≠ null, (∅ ++ r)(r := o) ⊆ h, ∀ r0. (r0 = r → r ∈ h) ∧ (r0 = r → o0 = h(r)) ⊦
Used simplifier rules: r0 ≠ null, ¬ r0 ∈ h ⊦ r ∈ h ++ r0 ↔ r = r0 ∨ r ∈ h; (s) ⊦ ¬ r ∈ ∅; (s) ⊦ h(r0 := o)(r) = (r = r0 ∧ r0 ∈ h ⊃ o;h(r)); (s) ⊦ r ∈ h(r0 := o) ↔ r ∈ h; (s)
| o ≠ o0, r ≠ null, (∅ ++ r)(r := o) ⊆ h, ∀ r0. (r0 = r → r ∈ h) ∧ (r0 = r → o0 = h(r)) ⊦ |
⊦ h0 ⊆ h1 ↔ (∀ r. (r ∈ h0 → r ∈ h1) ∧ (r ∈ h0 → h0(r) = h1(r)))
o ≠ o0, r ≠ null, ∀ r0. (r0 = r → r ∈ h) ∧ (r0 = r → o0 = h(r)), ∀ r0. (r0 ∈ (∅ ++ r)(r := o) → r0 ∈ h) ∧ (r0 ∈ (∅ ++ r)(r := o) → (∅ ++ r)(r := o)(r0) = h(r0)) ⊦
Used terms: (∅ ++ r)(r := o), h
| ⊦ h0 ⊆ h1 ↔ (∀ r. (r ∈ h0 → r ∈ h1) ∧ (r ∈ h0 → h0(r) = h1(r))) |
| o ≠ o0, r ≠ null, ∀ r0. (r0 = r → r ∈ h) ∧ (r0 = r → o0 = h(r)), ∀ r0. (r0 ∈ (∅ ++ r)(r := o) → r0 ∈ h) ∧ (r0 ∈ (∅ ++ r)(r := o) → (∅ ++ r)(r := o)(r0) = h(r0)) ⊦ |
o ≠ o0, r ≠ null, ∀ r0. (r0 = r → r ∈ h) ∧ (r0 = r → o0 = h(r)), ∀ r0. (r0 = r → r ∈ h) ∧ (r0 = r → o = h(r)) ⊦
Used simplifier rules: r0 ≠ null, ¬ r0 ∈ h ⊦ r ∈ h ++ r0 ↔ r = r0 ∨ r ∈ h; (s) ⊦ ¬ r ∈ ∅; (s) ⊦ h(r0 := o)(r) = (r = r0 ∧ r0 ∈ h ⊃ o;h(r)); (s) ⊦ r ∈ h(r0 := o) ↔ r ∈ h; (s)
| o ≠ o0, r ≠ null, ∀ r0. (r0 = r → r ∈ h) ∧ (r0 = r → o0 = h(r)), ∀ r0. (r0 = r → r ∈ h) ∧ (r0 = r → o = h(r)) ⊦ |
Used simplifier rules: ⊦ r ∈ h → r ≠ null; (s) Used terms: r
The following image shows the proof tree of sequent calculus. The proved goal is at the bottom. You can click on the nodes to view additional rules. See here for details on colors in a proof tree.