Hello,
It looks to me like it is some kind of problem in Coq or in its base libraries.
I'm reading Mathematical Components book. There is an example on page 103:
Lemma eqnP {n m : nat} : reflect (n = m) (eqn n m).
Proof.
apply: (iffP idP).
after the apply: (iffP idP).
I have the next goal
n, m : nat
============================
?Goal -> reflect (n = m) (eqn n m)
while acording to the book I should have this one:
n : nat
m : nat
===================
m = n -> eqn m n
It looks to me like system loses the information.
2 questions:
1) Is there a way to solve the goal?
2) Is this a new behavior of system or some kind of bug?
$ coqc -v
The Coq Proof Assistant, version 8.13.2 (April 2021)
compiled on Apr 15 2021 14:21:12 with OCaml 4.08.1
You probably have some wrong settings. It is your entire file?
You are right.
when placed to dedicated file it works as expected
thank you :)
Last updated: Oct 03 2023 at 02:34 UTC