Step
*
3
6
of Lemma
member_bs_tree_insert
1. [E] : Type
2. cmp : comparison(E)
3. x : E
4. left : bs_tree(E)
5. value : E
6. ¬0 < cmp value x
7. right : bs_tree(E)
8. bs_tree_ordered(E;cmp;left)
9. bs_tree_ordered(E;cmp;right)
10. ∀x:E. (x ∈ left 
⇒ 0 < cmp x value)
11. ∀x:E. (x ∈ right 
⇒ 0 < cmp value x)
12. y : E
13. cmp value x < 0
14. (value = y ∈ E) ∨ y ∈ left ∨ y ∈ right
15. ¬((cmp x y) = 0 ∈ ℤ)
16. ∀y:E. (y ∈ bs_tree_insert(cmp;x;right) 
⇐⇒ (y = x ∈ E) ∨ (y ∈ right ∧ (¬((cmp x y) = 0 ∈ ℤ))))
17. ∀y:E. (y ∈ bs_tree_insert(cmp;x;left) 
⇐⇒ (y = x ∈ E) ∨ (y ∈ left ∧ (¬((cmp x y) = 0 ∈ ℤ))))
⊢ (value = y ∈ E) ∨ ((y = x ∈ E) ∨ (y ∈ left ∧ (¬((cmp x y) = 0 ∈ ℤ)))) ∨ y ∈ right
BY
{ (SplitOrHyps
   THEN Auto
   THEN (Eliminate ⌜value⌝⋅ THENA Auto)
   THEN (Assert (cmp y x) = (-(cmp x y)) ∈ ℤ BY
               (RW (AddrC [2] (LemmaC `comparison-anti`)) 0  THEN Auto))
   THEN Auto) }
Latex:
Latex:
1.  [E]  :  Type
2.  cmp  :  comparison(E)
3.  x  :  E
4.  left  :  bs\_tree(E)
5.  value  :  E
6.  \mneg{}0  <  cmp  value  x
7.  right  :  bs\_tree(E)
8.  bs\_tree\_ordered(E;cmp;left)
9.  bs\_tree\_ordered(E;cmp;right)
10.  \mforall{}x:E.  (x  \mmember{}  left  {}\mRightarrow{}  0  <  cmp  x  value)
11.  \mforall{}x:E.  (x  \mmember{}  right  {}\mRightarrow{}  0  <  cmp  value  x)
12.  y  :  E
13.  cmp  value  x  <  0
14.  (value  =  y)  \mvee{}  y  \mmember{}  left  \mvee{}  y  \mmember{}  right
15.  \mneg{}((cmp  x  y)  =  0)
16.  \mforall{}y:E.  (y  \mmember{}  bs\_tree\_insert(cmp;x;right)  \mLeftarrow{}{}\mRightarrow{}  (y  =  x)  \mvee{}  (y  \mmember{}  right  \mwedge{}  (\mneg{}((cmp  x  y)  =  0))))
17.  \mforall{}y:E.  (y  \mmember{}  bs\_tree\_insert(cmp;x;left)  \mLeftarrow{}{}\mRightarrow{}  (y  =  x)  \mvee{}  (y  \mmember{}  left  \mwedge{}  (\mneg{}((cmp  x  y)  =  0))))
\mvdash{}  (value  =  y)  \mvee{}  ((y  =  x)  \mvee{}  (y  \mmember{}  left  \mwedge{}  (\mneg{}((cmp  x  y)  =  0))))  \mvee{}  y  \mmember{}  right
By
Latex:
(SplitOrHyps
  THEN  Auto
  THEN  (Eliminate  \mkleeneopen{}value\mkleeneclose{}\mcdot{}  THENA  Auto)
  THEN  (Assert  (cmp  y  x)  =  (-(cmp  x  y))  BY
                          (RW  (AddrC  [2]  (LemmaC  `comparison-anti`))  0    THEN  Auto))
  THEN  Auto)
Home
Index