sig
  val add :
    EConstr.constr ->
    EConstr.constr -> EConstr.constr -> EConstr.constr -> EConstr.constr
  val empty : EConstr.constr -> EConstr.constr
  val of_list :
    EConstr.constr ->
    EConstr.constr -> (int * EConstr.constr) list -> EConstr.constr
  val to_fun :
    EConstr.constr -> EConstr.constr -> EConstr.constr -> EConstr.constr
end