Step
*
3
1
1
1
4
2
of Lemma
member-bs_tree_delete
1. E : Type
2. cmp : comparison(E)
3. x : E
4. left : bs_tree(E)
5. ¬↑bst_null?(left)
6. value : E
7. ¬0 < cmp value x
8. ¬0 < cmp x value
9. right : bs_tree(E)
10. bs_tree_ordered(E;cmp;left)
11. bs_tree_ordered(E;cmp;right)
12. ∀x:E. (x ∈ left 
⇒ 0 < cmp x value)
13. ∀x:E. (x ∈ right 
⇒ 0 < cmp value x)
14. z : E
15. bs_tree_max(left;value) = bs_tree_max(left;value) ∈ (E × ordered_bs_tree(E;cmp))
16. ∀z:E. (z ∈ bs_tree_delete(cmp;x;right) 
⇐⇒ z ∈ right ∧ (¬((cmp z x) = 0 ∈ ℤ)))
17. ∀z:E. (z ∈ bs_tree_delete(cmp;x;left) 
⇐⇒ z ∈ left ∧ (¬((cmp z x) = 0 ∈ ℤ)))
18. v1 : E
19. v2 : bs_tree(E)
20. ∀x:E. (x ∈ left 
⇒ (x ∈ v2 ∨ (x = v1 ∈ E)))
21. (¬False) 
⇒ v1 ∈ left
22. ∀x:E. (x ∈ v2 
⇒ (x ∈ left ∧ 0 < cmp x v1))
23. (v1 = z ∈ E) ∨ z ∈ v2 ∨ z ∈ right
⊢ ¬((cmp z x) = 0 ∈ ℤ)
BY
{ ((D 0 THENA Auto) THEN DVar `cmp' THEN ExRepD THEN (Assert (cmp z value) = (cmp x value) ∈ ℤ BY Auto)) }
1
1. E : Type
2. cmp : E ⟶ E ⟶ ℤ
3. ∀x,y:E.  ((cmp x y) = (-(cmp y x)) ∈ ℤ)
4. ∀x,y:E.  (((cmp x y) = 0 ∈ ℤ) 
⇒ (∀z:E. ((cmp x z) = (cmp y z) ∈ ℤ)))
5. ∀x,y,z:E.  ((0 ≤ (cmp x y)) 
⇒ (0 ≤ (cmp y z)) 
⇒ (0 ≤ (cmp x z)))
6. x : E
7. left : bs_tree(E)
8. ¬↑bst_null?(left)
9. value : E
10. ¬0 < cmp value x
11. ¬0 < cmp x value
12. right : bs_tree(E)
13. bs_tree_ordered(E;cmp;left)
14. bs_tree_ordered(E;cmp;right)
15. ∀x:E. (x ∈ left 
⇒ 0 < cmp x value)
16. ∀x:E. (x ∈ right 
⇒ 0 < cmp value x)
17. z : E
18. bs_tree_max(left;value) = bs_tree_max(left;value) ∈ (E × ordered_bs_tree(E;cmp))
19. ∀z:E. (z ∈ bs_tree_delete(cmp;x;right) 
⇐⇒ z ∈ right ∧ (¬((cmp z x) = 0 ∈ ℤ)))
20. ∀z:E. (z ∈ bs_tree_delete(cmp;x;left) 
⇐⇒ z ∈ left ∧ (¬((cmp z x) = 0 ∈ ℤ)))
21. v1 : E
22. v2 : bs_tree(E)
23. ∀x:E. (x ∈ left 
⇒ (x ∈ v2 ∨ (x = v1 ∈ E)))
24. (¬False) 
⇒ v1 ∈ left
25. ∀x:E. (x ∈ v2 
⇒ (x ∈ left ∧ 0 < cmp x v1))
26. (v1 = z ∈ E) ∨ z ∈ v2 ∨ z ∈ right
27. (cmp z x) = 0 ∈ ℤ
28. (cmp z value) = (cmp x value) ∈ ℤ
⊢ False
Latex:
Latex:
1.  E  :  Type
2.  cmp  :  comparison(E)
3.  x  :  E
4.  left  :  bs\_tree(E)
5.  \mneg{}\muparrow{}bst\_null?(left)
6.  value  :  E
7.  \mneg{}0  <  cmp  value  x
8.  \mneg{}0  <  cmp  x  value
9.  right  :  bs\_tree(E)
10.  bs\_tree\_ordered(E;cmp;left)
11.  bs\_tree\_ordered(E;cmp;right)
12.  \mforall{}x:E.  (x  \mmember{}  left  {}\mRightarrow{}  0  <  cmp  x  value)
13.  \mforall{}x:E.  (x  \mmember{}  right  {}\mRightarrow{}  0  <  cmp  value  x)
14.  z  :  E
15.  bs\_tree\_max(left;value)  =  bs\_tree\_max(left;value)
16.  \mforall{}z:E.  (z  \mmember{}  bs\_tree\_delete(cmp;x;right)  \mLeftarrow{}{}\mRightarrow{}  z  \mmember{}  right  \mwedge{}  (\mneg{}((cmp  z  x)  =  0)))
17.  \mforall{}z:E.  (z  \mmember{}  bs\_tree\_delete(cmp;x;left)  \mLeftarrow{}{}\mRightarrow{}  z  \mmember{}  left  \mwedge{}  (\mneg{}((cmp  z  x)  =  0)))
18.  v1  :  E
19.  v2  :  bs\_tree(E)
20.  \mforall{}x:E.  (x  \mmember{}  left  {}\mRightarrow{}  (x  \mmember{}  v2  \mvee{}  (x  =  v1)))
21.  (\mneg{}False)  {}\mRightarrow{}  v1  \mmember{}  left
22.  \mforall{}x:E.  (x  \mmember{}  v2  {}\mRightarrow{}  (x  \mmember{}  left  \mwedge{}  0  <  cmp  x  v1))
23.  (v1  =  z)  \mvee{}  z  \mmember{}  v2  \mvee{}  z  \mmember{}  right
\mvdash{}  \mneg{}((cmp  z  x)  =  0)
By
Latex:
((D  0  THENA  Auto)  THEN  DVar  `cmp'  THEN  ExRepD  THEN  (Assert  (cmp  z  value)  =  (cmp  x  value)  BY  Auto))
Home
Index