object
  method virtual basename : string -> string
  method datatype : Wp.Lang.ADT.t -> string
  method datatypename : string -> string
  method field : Wp.Lang.Field.t -> string
  method fieldname : string -> string
  method funname : string -> string
  method virtual infoprover : 'Wp.Lang.infoprover -> 'a
  method link : Wp.Lang.Fun.t -> Qed.Engine.link
end