diff options
author | Jason Gross <jgross@mit.edu> | 2018-10-23 15:51:11 -0400 |
---|---|---|
committer | Jason Gross <jgross@mit.edu> | 2018-10-23 15:51:11 -0400 |
commit | 2cb0107e5f587c79e11b3e0e27d9a5dca799f24c (patch) | |
tree | dc8f475ce6577592625253ba2b42382a8be6a88b /src | |
parent | cb46d6beb28608ee9329670c55883a94428d4522 (diff) |
Add related1_app_type_of_list_under_type_of_list_relation1_cps
Diffstat (limited to 'src')
-rw-r--r-- | src/Experiments/NewPipeline/RewriterWf1.v | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/Experiments/NewPipeline/RewriterWf1.v b/src/Experiments/NewPipeline/RewriterWf1.v index 8ae987eec..a24510fb7 100644 --- a/src/Experiments/NewPipeline/RewriterWf1.v +++ b/src/Experiments/NewPipeline/RewriterWf1.v @@ -701,6 +701,16 @@ Module Compilers. Lemma eval_decision_tree_cont_None {T ctx d} : @eval_decision_tree var T ctx d (fun _ _ => None) = None. Proof using Type. apply eval_decision_tree_cont_None_ext; reflexivity. Qed. + + Lemma related1_app_type_of_list_under_type_of_list_relation1_cps + {A1 ls F f} + : @under_type_of_list_relation1_cps A1 ls F f + <-> (forall args, F (app_type_of_list f args)). + Proof. + cbv [under_type_of_list_relation1_cps app_type_of_list]. + induction ls as [|l ls IHls]; cbn in *; [ tauto | ]. + setoid_rewrite IHls; split; intro H; intros; first [ apply H | apply (H (_, _)) ]. + Qed. End with_var1. Section with_var2. |