coq-club AT inria.fr
Subject: The Coq mailing list
List archive
- From: Jonathan Leivent <jonikelee AT gmail.com>
- To: coq-club AT inria.fr
- Subject: Re: [Coq-Club] Unification Bug?
- Date: Fri, 2 Dec 2016 16:15:22 -0500
- Authentication-results: mail3-smtp-sop.national.inria.fr; spf=None smtp.pra=jonikelee AT gmail.com; spf=Pass smtp.mailfrom=jonikelee AT gmail.com; spf=None smtp.helo=postmaster AT mail-qk0-f177.google.com
- Ironport-phdr: 9a23:coO7cRblPj2qXlzTGWxE3Lf/LSx+4OfEezUN459isYplN5qZoMizbnLW6fgltlLVR4KTs6sC0LuN9fy7EjNZqb+681k6OKRWUBEEjchE1ycBO+WiTXPBEfjxciYhF95DXlI2t1uyMExSBdqsLwaK+i764jEdAAjwOhRoLerpBIHSk9631+ev8JHPfglEnjSwbLd8IRmsogjcuMYajIl/Jq0s1hbHv3xEdvhMy2h1P1yThRH85smx/J5n7Stdvu8q+tBDX6vnYak2VKRUAzs6PW874s3rrgTDQhCU5nQASGUWkwFHDBbD4RrnQ5r+qCr6tu562CmHIc37SK0/VDq+46t3ThLjlSEKPCM7/m7KkMx9lL9VrgyvpxJ/wIDabo+aO/V8cazBct0XXnZBU8VLWiBdHo+xYYkCAuwcNuhYtYn9oF4OoAO6CwmrAuPg0CNIhn/s0q08zu8vFx/J3A0+H90QtnTUsMj+OaAQUeCyyqnIzDbDYO1S2Tjj9ofFaR8hofSWUrJxdcrd01UgFwTAjliJr4HuIjCb1vwVvmSF8+ZtUfijhm0npg1rvDSj2NsghpPUio8XyF3I7Sd0zJsvKdGmRkN2bsSoHIZeui2GLYd6XM0vTmNutS0n0LMJo4S7czIPyJk/xx7QdfiHc4+Q7xLmTumRIDN4iGt8eLK8mxq+6EagxvD+W8S2ylpKoS1Fkt7DtnAJyRPf8NSISvx4/ku52DaP0R7c6v1cLEwqiabWL4Qtz70wm5YJr0jPADP6lF/rgKKUdEgo4u2o5P7mYrXiqJ+cLYh0igTmP6Qsncy/B+U4MgsQUGif5+uzyqbu/UL8QLpQj/02lrPVv4zdJcQevqK5GRNa0p4/6xajCDeryMgXnX4eLF5cZB2Hi5XpNErVLfDjDfa/hkysny1xy/DHOL3hGJTNIWLZnLfvZ7Yuo3JbnQE01JVU449eIrAHOvP6HEHr5/LCCRpsEQuyyvrnAdM18o4fR2+JHufNMqTUsFyF4u8iC+aJbY4R/j36Lq52tLbVkXYllApFLuGS1pwNZSXgEw==
On 12/02/2016 03:50 PM, Eddy Westbrook wrote:
Hi Jonathan,
Thanks for the reply, and for the suggested workaround. I’ll see if I can get
something like that to work.
The reason this looks like a bug to me, though, is that I think, if I’m not
mistaken, that what I am actually trying solve is the problem
?T2 x = ?B
FYI - You can "skolemize" ?T2 with respect to x in the goal by doing this:
Goal { T:Type | T=T }.
refine (exist _ (forall (x:?[T1]), ?[T2]) _).
instantiate (T2:=ltac:(revert x)). (*skolemize ?T2 wrt x*)
(Technically, I think Coq writes the left-hand side as something like
?T2@{__:=x}, but it’s the same thing.) This problem has the solution ?T2 = (fun
_ => ?B). It falls into the higher-order pattern fragment, since ?T2 is fully
applied to distinct bound variables, and I thought Coq would solve this fragment.
I don't think Coq can solve such fragments.
Also, either way, the fact that the unify tactic is not commutative also
seems like a bug...
I think the problems with commutativity of unification with evars is a known issue that Hugo has attempted to (and is continuing to attempt to) deal with.
-- Jonathan
- [Coq-Club] Unification Bug?, Eddy Westbrook, 12/02/2016
- Re: [Coq-Club] Unification Bug?, Jonathan Leivent, 12/02/2016
- Re: [Coq-Club] Unification Bug?, Eddy Westbrook, 12/02/2016
- Re: [Coq-Club] Unification Bug?, Jonathan Leivent, 12/02/2016
- Re: [Coq-Club] Unification Bug?, Eddy Westbrook, 12/02/2016
- Re: [Coq-Club] Unification Bug?, Jonathan Leivent, 12/02/2016
- Re: [Coq-Club] Unification Bug?, Eddy Westbrook, 12/03/2016
- Re: [Coq-Club] Unification Bug?, Jason Gross, 12/03/2016
- Re: [Coq-Club] Unification Bug?, Matthieu Sozeau, 12/03/2016
- Re: [Coq-Club] Unification Bug?, Eddy Westbrook, 12/03/2016
- Re: [Coq-Club] Unification Bug?, Matthieu Sozeau, 12/06/2016
- Re: [Coq-Club] Unification Bug?, Eddy Westbrook, 12/06/2016
- Re: [Coq-Club] Unification Bug?, Matthieu Sozeau, 12/07/2016
- Re: [Coq-Club] Unification Bug?, Eddy Westbrook, 12/08/2016
- Re: [Coq-Club] Unification Bug?, Eddy Westbrook, 12/03/2016
- Re: [Coq-Club] Unification Bug?, Jonathan Leivent, 12/02/2016
- Re: [Coq-Club] Unification Bug?, Eddy Westbrook, 12/02/2016
- Re: [Coq-Club] Unification Bug?, Jonathan Leivent, 12/02/2016
- Re: [Coq-Club] Unification Bug?, Eddy Westbrook, 12/02/2016
- Re: [Coq-Club] Unification Bug?, Jonathan Leivent, 12/02/2016
Archive powered by MHonArc 2.6.18.