anchor.diff:  %%      to a third.
   %%
   -spec intersection(id(), id(), id()) -> ok | error().
  -intersection(_Left, _Right, _Intersection) ->
  -    {error, not_implemented}.
  +intersection(Left, Right, Intersection) ->
  +    gen_server:call(?MODULE, {intersection, Left, Right, Intersection}, infinity).
   
   %% @doc Map values from one lattice into another.
   %%
  
positive.code: %%      `riak_dt' behavior.  Type is declared with the provided `Id'.
  %%
  -spec declare(id(), type()) -> {ok, id()} | error().
  declare(_Id, _Type) ->
      {error, not_implemented}.
  
  %% @doc Update a dataflow variable.
  %%
  
negative.code: %%      at the given `Id'.
  %%
  -spec update(id(), operation(), actor()) -> {ok, {value(), id()}} | error().
  update(Id, Operation, Actor) ->
      gen_server:call(?MODULE, {update, Id, Operation, Actor}, infinity).
  
  %% @doc Bind a dataflow variable to a value.
  %%
  