Step * 1 3 1 2 of Lemma bs_tree_delete_wf


1. Type
2. cmp comparison(E)
3. E
4. left bs_tree(E)
5. value E
6. ¬0 < cmp value
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 value)
11. ∀x:E. (x ∈ right  0 < cmp value x)
12. bs_tree_ordered(E;cmp;bs_tree_delete(cmp;x;right))
13. bs_tree_ordered(E;cmp;bs_tree_delete(cmp;x;left))
⊢ bs_tree_ordered(E;cmp;if (0) < (cmp value x)
                           then bst_node(left;value;bs_tree_delete(cmp;x;right))
                           else 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. Type
2. cmp comparison(E)
3. E
4. left bs_tree(E)
5. value E
6. ¬0 < cmp value
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 value)
11. ∀x:E. (x ∈ right  0 < cmp value x)
12. bs_tree_ordered(E;cmp;bs_tree_delete(cmp;x;right))
13. bs_tree_ordered(E;cmp;bs_tree_delete(cmp;x;left))
14. 0 < cmp value x
⊢ bs_tree_ordered(E;cmp;bst_node(left;value;bs_tree_delete(cmp;x;right)))

2
1. Type
2. cmp comparison(E)
3. E
4. left bs_tree(E)
5. value E
6. ¬0 < cmp value x
7. ¬0 < cmp 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 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 )


Latex:


Latex:

1.  E  :  Type
2.  cmp  :  comparison(E)
3.  x  :  E
4.  left  :  bs\_tree(E)
5.  value  :  E
6.  \mneg{}0  <  cmp  x  value
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.  bs\_tree\_ordered(E;cmp;bs\_tree\_delete(cmp;x;right))
13.  bs\_tree\_ordered(E;cmp;bs\_tree\_delete(cmp;x;left))
\mvdash{}  bs\_tree\_ordered(E;cmp;if  (0)  <  (cmp  value  x)
                                                      then  bst\_node(left;value;bs\_tree\_delete(cmp;x;right))
                                                      else  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