package coq-core

  1. Overview
  2. Docs
The Coq Proof Assistant -- Core Binaries and Tools

Install

Dune Dependency

Authors

Maintainers

Sources

coq-8.17.1.tar.gz
sha512=9a35311acec2a806730b94ac7dceabc88837f235c52a14c026827d9b89433bd7fa9555a9fc6829aa49edfedb24c8bbaf1411ebf463b74a50aeb17cba47745b6b

doc/coq-core.pretyping/Structures/Structure/index.html

Module Structures.StructureSource

A structure S is a non recursive inductive type with a single constructor

Sourcetype projection = {
  1. proj_name : Names.Name.t;
    (*

    field name

    *)
  2. proj_true : bool;
    (*

    false for primitive records

    *)
  3. proj_canonical : bool;
    (*

    false = not to be used for CS inference

    *)
  4. proj_body : Names.Constant.t option;
    (*

    the projection function

    *)
}

A projection to a structure field

Sourcetype t = {
  1. name : Names.inductive;
  2. projections : projection list;
  3. nparams : int;
}
Sourceval register : t -> unit
Sourceval subst : Mod_subst.substitution -> t -> t
Sourceval rebuild : Environ.env -> t -> t

refreshes nparams, e.g. after section discharging

Sourceval find : Names.inductive -> t

find isp returns the Structure.t associated to the inductive path isp if it corresponds to a structure, otherwise it fails with Not_found

Sourceval find_from_projection : Names.Constant.t -> t

raise Not_found if not a structure projection

Sourceval find_projections : Names.inductive -> Names.Constant.t option list

lookup_projections isp returns the projections associated to the inductive path isp if it corresponds to a structure, otherwise it fails with Not_found

Sourceval projection_nparams : Names.Constant.t -> int

raise Not_found if not a projection

Sourceval is_projection : Names.Constant.t -> bool
OCaml

Innovation. Community. Security.