anchor.diff:      let rec internal (*private*) find_del_right p (tree : CharDiet) : char * CharDiet =
           // Preconditions
           assert (dietInvariant tree)
  +        assert (fst <| intervalsDisjoint tree Set.empty)
   
           match tree with
           | Empty ->
  
positive.code:             if p > succ y then
                  let p', right' = find_del_left p right
                  assert (dietInvariant right')
                  p', tap (fun x -> assert (dietInvariant x)) <| CharDiet.Join (comparer, left, right', (x, y))
              elif p < x then
                  find_del_left p left
              else
  
negative.code: //                | Some i ->
  //                    CharDiet.Join comparer i result stream''
  
              Debug.Assert (
                  dietInvariant result,
                  "The DIET invariant does not hold for the result.")
              Debug.Assert (
                  fst <| intervalsDisjoint result Set.empty,
                  "The intervals in the DIET are not disjoint.")
  
              #if DEBUG
              let resultCount = count result
  