Step
*
1
3
1
2
2
of Lemma
bs_tree_delete_wf
1. E : Type
2. cmp : comparison(E)
3. x : E
4. left : bs_tree(E)
5. value : E
6. ¬0 < cmp value x
7. ¬0 < cmp x value
8. right : bs_tree(E)
9. bs_tree_ordered(E;cmp;left)
10. bs_tree_ordered(E;cmp;right)
11. ∀x:E. (x ∈ left 
⇒ 0 < cmp x value)
12. ∀x:E. (x ∈ right 
⇒ 0 < cmp value x)
13. bs_tree_ordered(E;cmp;bs_tree_delete(cmp;x;right))
14. bs_tree_ordered(E;cmp;bs_tree_delete(cmp;x;left))
⊢ bs_tree_ordered(E;cmp;if bst_null?(left)
then right
else let m,a' = bs_tree_max(left;value) 
     in bst_node(a';m;right)
fi )
BY
{ AutoSplit }
1
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. bs_tree_ordered(E;cmp;bs_tree_delete(cmp;x;right))
15. bs_tree_ordered(E;cmp;bs_tree_delete(cmp;x;left))
⊢ bs_tree_ordered(E;cmp;let m,a' = bs_tree_max(left;value) 
                        in bst_node(a';m;right))
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.  \mneg{}0  <  cmp  x  value
8.  right  :  bs\_tree(E)
9.  bs\_tree\_ordered(E;cmp;left)
10.  bs\_tree\_ordered(E;cmp;right)
11.  \mforall{}x:E.  (x  \mmember{}  left  {}\mRightarrow{}  0  <  cmp  x  value)
12.  \mforall{}x:E.  (x  \mmember{}  right  {}\mRightarrow{}  0  <  cmp  value  x)
13.  bs\_tree\_ordered(E;cmp;bs\_tree\_delete(cmp;x;right))
14.  bs\_tree\_ordered(E;cmp;bs\_tree\_delete(cmp;x;left))
\mvdash{}  bs\_tree\_ordered(E;cmp;if  bst\_null?(left)
then  right
else  let  m,a'  =  bs\_tree\_max(left;value) 
          in  bst\_node(a';m;right)
fi  )
By
Latex:
AutoSplit
Home
Index