Skip to content
Snippets Groups Projects
Commit 25f6a014 authored by Jonas Kastberg's avatar Jonas Kastberg
Browse files

Added identity rules for subtyping

parent 67599f5a
No related branches found
No related tags found
No related merge requests found
......@@ -106,7 +106,11 @@ Section Propers.
Global Instance lsty_app_proper : Proper (() ==> () ==> ()) (@lsty_app Σ).
Proof. apply ne_proper_2, _. Qed.
Global Instance lsty_app_assoc : Assoc () (@lsty_app Σ).
Proof. intros s1 s2 s3. rewrite /lsty_app. by rewrite iProto_app_assoc. Qed.
Proof. intros S1 S2 S3. rewrite /lsty_app. by rewrite iProto_app_assoc. Qed.
Global Instance lsty_app_end_l : LeftId () lsty_end (@lsty_app Σ).
Proof. intros [S]. rewrite /lsty_app. by rewrite left_id. Qed.
Global Instance lsty_app_end_r : RightId () lsty_end (@lsty_app Σ).
Proof. intros [S]. rewrite /lsty_app. by rewrite right_id. Qed.
End Propers.
Notation "'END'" := lsty_end : lsty_scope.
......
......@@ -300,6 +300,22 @@ Section subtype.
((S1 <++> S2) <++> S3) <s: (S1 <++> (S2 <++> S3)).
Proof. rewrite lsty_app_assoc. iApply lsty_le_refl. Qed.
Lemma lsty_le_app_id_l_l S :
(END <++> S) <s: S.
Proof. rewrite left_id. iApply lsty_le_refl. Qed.
Lemma lsty_le_app_id_l_r S :
(S <++> END) <s: S.
Proof. rewrite right_id. iApply lsty_le_refl. Qed.
Lemma lsty_le_app_id_r_l S :
S <s: (END <++> S).
Proof. rewrite left_id. iApply lsty_le_refl. Qed.
Lemma lsty_le_app_id_r_r S :
S <s: (S <++> END).
Proof. rewrite right_id. iApply lsty_le_refl. Qed.
Lemma lsty_le_dual S1 S2 : S2 <s: S1 -∗ lsty_dual S1 <s: lsty_dual S2.
Proof. iIntros "#H !>". by iApply iProto_le_dual. Qed.
......
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