From bb28e172ce3a3af92cfb7665af866a8c7e757e7d Mon Sep 17 00:00:00 2001 From: Robbert Krebbers <mail@robbertkrebbers.nl> Date: Thu, 14 Jan 2016 14:00:22 +0100 Subject: [PATCH] Block simpl for uPred_holds. --- iris/model.v | 5 +++-- modures/logic.v | 6 ++++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/iris/model.v b/iris/model.v index 298efd34c..f01f00fc5 100644 --- a/iris/model.v +++ b/iris/model.v @@ -216,8 +216,9 @@ Definition map {Σ : iParam} {A1 A2 B1 B2 : cofeT} Definition result Σ : solution (F Σ). Proof. apply (solver.result _ (@map Σ)). - * by intros A B r n ?; rewrite /= res_map_id. - * by intros A1 A2 A3 B1 B2 B3 f g f' g' P r n ?; rewrite /= res_map_compose. + * by intros A B r n ?; rewrite /uPred_holds /= res_map_id. + * by intros A1 A2 A3 B1 B2 B3 f g f' g' P r n ?; + rewrite /= /uPred_holds /= res_map_compose. * by intros A1 A2 B1 B2 n f f' [??] r; apply upredC_map_ne, resRA_map_contractive. Qed. diff --git a/modures/logic.v b/modures/logic.v index 1dc39fd5b..95dff460a 100644 --- a/modures/logic.v +++ b/modures/logic.v @@ -10,7 +10,7 @@ Record uPred (M : cmraT) : Type := IProp { uPred_weaken x1 x2 n1 n2 : uPred_holds n1 x1 → x1 ≼ x2 → n2 ≤ n1 → ✓{n2} x2 → uPred_holds n2 x2 }. -Arguments uPred_holds {_} _ _ _. +Arguments uPred_holds {_} _ _ _ : simpl never. Hint Resolve uPred_0. Add Printing Constructor uPred. Instance: Params (@uPred_holds) 3. @@ -72,7 +72,8 @@ Lemma upredC_map_ne {M1 M2 : cmraT} (f g : M2 -n> M1) `{!CMRAMonotone f, !CMRAMonotone g} n : f ={n}= g → uPredC_map f ={n}= uPredC_map g. Proof. - by intros Hfg P y n' ??; rewrite /= (dist_le _ _ _ _(Hfg y)); last lia. + by intros Hfg P y n' ??; + rewrite /uPred_holds /= (dist_le _ _ _ _(Hfg y)); last lia. Qed. (** logical entailement *) @@ -227,6 +228,7 @@ Implicit Types P Q : uPred M. Implicit Types Ps Qs : list (uPred M). Implicit Types A : Type. Notation "P ⊑ Q" := (@uPred_entails M P%I Q%I). (* Force implicit argument M *) +Arguments uPred_holds {_} !_ _ _ /. Global Instance: PreOrder (@uPred_entails M). Proof. split. by intros P x i. by intros P Q Q' HP HQ x i ??; apply HQ, HP. Qed. -- GitLab