delete

!a !.(Set a) -> Set a | < a

delete x Tip = Tip delete x (Bin _ y l r)

| x < y     = balanceR y (delete x l) r
| x > y     = balanceL y l (delete x r)
| otherwise = glue l r