package coq
Install
dune-project
Dependency
Authors
Maintainers
Sources
sha256=73466e61f229b23b4daffdd964be72bd7a110963b9d84bd4a86bb05c5dc19ef3
doc/coq-core.kernel/UGraph/index.html
Module UGraphSource
Graphs of universes.
When type_in_type, functions adding constraints do not fail and may instead ignore inconsistent constraints.
Checking functions such as check_leq always return true.
Initial universes, but keeping options such as type in type from the argument.
Check equality of instances w.r.t. a universe graph
...
Merge of constraints in a universes graph. The function merge_constraints merges a set of constraints in a given universes graph. It raises the exception UniverseInconsistency if the constraints are not satisfiable.
Picks an arbitrary set of constraints sufficient to ensure u <= v.
Adds a universe to the graph, ensuring it is >= or > Set.
Add a universe without (Prop,Set) <= u
Check that the universe levels are declared. Otherwise
constraints_of_universes g returns csts and partition where csts are the non-Eq constraints and partition is the partition of the universes into equivalence classes.
choose p g u picks a universe verifying p and equal to u in g.
constraints_for ~kept g returns the constraints about the universes kept in g up to transitivity.
eg if g is a <= b <= c then constraints_for ~kept:{a, c} g is a <= c.
Known universes
check_subtype univ ctx1 ctx2 checks whether ctx2 is an instance of ctx1.
Dumping
type node = | Alias of Univ.Level.t| Node of bool Univ.Level.Map.t(*Nodes v s.t. u < v (true) or u <= v (false)
*)