anchor.diff:              let result, _, _ =
                   CharDiet.TryDeleteMin stream
                   ||> inter' input
  -            assert (dietInvariant result)
  +            
  +            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
  
positive.code:             let result, _, _ =
                  CharDiet.TryDeleteMin stream
                  ||> diff' input
              assert (dietInvariant result)
  
              #if DEBUG
              let resultCount = count result
  
negative.code:             invalidArg "tree" "Cannot delete the minimum value from an empty tree."
          | Node (Empty, r, n, _) ->
              n, r
          | Node (l, r, n, _) ->
              let n', l' = AvlTree.DeleteMin l
              n', AvlTree.mkt_bal_r (n, l', r)
  
      /// Removes the maximum (greatest) value from an AvlTree,
      /// returning the value along with the updated tree.
  