diff options
author | Jason Gross <jgross@mit.edu> | 2016-11-07 15:04:16 -0500 |
---|---|---|
committer | Jason Gross <jgross@mit.edu> | 2016-11-07 15:04:16 -0500 |
commit | 4b1a1581fe6d60673cffd6f9489284dc01f86ec9 (patch) | |
tree | a378a8a8e7b84716b690647a9fc2dbd178d19554 /src/Reflection/Syntax.v | |
parent | 2dd39060683127c0f89f35fe8de6ed09b526ce93 (diff) |
Add flat_interp_untuple'_tuple
Diffstat (limited to 'src/Reflection/Syntax.v')
-rw-r--r-- | src/Reflection/Syntax.v | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/Reflection/Syntax.v b/src/Reflection/Syntax.v index 9282e703f..4b1d9d238 100644 --- a/src/Reflection/Syntax.v +++ b/src/Reflection/Syntax.v @@ -96,6 +96,12 @@ Section language. | O => fun x => x | S n' => fun xy => (@flat_interp_untuple' _ n' (fst xy), snd xy) end. + Lemma flat_interp_untuple'_tuple' {T n v} + : @flat_interp_untuple' T n (flat_interp_tuple' v) = v. + Proof. induction n; [ reflexivity | simpl; rewrite IHn; destruct v; reflexivity ]. Qed. + Lemma flat_interp_untuple'_tuple {T n v} + : flat_interp_untuple' (@flat_interp_tuple T (S n) v) = v. + Proof. apply flat_interp_untuple'_tuple'. Qed. Section rel. Context (R : forall t, interp_base_type t -> interp_base_type t -> Prop). Fixpoint interp_flat_type_rel_pointwise (t : flat_type) |