anchor.diff:          _ -> true
       end.
   
  -%% is_valid_map_key(K,St) -> true | false
  +%% is_valid_map_key(K) -> true | false
   %%   variables are allowed for patterns only at the top of the tree
   
   is_valid_map_key({var,_,_}) -> true;
  
positive.code:     UVt = map(fun ({V,{State,_,Ls}}) -> {V,{State,used,Ls}} end, U),
      {vtmerge(Vt, UVt), St1}.
  
  %% vtupdate(UpdVarTable, VarTable) -> VarTable.
  %%  Add the variables in the updated vartable to VarTable. The variables
  %%  will be updated with their property in UpdVarTable. The state of
  
negative.code: expr({match,_Line,P,E}, Vt, St0) ->
      {Evt,St1} = expr(E, Vt, St0),
      {Pvt,Bvt,St2} = pattern(P, vtupdate(Evt, Vt), St1),
      St = reject_invalid_alias_expr(P, E, Vt, St2),
      {vtupdate(Bvt, vtmerge(Evt, Pvt)),St};
  %% No comparison or boolean operators yet.
  expr({op,_Line,_Op,A}, Vt, St) ->
  