anchor.diff:      else Zset.union s1 s2
   
   let emptyFreeTyvars =  
  -    { FreeTycons = emptyFreeTycons; 
  +    { FreeTycons = emptyFreeTycons
         /// The summary of values used as trait solutions
         FreeTraitSolutions = emptyFreeLocals
         FreeTypars = emptyFreeTypars}
  
positive.code: 
  let reduceIteratedFunTy g ty args = 
      List.fold (fun ty _ -> 
          if not (isFunTy g ty) then failwith "reduceIteratedFunTy";
          snd (destFunTy g ty)) ty args
  
  let applyTyArgs g functy tyargs = 
  
negative.code: let unionFreeTyvars fvs1 fvs2 = 
      if fvs1 === emptyFreeTyvars then fvs2 else 
      if fvs2 === emptyFreeTyvars then fvs1 else
      { FreeTycons           = unionFreeTycons fvs1.FreeTycons fvs2.FreeTycons
        FreeTraitSolutions   = unionFreeLocals fvs1.FreeTraitSolutions fvs2.FreeTraitSolutions
        FreeTypars           = unionFreeTypars fvs1.FreeTypars fvs2.FreeTypars }
  
  type FreeVarOptions = 
  