Skip to content

Commit d215eb2

Browse files
committed
added demonstrably useful weak_until lemma
1 parent 5a52a76 commit d215eb2

1 file changed

Lines changed: 18 additions & 0 deletions

File tree

infseq.v

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -268,6 +268,23 @@ change (P (Cons x s) \/ (J (Cons x s) /\ weak_until J P (tl (Cons x s)))).
268268
destruct un; intuition.
269269
Qed.
270270

271+
Lemma weak_until_always :
272+
forall (J J' P : infseq T -> Prop) s,
273+
weak_until J P s ->
274+
always J' s ->
275+
weak_until (J' /\_ J) P s.
276+
Proof.
277+
cofix cf.
278+
intros J J' P s Hweak Halways.
279+
destruct s.
280+
inversion Hweak.
281+
- now eauto using W0.
282+
- inversion Halways.
283+
eapply W_tl.
284+
+ now unfold and_tl.
285+
+ simpl. now eauto.
286+
Qed.
287+
271288
Lemma until_weak_until :
272289
forall (J P : infseq T -> Prop) (s : infseq T),
273290
until J P s -> weak_until J P s.
@@ -842,6 +859,7 @@ Arguments always_inf_often [T P s] _.
842859
Arguments always_continuously [T P s] _.
843860

844861
Arguments weak_until_Cons [T x s J P] _.
862+
Arguments weak_until_always [T J J' P s] _ _.
845863
Arguments until_weak_until [T J P s] _.
846864
Arguments eventually_Cons [T x s P] _.
847865
Arguments eventually_trans [T P Q inv] _ _ [s] _ _.

0 commit comments

Comments
 (0)