Skip to content
Snippets Groups Projects
Commit c136a440 authored by Robbert Krebbers's avatar Robbert Krebbers
Browse files

No longer let `to_agree` require the carrier to be an OFE.

parent 6c7b99c2
No related branches found
No related tags found
No related merge requests found
......@@ -34,6 +34,9 @@ Arguments agree_car {_} _.
Arguments agree_not_nil {_} _.
Local Coercion agree_car : agree >-> list.
Definition to_agree {A} (a : A) : agree A :=
{| agree_car := [a]; agree_not_nil := eq_refl |}.
Lemma elem_of_agree {A} (x : agree A) : a, a agree_car x.
Proof. destruct x as [[|a ?] ?]; set_solver+. Qed.
Lemma agree_eq {A} (x y : agree A) : agree_car x = agree_car y x = y.
......@@ -156,9 +159,6 @@ Proof.
apply discrete_iff_0; auto.
Qed.
Program Definition to_agree (a : A) : agree A :=
{| agree_car := [a]; agree_not_nil := eq_refl |}.
Global Instance to_agree_ne : NonExpansive to_agree.
Proof.
intros n a1 a2 Hx; split=> b /=;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment