Skip to Content.
Sympa Menu

coq-club - Re: [Coq-Club] rewriting in an equality without eq_ind_r / transport

coq-club AT inria.fr

Subject: The Coq mailing list

List archive

Re: [Coq-Club] rewriting in an equality without eq_ind_r / transport


Chronological Thread 
  • From: Gaëtan Gilbert <gaetan.gilbert AT skyskimmer.net>
  • To: coq-club AT inria.fr
  • Subject: Re: [Coq-Club] rewriting in an equality without eq_ind_r / transport
  • Date: Fri, 15 Nov 2019 23:13:04 +0100
  • Authentication-results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=gaetan.gilbert AT skyskimmer.net; spf=Pass smtp.mailfrom=gaetan.gilbert AT skyskimmer.net; spf=None smtp.helo=postmaster AT relay2-d.mail.gandi.net
  • Ironport-phdr: 9a23:NAj7YR0pecb8M7vNsmDT+DRfVm0co7zxezQtwd8Zse0fI/ad9pjvdHbS+e9qxAeQG9mCsLQd0Led6v2/EUU7or+5+EgYd5JNUxJXwe43pCcHRPC/NEvgMfTxZDY7FskRHHVs/nW8LFQHUJ2mPw6arXK99yMdFQviPgRpOOv1BpTSj8Oq3Oyu5pHfeQpFiCezbL9oMRm7owXcusYLjYZiKKs61wfErGZPd+lK321jOEidnwz75se+/Z5j9zpftvc8/MNeUqv0Yro1Q6VAADspL2466svrtQLeTQSU/XsTTn8WkhtTDAfb6hzxQ4r8vTH7tup53ymaINH2QLUpUjms86tnVBnlgzoBOjUk8m/Yl9ZwgbpGrhy/qRxxw43abo+bO/VxfKzSYdwUSHFdXstSTSFNHp+wYoUNAucHIO1Wr5P9p1wLrRamBAejHv/oyiNSiX/wxaI00uUhEQXd0wM+BdIOrGnfodL6NKgIT++10LPHzTPZY/NZ2Df97JPHfQ47ofGQRr9wasnRyEk0FwPGj1WQrInlMC2P1ugXtWiU8fZgWPuphmU6qA9xuiCiytkxhoTLnI4YyEzI+T9kzIs2K9C0UlN3bNqrHZdIqS2WKoV7Ttk/T2xopio20KAKtJ+lcCQQ1Zgr2hHSZvqaeIaS+B3jTvyeITJgiXJlZr2/gxGy/FC6yuLiUsm7ylZLojRcntbRrHwN0gbc6smDSvdn8UeuwzCP2B3S6u1eJ0A7i7bbJ4Ygwr42iJUTrVzOEjHrlEj0lqObdFko9vK15+nkbLjqvIKQOot7hw3mN6QhgM2/AeA2MggUWGib/Pyx1LL58kLnXLVFlPs2nrPWsJDbIcQUvbC2AxVJ0os48Ba/DDen0M8bnXkGKVJFfQyIj5LzN1HIPv/4Ee+zg06wnzdz2/DGIrrhD43RIXjEibftZKpy60pByAUo1t1f/JJVCrQZIP3pQEPxtdrYDgU4MwOu2ernBs99hcsiXjeEBbbcO6fPu3eJ4PguKq+Cftw7ojH4ftcsZOLni0gWmFsXcLO1lc8YYX2kF/IgLESda3f2nv8aEnYRvQs7SeHwzluPTWgAND6JQ6sg62RjW8qdBoDZS9X12e3T7GKABpRTI1t+JBWJGHbseZ+DXq5SOjmRM9RikzkBWKLnTYI9h0j36V3KjoF/J++RwRU28JLu0N8vur/JmBU75GYxA4KY2mCJCW59mG8JATk7wPIn+BAv+hK4yaF9xsdgO5lL/foQDFUhNo/HzO1/Dt3oHATMYoXRRQ==

probably one side uses a primitive projection and the other uses the compatibility constant
or both sides use the primitive projection but one is considered "unfolded" and the other isn't


Gaëtan Gilbert

On 15/11/2019 23:05, Dan Christensen wrote:
I have attached a trimmed file that shows what might be a bug
in constr_eq. It's still 67 lines long and relies on the HoTT
library (tested with version b20bb57373928 from Oct 30).

With this trimmed version, it's no longer true that renaming
the bound variable makes the problem go away, so it's not as
air tight a bug report as I wanted, but the file is much smaller.

Any comments before I try submitting a bug report?

Dan

On Nov 15, 2019, Dan Christensen
<jdc AT uwo.ca>
wrote:

It's constr_eq that is failing on the two terms that only differ in the
name of a bound variable. If I use the change tactic to rename the
bound variable x to anything else, everything works. I'll work on
trying to find a simpler reproducible example.

So, except for this probable bug in Coq, the syntactic_unify approach is
working very well for my use cases.

Dan

On Nov 14, 2019, Dan Christensen
<jdc AT uwo.ca>
wrote:

I adding some idtac printing to _syntactic_unify, add see that in a
recursive call it gets passed the two terms

(fun x : X => @smin X Y (x, @point Y (ispointed_type Y)))
(fun a : X => @smin X Y (a, @point Y (ispointed_type Y)))

and fails to unify them in the last clause. But I can't reproduce this
in isolation. Whenever I try to trim things down, the problem goes away.

Here they are with universes:

(fun x : X => @smin@{smash.10422 smash.10423} X Y (x, @point@{smash.10423} Y
(ispointed_type@{smash.10423} Y)))
(fun a : X => @smin@{smash.10422 smash.10423} X Y (a, @point@{smash.10423} Y
(ispointed_type@{smash.10423} Y)))

Is there some information idtac wouldn't show that could still prevent
unification?




Archive powered by MHonArc 2.6.18.

Top of Page