aboutsummaryrefslogtreecommitdiff
path: root/engine/uState.mli
diff options
context:
space:
mode:
authorGaëtan Gilbert2018-11-07 15:25:59 +0100
committerGaëtan Gilbert2018-11-12 09:58:39 +0100
commit9bd403ec1b6cedf0542e193774a7af52b27c0a1b (patch)
treef486e4f160724b17d1843755ae86fc0125ff192f /engine/uState.mli
parent186d67228018a84a93de024971356249ddbde668 (diff)
Fix #8908: incorrect refresh of algebraic universes.
Diffstat (limited to 'engine/uState.mli')
-rw-r--r--engine/uState.mli8
1 files changed, 7 insertions, 1 deletions
diff --git a/engine/uState.mli b/engine/uState.mli
index 8053a7bf83..ad0cd5c1bb 100644
--- a/engine/uState.mli
+++ b/engine/uState.mli
@@ -126,9 +126,15 @@ val add_global_univ : t -> Univ.Level.t -> t
Turn the variable [l] flexible, and algebraic if [algebraic] is true
and [l] can be. That is if there are no strict upper constraints on
[l] and and it does not appear in the instance of any non-algebraic
- universe. Otherwise the variable is just made flexible. *)
+ universe. Otherwise the variable is just made flexible.
+
+ If [l] is already algebraic it will remain so even with [algebraic:false]. *)
val make_flexible_variable : t -> algebraic:bool -> Univ.Level.t -> t
+val make_nonalgebraic_variable : t -> Univ.Level.t -> t
+(** Make the level non algebraic. Undefined behaviour on
+ already-defined algebraics. *)
+
(** Turn all undefined flexible algebraic variables into simply flexible
ones. Can be used in case the variables might appear in universe instances
(typically for polymorphic program obligations). *)