anchor.diff:  verified_type(#t_fun{arity=Arity}=T) when Arity =:= any; is_integer(Arity) -> T;
   verified_type(#t_integer{elements=any}=T) -> T;
   verified_type(#t_integer{elements={Min,Max}}=T)
  -  when is_integer(Min), is_integer(Max) -> T;
  +  when is_integer(Min), is_integer(Max), Min =< Max -> T;
   verified_type(list=T) -> T;
   verified_type(map=T) -> T;
   verified_type(nil=T) -> T;
  
positive.code: meet(#t_tuple{}=T1, #t_tuple{}=T2) ->
      meet_tuples(T1, T2);
  meet({binary,U1}, {binary,U2}) ->
      {binary,max(U1, U2)};
  meet(any, T) ->
      verified_type(T);
  meet(T, any) ->
  
negative.code:     T;
  meet(#t_integer{elements=any}, #t_integer{elements={_,_}}=T) ->
      T;
  meet(#t_integer{elements={MinA,MaxA}}, #t_integer{elements={MinB,MaxB}})
    when MinA >= MinB, MaxA =< MaxB;
         MinB >= MinA, MaxB =< MaxA ->
      #t_integer{elements={max(MinA, MinB),min(MaxA, MaxB)}};
  meet(#t_integer{}=T, number) -> T;
  meet(float=T, number) -> T;
  meet(number, #t_integer{}=T) -> T;
  