Open gmalecha opened 4 years ago
Just as a note, the term
generated is the following:
(tApp (tConstruct {| inductive_mind := "Coq.Init.Logic.and"; inductive_ind := 0 |} 0 nil)
(tInd {| inductive_mind := "meta.TT"; inductive_ind := 0 |} (Level.Level "meta.234" :: nil)
:: tApp (tInd {| inductive_mind := "Coq.Init.Logic.and"; inductive_ind := 0 |} nil)
(tInd {| inductive_mind := "meta.TT"; inductive_ind := 0 |} (Level.Level "meta.235" :: nil)
:: tInd {| inductive_mind := "meta.TT"; inductive_ind := 0 |} (Level.Level "meta.236" :: nil) :: nil)
:: tConstruct {| inductive_mind := "meta.TT"; inductive_ind := 0 |} 1 (Level.Level "meta.234" :: nil)
:: tApp (tConstruct {| inductive_mind := "Coq.Init.Logic.and"; inductive_ind := 0 |} 0 nil)
(tInd {| inductive_mind := "meta.TT"; inductive_ind := 0 |} (Level.Level "meta.235" :: nil)
:: tInd {| inductive_mind := "meta.TT"; inductive_ind := 0 |} (Level.Level "meta.236" :: nil)
:: tConstruct {| inductive_mind := "meta.TT"; inductive_ind := 0 |} 1 (Level.Level "meta.235" :: nil)
:: tConstruct {| inductive_mind := "meta.TT"; inductive_ind := 0 |} 1 (Level.Level "meta.236" :: nil) :: nil) :: nil))
There are no mentions of the universes x
, y
, and z
anywhere, but I'm not sure if there should be, maybe that is done at the printing level?
Yes, x
, y
and. z
should be meta.234
etc...
Maybe you can use Pretty.print_term
to get a nicer output
I wanted to experiment with the possibility of using template-coq as a tactic language to solve a "simple" problem with universes (which was the impetus for my initial question on slack). Here's the problem:
I wrote the following:
(note that I just decided that
eq_term_dec
would befun _ _ => true
, but there is probably an implementation of it somewhere).I plugged it in as follows:
After the tactic runs (and it does), I get the following errors: