Skip to Content.
Sympa Menu

coq-club - Re: [Coq-Club] Very slow failing apply

coq-club AT inria.fr

Subject: The Coq mailing list

List archive

Re: [Coq-Club] Very slow failing apply


Chronological Thread 
  • From: Ralf Jung <jung AT mpi-sws.org>
  • To: coq-club AT inria.fr, Robbert Krebbers <mailinglists AT robbertkrebbers.nl>, Pierre-Marie Pédrot <pierre-marie.pedrot AT inria.fr>
  • Subject: Re: [Coq-Club] Very slow failing apply
  • Date: Thu, 24 Aug 2017 15:31:33 +0200
  • Authentication-results: mail3-smtp-sop.national.inria.fr; spf=None smtp.pra=jung AT mpi-sws.org; spf=Pass smtp.mailfrom=jung AT mpi-sws.org; spf=None smtp.helo=postmaster AT jupiter.mpi-klsb.mpg.de
  • Ironport-phdr: 9a23:mO1DJRYPZ1RBJkxEcWam9e3/LSx+4OfEezUN459isYplN5qZpcu/bnLW6fgltlLVR4KTs6sC0LWG9f24EUU7or+/81k6OKRWUBEEjchE1ycBO+WiTXPBEfjxciYhF95DXlI2t1uyMExSBdqsLwaK+i76xXcoFx7+LQt4IPjuUs6X1pzvlrP6x5qGaAJRwTG5fLlaLROsrAyXuNNSybFlIKw80AeBgWFFce5b33ggcVeanhL94Mi0/YV/6AxKvPgr+tRcUr/3da41V6ceCjBwdygN5cDxrxSGaAKV53YrauQaiB1US1zd7RzgRJq0tyLgt+c7wCSWJ8rqZbEyQzWrqalxHkzGkiACYgQw9G+fqNF2g+oPog+nqDR624+Re56Ocv1kcfWOLpshWWNdU5MJBGR6CYSmYt5KVrJZMA==

Hi,

On 18.08.2017 10:29, Robbert Krebbers wrote:
> On 08/17/2017 11:35 PM, Pierre-Marie Pédrot wrote:
>> Also, while I'm thinking about this, could you report this on the bug
>> tracker with self-contained reproducible examples? Primitive projections
>> ought to work out-of-the-box for canonical structures and the like.

There is at least one other longstanding issue around primitive
projection, making it impossible for us to use them in many cases
currently: Many cases of intros break in Iris when we switch things to
primitive projections.
https://coq.inria.fr/bugs/show_bug.cgi?id=5245

This bug persists in Coq 8.7. I also verified that Robbert's example
still fails in 8.7. (Did you report the bug yet, Robbert?)

Kind regards,
Ralf


> See below for an example. It roughly follows the Ssreflect approach, and
> works just fine without primitive projections. However, with primitive
> projections is breaks.
>
>
> Set Primitive Projections.
>
> Structure semigroup := SemiGroup {
>   sg_car :> Type;
>   sg_op : sg_car -> sg_car -> sg_car;
> }.
>
> Structure monoid := Monoid {
>   monoid_car :> Type;
>   monoid_op : monoid_car -> monoid_car -> monoid_car;
>   monoid_unit : monoid_car;
> }.
>
> Coercion monoid_sg (X : monoid) : semigroup :=
>   SemiGroup (monoid_car X) (monoid_op X).
> Canonical Structure monoid_sg.
> (*
> Projection value has no head constant: monoid_car _UNBOUND_REL_1 in
> canonical
> instance monoid_sg of sg_car, ignoring it.
> *)
>
> Parameter X : monoid.
> Parameter x y : X.
>
> Fail Check (sg_op _ x y).
> (*
> Error: The term "x" has type "monoid_car X" while it is expected to have
> type "sg_car ?s".
> *)
>
>> (Notwithstanding the fact that the Coq bugzilla is currently down.)
> I will create an actual bug when the bug tracker is alive again.



Archive powered by MHonArc 2.6.18.

Top of Page