Structuresmodule Structure : sig ... endA structure S is a non recursive inductive type with a single constructor
module Instance : sig ... endA canonical instance declares "canonical" conversion hints between the effective components of a structure and the projections of the structure
module ValuePattern : sig ... endA ValuePattern.t characterizes the form of a component of canonical instance and is used to query the data base of canonical instances
module CanonicalSolution : sig ... endThe canonical solution of a problem (proj,val) is a global constant = fun abs : abstractions_ty => body and body = RecodConstructor params canon_values and the canonical value corresponding to val is val cvalue_arguments. It is possible that val is one of the abs abstractions, eg Default_cs, and in that case cvalue_abstraction = Some i
module CSTable : sig ... endLow level access to the Canonical Structure database
module PrimitiveProjections : sig ... endSome extra info for structures which are primitive records