Open yannl35133 opened 5 months ago
Definitional UIP is already incomplete due to non-termination, do we care about this one?
I guess Yann cares because of
The issue also arises when I try to implement non-linear rewrite rules using the same function for testing conversion.
Description of the problem
For a term
t
,Check @eq_refl _ t.
givestt = tt
butCheck @eq_refl _ t : tt = tt
fails.The root cause (for which I reverse engineered an example) is that
CClosure.conv
cannot access theqmap
to normalizeqvars
during its conversions, yet such unification qvars may appear. The issue also arises when I try to implement non-linear rewrite rules using the same function for testing conversion.Small Coq file to reproduce the bug
Version of Coq where this bug occurs
8.19.1, master (
fc1b697e47
)Last version of Coq where the bug did not occur
No response