anchor.diff:  
          and change to 
          | boundvars cterm
  -    */
  -    | VARIABLE<binder=x> csort? DOT cterm<binds=x>
  +       %LV: good point! fixing!
  +    */
  +    | cbound                  /* Bound term */
  +    ;
  +    
  +/**
  + %LV: the grammar allows ".t". not nice but simpler.  
  + */    
  +cbound
  +    : VARIABLE<binder=x> FUNCTIONAL? csort? cbound<binds=x>    
  +    | DOT cterm
       ;
   
   cliteral
  
positive.code:     ;
  
  csort
      : cconstructor csortargs?                            /* Construction sort */
      /*
      %MS: Should we maybe replace 'cvariable+' by 'VARIABLE'?
           Should a variable with 'FUNCTIONAL' annotation be possible here?
  
negative.code: 
          %MS: but ∀ x . S[x] :: x  
                   S[#X] → #X;
          would be a perfectly fine rule, no?
          %LV: yes but the grammar will still prevent #F(x.C(x))
               anyway I think removing cbound outweight the benefit of keeping it. As you said, anyhow not all constraints can be checked by the grammar     
  */
  
  cterm
  