diff options
author | Jason Gross <jgross@mit.edu> | 2017-11-10 13:25:27 -0500 |
---|---|---|
committer | Jason Gross <jgross@mit.edu> | 2017-11-10 13:29:07 -0500 |
commit | b3ec50d612f9a590691474d99395473a7a0088a0 (patch) | |
tree | d22b541be035656206179883866a63a9c8354653 /src | |
parent | eadff505b3e5a8cdc185fe424374ccba306103fd (diff) |
Add unfold_flat_interp_tuple
Diffstat (limited to 'src')
-rw-r--r-- | src/Compilers/Tuple.v | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/Compilers/Tuple.v b/src/Compilers/Tuple.v index 2e38d9d7f..c7e062124 100644 --- a/src/Compilers/Tuple.v +++ b/src/Compilers/Tuple.v @@ -66,3 +66,19 @@ Global Arguments flat_interp_tuple {_ _ _ _} _. Global Arguments flat_interp_untuple' {_ _ _ _} _. Global Arguments flat_interp_untuple {_ _ _ _} _. Global Arguments tuple_map {_ _ _ _ _ n} _ _. + +Ltac unfold_flat_interp_tuple _ := + let handle n := + ltac:(let n' := (eval cbv in n) in + progress change n with n') in + repeat match goal with + | [ |- context[@flat_interp_tuple _ _ _ ?n] ] + => handle n + | [ |- context[@flat_interp_tuple' _ _ _ ?n] ] + => handle n + | [ |- context[@flat_interp_untuple _ _ _ ?n] ] + => handle n + | [ |- context[@flat_interp_untuple' _ _ _ ?n] ] + => handle n + end; + cbv [flat_interp_tuple flat_interp_tuple' flat_interp_untuple flat_interp_untuple']. |