New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Phrasing and formatting of the unsatisfiable constraints error message #19002
Phrasing and formatting of the unsatisfiable constraints error message #19002
Conversation
I think I prefer having the empty newline to separate the evars. |
We could have something similar to the conversion mismatch error, that is, printing the reason after the environment:
and:
?? (And incidentally adding a colon to |
I mean the newline between evars, ie I prefer
rather than
|
But then why newlines between existential variables and not also between the (universal) variables of an environment? Actually, and more generally, I wonder whether it would not be worth to always print the type and context of evars occurring in a goal. Say, that the following: Goal forall x, exists y, forall z, z + y + x = x + z.
intro; eexists; intro.
Show. gives:
(possibly with extra context information when the evar derives by unification from a hole not in the current "spine" of the term) |
That indeed sounds better. |
Because I want to quickly distinguish the failed constraints (which is harder when they're a wall of text), I don't need to quickly distinguish env variables. |
06057b5
to
1e1789a
Compare
@proux01, @SkySkimmer: I moved "In environment" before the main explanation and I restored the double newlines (though w/o the last trailing one). |
test-suite/output/ErrorInModule.vio
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
??
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Apparently a too eager git add output
.
It includes more uniformity (same no-quotes for hypotheses and evars) and better space management when going to the next line.
1e1789a
to
bd85479
Compare
@coqbot merge now |
This PR is an attempt to get:
For instance, in an example I'm working on, it gives:
while it was before:
Maybe the context and list of evars should be more clearly separated?
Also, in a situation without proper constraints like this one:
the message is now:
while it was before:
This is to be compared to the case of only one remaining existential variable in a class:
Maybe the message for one or more unresolved evars could be merged actually?