Skip to Content.
Sympa Menu

coq-club - Re: [Coq-Club] Why dependent type theory?

coq-club AT inria.fr

Subject: The Coq mailing list

List archive

Re: [Coq-Club] Why dependent type theory?


Chronological Thread 
  • From: Pierre-Marie Pédrot <pierre-marie.pedrot AT inria.fr>
  • To: coq-club AT inria.fr, Jason Gross <jasongross9 AT gmail.com>, agda-list <agda AT lists.chalmers.se>, lean-user <lean-user AT googlegroups.com>, Coq Discourse <coq+miscellaneous AT discoursemail.com>
  • Subject: Re: [Coq-Club] Why dependent type theory?
  • Date: Wed, 4 Mar 2020 11:57:08 +0100
  • Autocrypt: addr=pierre-marie.pedrot AT inria.fr; prefer-encrypt=mutual; keydata= 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 HXQ4ZkGmhsCD6dMF2cKX+EqLjopA136U

On 03/03/2020 22:31, Jason Gross wrote:
> The main bottleneck that I'm referring to here (though not the only one
> of my thesis) is the one that is due to the fact that arbitrary
> conversion problems can happen during typechecking.  This is used to
> great advantage in proof by reflection (where all of the work is done in
> checking that a proof of "true = true" has the type "some-check =
> true").  But it also causes performance issues if you're not careful.

Without going fully reflexive, I have been told several times that the
computational nature of conversion was actually increasing the
performances compared to systems that do not feature it. In particular,
the meme-y "proving 2 + 2 = 4 requires on the order of 10⁷ symbols" has
some hint of truth in conversionless theories. Computation allows for
much more compact proofs, hence more efficient to typecheck. Memory is
not free.

(Note that I have no empirical proof of that, I am merely conveying
hearsay.)

Obviously, you can write (almost) arbitrary computations in conversion,
but then, I find it somewhat strange to complain about it. You can write
superexponential algorithms in C++, but that's not a valid reason to
rant against the language. I really wonder why people blame
dependently-typed languages instead of their own inefficient programs.

PMP

Attachment: signature.asc
Description: OpenPGP digital signature




Archive powered by MHonArc 2.6.18.

Top of Page