diff --git a/theories/algebra/ofe.v b/theories/algebra/ofe.v index cf0dff4984d7968f1cbd15f7499e4d2d96705ce4..2d4d87dde503b4eb8fbbe5e227854396d4e82abb 100644 --- a/theories/algebra/ofe.v +++ b/theories/algebra/ofe.v @@ -68,7 +68,7 @@ End ofe_mixin. Hint Extern 1 (_ ≡{_}≡ _) => apply equiv_dist; assumption. -(** Discrete COFEs and Timeless elements *) +(** Discrete OFEs and Timeless elements *) (* TODO: On paper, We called these "discrete elements". I think that makes more sense. *) Class Timeless `{Equiv A, Dist A} (x : A) := timeless y : x ≡{0}≡ y → x ≡ y. diff --git a/theories/base_logic/upred.v b/theories/base_logic/upred.v index cb12bf33d8323527bfe7080a2c781996b03ab117..5266c9ca12325425098982f92611bef4550ce5fa 100644 --- a/theories/base_logic/upred.v +++ b/theories/base_logic/upred.v @@ -172,5 +172,13 @@ Lemma entails_equiv_l (P Q R : uPred M) : (P ⊣⊢ Q) → (Q ⊢ R) → (P ⊢ Proof. by intros ->. Qed. Lemma entails_equiv_r (P Q R : uPred M) : (P ⊢ Q) → (Q ⊣⊢ R) → (P ⊢ R). Proof. by intros ? <-. Qed. + +Lemma entails_lim (P Q : chain (uPredC M)) : + (∀ n, P n ⊢ Q n) → compl P ⊢ compl Q. +Proof. + intros Hlim. split. intros n m Hval HP. + eapply uPred_holds_ne, Hlim, HP; eauto using conv_compl. +Qed. + End entails. End uPred.