From 34918ec983f52f523ea520e0cc02e98ba62da1ca Mon Sep 17 00:00:00 2001 From: Ike Mulder <ikemulder@hotmail.com> Date: Tue, 8 Aug 2023 17:10:13 +0200 Subject: [PATCH] Fix missing ucmra_unit, ucmra_ofeO --- iris/algebra/cmra.v | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/iris/algebra/cmra.v b/iris/algebra/cmra.v index 153e111b3..1cf192616 100644 --- a/iris/algebra/cmra.v +++ b/iris/algebra/cmra.v @@ -113,7 +113,9 @@ Canonical Structure cmra_ofeO. For these structures, we instruct Coq to eagerly _expand_ all projections, except for the coercion to type (in this case, [cmra_car]), since that causes - problem with canonical structure inference. *) + problem with canonical structure inference. Additionally, we make Coq + eagerly expand the coercions that go from one structure to another, like + [cmra_ofeO] in this case. *) Global Strategy expand [cmra_ofeO cmra_equiv cmra_dist cmra_pcore cmra_op cmra_valid cmra_validN cmra_ofe_mixin cmra_mixin]. @@ -246,13 +248,16 @@ Canonical Structure ucmra_cmraR. (* As explained more thoroughly in iris#539, Coq can run into trouble when [cmra] combinators (such as [optionUR]) are stacked and combined with coercions like [ucmra_cmraR]. To partially address this, we give Coq's - type-checker some directions for unfolding, with the Strategy command. + type-checker some directions for unfolding, with the command. For these structures, we instruct Coq to eagerly _expand_ all projections, except for the coercion to type (in this case, [ucmra_car]), since that causes - problem with canonical structure inference. *) -Global Strategy expand [ucmra_cmraR ucmra_equiv ucmra_dist ucmra_pcore ucmra_op - ucmra_valid ucmra_validN ucmra_ofe_mixin ucmra_cmra_mixin]. + problem with canonical structure inference. Additionally, we make Coq + eagerly expand the coercions that go from one structure to another, like + [ucmra_cmraR] and [ucmra_ofeO] in this case. *) *) +Global Strategy expand [ucmra_cmraR ucmra_ofeO ucmra_equiv ucmra_dist ucmra_pcore + ucmra_op ucmra_valid ucmra_validN ucmra_unit + ucmra_ofe_mixin ucmra_cmra_mixin]. (** Lifting properties from the mixin *) Section ucmra_mixin. -- GitLab