Subject: Ssreflect Users Discussion List
List archive
- From: Ian Zimmerman <>
- To:
- Subject: Re: [ssreflect] strange error message
- Date: Fri, 20 Sep 2019 15:10:23 -0700
- Authentication-results: mail2-smtp-roc.national.inria.fr; spf=None ; spf=Pass ; spf=Pass
- Ironport-phdr: 9a23:EoI0lxZJNYcAJu23GR+9ceT/LSx+4OfEezUN459isYplN5qZr8m5bnLW6fgltlLVR4KTs6sC17ON9fq7EjReqdbZ6TZeKcYKD0dEwewt3CUYSPafDkP6KPO4JwcbJ+9lEGFfwnegLEJOE9z/bVCB6le77DoVBwmtfVEtfre9FYHdldm42P6v8JPPfQpImCC9YbRvJxmqsAndrMYbjZZsJ6or1BfErHREd/hXyGh1IV6fgwvw6t2/8ZJ+7Shcoe4t+9JFXa7nY6k2ULtUASg8PWso/sPrrx7DTQWO5nsYTGoblwdDDhbG4h/nQJr/qzP2ueVh1iaUO832Vq00Vi+576h3Uh/oiTwIOCA//WrKl8F/lqNboBampxxi347ZZZyeOfRicq/Be94RWG1OUNtMVyxaGoOzcZcAD/YPM+ZfqonyvVoOrR2jDgWoC+7izjpEi3nr1qM4zushCxnL0gIgEdwQrXrar9v1O6gOXu+ow6fHzzvMYuhK2Tr+8oXEbgwtrOuOUL92bMHfyVMvFwTAjliIqoLqJTWV3fkOvGia6upgUPygi3Qiqw5rpDik28AhiojVhoMU0V3E6zt2wJw1JNGiTE57ZtmkEIBOuCGeN4p6WMQiQ3tnuCsjzLANpJC1fC8PyJs9xh7fbeSKc42P4hLkU+adOyt3hHVgeL+5mh288lCgx/XhWsS23ltGtDRJn9nMu3wXyRDf98iKRuF880qlwTqC1gLe5vtZLU02mqfXMYAtz7A+m5YJr0jPAy37lUPrh6GMbEok4PKn6+H/b7XmuJCcM4h0hxngMqswgMy+Af40MgwJX2ic4uSzyrnj/E3jTLVNlP02nbHVsJHcJcsFuq60GxJZ34Qt5hqlETur0NQVkWMZIF5YeB+LlYnkNlXWLPD9F/i/glCskDlxx/DBO73sGpTNLmTCkbr6Y7Zy9VRcyQopwdBb4JJUDaoBL+z3Wk7xrtDYCQU5MwOsz+b9FNp9zp8eWX6IAqKBK6PSqkWI6fwhI+mIeoAapCr9JuM+5//uiH85gUUScbOo3ZsRcnC4H+5pL1+XYXr20Z89FjIRpRAzQujng0GqVCVJIne0RaM1oDA9EoOvS4nZFa63h7nU/S69Vq9XY2VLEFWFFz+8dpmWc+kBcjPUJshmiTEARP6mUYB3hkLmjxPz17cydrmcwSYfr5+2iIksur/j0Coq/DkxNPyzlmGAS2YtzjEWSiUnmqR4pldwzkbF1rJ30aUBRI5joshRWwJ/DqbyiulzCtT8QAXEJ4fbVlu8U5OiBjYqQ9YghdgUbBQkQonwvlX4xyOvRoQtufmTHpVtovDC0mLgYcJ6zG3L0LhniEMpEJNC
On 2019-09-20 08:41, Laurent Thery wrote:
> Error messages are often difficult to parse at the beginning (they often
> contain lots of information!), the key part of the error message is
>
> Prop" == "(λ f : T → T, bijective f) h;
> cannot unify "Prop" and "bijective h").
>
> it tells you that the system is expecting a proof of bijective h and
> is given a proof of Prop (ie a witness that Prop is inhabited)
>
> In fact you give :
>
> @exist _ _ h (@bijective T T h)
>
>
> where (@bijective T T h) : Prop
>
> instead you should give
>
> @exist _ _ h H
>
> where H is a proof that h is bijective
>
> hope this helps
Thanks for this, and also for the 2 private replies sent to me by
others. There's a multitude of lessons for me here. First the solution:
Let perm_group_op (fb: perm_sig) (gb: perm_sig) : perm_sig :=
match fb with exist f fp =>
match gb with exist g gp =>
@exist (T → T) _ (f \o g) (bij_comp fp gp)
end
end.
which leads to the most specific lesson: don't "forget" the proof part
of sigmas, it will be needed.
Second, try to remember the difference between "is" as "equals", and
"is" as "belongs to". I guess this goes all the way back to Frege!
And third and most general, of course, don't omit type annotations until
I know what I'm doing, LOL.
Thanks again!
--
Please don't Cc: me privately on mailing lists and Usenet,
if you also post the followup to the list or newsgroup.
To reply privately _only_ on Usenet and on broken lists
which rewrite From, fetch the TXT record for no-use.mooo.com.
- [ssreflect] strange error message, Ian Zimmerman, 09/20/2019
- Re: [ssreflect] strange error message, Laurent Thery, 09/20/2019
- Re: [ssreflect] strange error message, Ian Zimmerman, 09/21/2019
- Re: [ssreflect] strange error message, Ian Zimmerman, 09/25/2019
- Re: [ssreflect] strange error message, Ian Zimmerman, 09/21/2019
- Re: [ssreflect] strange error message, Laurent Thery, 09/20/2019
Archive powered by MHonArc 2.6.18.