diff options
author | Jason Gross <jgross@mit.edu> | 2018-10-24 22:41:25 -0400 |
---|---|---|
committer | Jason Gross <jgross@mit.edu> | 2018-10-24 22:41:25 -0400 |
commit | 754043d02f6081740050448a5da43f726f75d781 (patch) | |
tree | 604c8863dd977371a65407e97d1edd9e62b1106a /src | |
parent | e76a588c1040132e0d401b26186844d2e4ada0f8 (diff) |
Add interp_reify_as_interp
Diffstat (limited to 'src')
-rw-r--r-- | src/Experiments/NewPipeline/LanguageWf.v | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/Experiments/NewPipeline/LanguageWf.v b/src/Experiments/NewPipeline/LanguageWf.v index 476612aef..963f8f511 100644 --- a/src/Experiments/NewPipeline/LanguageWf.v +++ b/src/Experiments/NewPipeline/LanguageWf.v @@ -855,6 +855,13 @@ Hint Extern 10 (Proper ?R ?x) => simple eapply (@PER_valid_r _ R); [ | | solve [ { etransitivity; [ | apply map_id ]; apply map_ext; auto. } Qed. + Lemma interp_reify_as_interp {t} v1 v2 + : v1 == v2 -> interp (@GallinaReify.reify_as_interp t v1) == v2. + Proof. + induction t as [|s IHs d IHd]; cbn [GallinaReify.reify_as_interp type.related interp]; cbv [respectful]; eauto. + intro; subst; apply interp_reify. + Qed. + Lemma Interp_Reify_as {t} v : expr.Interp (@ident.gen_interp cast_outside_of_range) (GallinaReify.base.Reify_as t v) = v. Proof. apply interp_reify. Qed. End interp. |