Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New lemma data_at_conflict_glb #732

Merged
merged 1 commit into from
Oct 17, 2023
Merged

New lemma data_at_conflict_glb #732

merged 1 commit into from
Oct 17, 2023

Conversation

andrew-appel
Copy link
Collaborator

@andrew-appel andrew-appel merged commit a095fd1 into master Oct 17, 2023
26 checks passed
@andrew-appel andrew-appel deleted the dacg branch October 17, 2023 15:23
@roconnor-blockstream
Copy link
Contributor

FWIW I wrote also wrote the following lemmas today:

Lemma nonempty_writable0_glb (shw shr : share) : writable0_share shw -> readable_share shr ->
  nonempty_share (Share.glb shw shr).
Proof.
intros Hshw Hshr.
apply leq_join_sub in Hshw.
apply Share.ord_spec2 in Hshw.
rewrite Share.glb_commute, <- Hshw, Share.distrib1, Share.glb_commute, Share.lub_commute.
apply readable_nonidentity.
apply readable_share_lub.
apply readable_glb.
assumption.
Qed.

Lemma nonempty_writable_glb (shw shr : share) : writable_share shw -> readable_share shr ->
  nonempty_share (Share.glb shw shr).
Proof.
intros Hshw Hshr.
apply nonempty_writable0_glb; try assumption.
apply writable_writable0; assumption.
Qed.

Though I'm sure someone with more familiarity can write more concise proofs of these.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants