anchor.diff:           v2w.Add (v, w)
            w
   
  -/////////////////////////////////////////////////////////////////////////
  +////////////////////////////////////////////////////////////////////////////////
   
   type Rule<'v> =
     abstract ReturnType: Ty<'v>
  
positive.code: open System.Reflection
  open System
  
  /////////////////////////////////////////////////////////////////////////
  
  module Fresh =
    let mutable private counter = 0L
  
negative.code:                       else t).GetConstructor([||]).Invoke [||] |> Some}
    }
  
  ////////////////////////////////////////////////////////////////////////////////
  
  module Engine =
    type TyEnv<'v when 'v : equality> = HashEqMap<'v, Ty<'v>>
  