anchor.diff:  -opaque interval() :: [simple_interval()].
   -opaque invalid_interval() :: [simple_interval()].
   -type continuous_interval() :: interval().
  +-type non_empty_interval() :: interval().
   
   % @type interval() = [simple_interval()].
   % [] -> empty interval
  
positive.code: -spec is_empty(interval()) -> boolean().
  is_empty([]) -> true;
  is_empty(_) ->  false.
  
  %% @doc Checks whether the given interval is covering everything.
  -spec is_all(interval()) -> boolean().
  
negative.code:                % filter out {element, X >= ?PLUS_INFINITY} which is invalid:
                 not (is_tuple(I) andalso element(1, I) =:= element andalso element(2, I) >= ?PLUS_INFINITY)],
      normalize_internal(List1).
  
  -spec tester_create_non_empty_interval([simple_interval(),...], FallbackElem::key())
          -> non_empty_interval().
  tester_create_non_empty_interval(List, FallbackElem) ->
      I = tester_create_interval(List),
      case is_empty(I) of
          true  -> new(FallbackElem);
          false -> I
      end.
  
  -spec tester_create_continuous_interval(left_bracket(), key(), key() | ?PLUS_INFINITY, right_bracket()) -> continuous_interval().
  tester_create_continuous_interval(_LBr, Key, Key, _RBr) ->
  