Skip to Content.
Sympa Menu

coq-club - Re: [Coq-Club] Can you name the biggest number?

coq-club AT inria.fr

Subject: The Coq mailing list

List archive

Re: [Coq-Club] Can you name the biggest number?


Chronological Thread 
  • From: roux cody <cody.roux AT gmail.com>
  • To: roux cody <cody.roux AT gmail.com>, coq-club AT inria.fr
  • Subject: Re: [Coq-Club] Can you name the biggest number?
  • Date: Mon, 2 Dec 2019 08:25:44 -0500
  • Authentication-results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=cody.roux AT gmail.com; spf=Pass smtp.mailfrom=cody.roux AT gmail.com; spf=None smtp.helo=postmaster AT mail-vs1-f52.google.com
  • Ironport-phdr: 9a23:IEX6JRbj94MLa3lcGrlWDkv/LSx+4OfEezUN459isYplN5qZr8y7bnLW6fgltlLVR4KTs6sC17ON9fm/BCddu96oizMrSNR0TRgLiMEbzUQLIfWuLgnFFsPsdDEwB89YVVVorDmROElRH9viNRWJ+iXhpTEdFQ/iOgVrO+/7BpDdj9it1+C15pbffxhEiCCybL9vIhi6txjdu8sWjIdtKqs91AbCr2dVdehR2W5mP0+YkQzm5se38p5j8iBQtOwk+sVdT6j0fLk2QKJBAjg+PG87+MPktR/YTQuS/XQcSXkZkgBJAwfe8h73WIr6vzbguep83CmaOtD2TawxVD+/4apnVAPkhSEaPDE36mHXjtF7grxdrhyvuhdzx5PYbJ2QOPd4Y6jTf84VRXBZU8leWSxOAIOyYYUMAeQcI+hXs5LwqEESoRakHwSgGP/jxz1Oi3Tr3aM6yeMhEQTe0Qw6GNIOrXvVp8jpO6cVTO+0zLTDwDLfYPNRxDj86JLEcgomofGRUrN9asXRyUw1GAPEilWcs5DqPzSQ1ukUtWWQ8uRuVeWqi2E9qgFxpCCiydouionMnI4a1kzL+T12wIY0Od24SFN7bsW+HJRMsCGaMo17Sd4hTWFwoCs21KEKtJqhcCUJyJkr3QDTZ+GFfoSS4h/vSuCcKipiin1/YrKwnROy/FCgyuLiUsm0105Hri9fndnNsnABzgLT6tOaRvdk8Ees2SiD2xrc6uFDJkA0mq7bJIA7zrEskZoTtFzPHi7wmErokK+bblso9vSs5uj9YbjrpoWQO5Fphgz8KKgjmtKzDfw9MgcUXmib/eq81Kfk/U38WLhFkvo2nbTZsZzAP8QbobO5AgBO34Ys7hawFTam0NACkXYbK1JFfQqLj5L1NFHWPPD4EfC/jkywnzds3vDKJ6HuApHQLnfYi7rhZrZ860tEyAUp19xf5pRUCqsAIP3pQEPxusbYXVcFNFmuxPv3QN562pJWDWmIDr7fKqTPoXeH4+suJ6+HY4pD/H72LOFg7Przh1c4n0UcdO+nx8g5cne9S+5hPlXRan3gk59VGmAGr0wkS/H6oFKHWD9XIX21WvRvtXkAFIu6ANKbFciWi7ub0XLiRsQHNFADMUiFFDLTT6vBXv4NbCyIJco4y24LULGgT8kq0hT87VammYoiFfLd/2gjjbymzMJ8vrSBmhQ79DgyBMOYgTnUEjNE21gQTjpz55hR5ExwzlDZjPp9iv1cUMJIvrZHD118OpnbwOh3Tdv1X1CZcw==

Someone else just pointed this out to me! As I was saying, I'd be happy to declare this the winning entry, as long as it was formalized in Coq and proven to be larger than current contender :).

Cody

On Mon, Dec 2, 2019, 8:18 AM Emilio Jesús Gallego Arias <e AT x80.org> wrote:
roux cody <cody.roux AT gmail.com> writes:

>     I'd like you invite the enthusiasts of Coq and proof theory in general
> to participate in a small and fun ongoing challenge, which I have hosted on
> Github for lack of better ideas (but I'm open to suggestions):
>
> https://github.com/codyroux/name-the-biggest-number

It is worth recalling the winner of the BIGNUM BAKEOFF contest by Ralph
Loader: http://djm.cc/bignum-results.txt

,----
| The final and winning entry, {loader.c}, diagonalizes over the
| Huet-Coquand `calculus of constructions'.  This is a highly polymorphic
| lambda calculus such that every well-formed term in the calculus is
| strongly normalizing; or, to put it another way, a relatively powerful
| programming language which has the property that every well-formed
| program in the language terminates.  The program's main function is
| called D.  (D's return value depends on a global variable, so it is in
| fact not a pure function, but this will not be important.) D works
| approximately as follows: given an argument x, it iterates over all bit
| strings with binary value less than or equal to x, and, if such a bit
| string codes for a well-formed program (`term' in lambda-calculus
| language), it runs the program (`strongly normalizes the term' in
| lambda-calculus language.)  The return value of D is then obtained by
| packaging together the return values of all these programs.  The
| program's return value is D@@5(99).  It is possible to simulate the
| computation of D(99) and prove that D(99) >= E(30419).  Also, it is easy
| to prove that D(z) >= z and that D(z) is increasing with z.  Therefore,
| the value output by the program is at least D(E(30419)).  However, in
| {FLO}, Fortune et al.  explain how to code F[omega**k] and F[epsilon_0]
| in the second-order typed lambda calculus.  The second-order typed
| lambda calculus is a subset of the calculus of constructions, and the
| methods in {FLO} can easily be used to code, say, F[epsilon_0 +
| omega**3](1000000) in a relatively short program, which can be expressed
| by a bit string of length well under E(30419).  {loader.c} is therefore
| the winner.
`----

E.



Archive powered by MHonArc 2.6.18.

Top of Page