coq-club AT inria.fr
Subject: The Coq mailing list
List archive
- From: "jonikelee AT gmail.com" <jonikelee AT gmail.com>
- To: coq-club AT inria.fr
- Subject: Re: [Coq-Club] Fwd: "Lean is like Coq but better"
- Date: Tue, 7 Jan 2020 22:15:42 -0500
- Authentication-results: mail2-smtp-roc.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-qt1-f175.google.com
- Ironport-phdr: 9a23:40zXdhBaXsvhSgdY4Q4qUyQJP3N1i/DPJgcQr6AfoPdwSPT6pMbcNUDSrc9gkEXOFd2Cra4d0KyM7v+rBDBIyK3CmUhKSIZLWR4BhJdetC0bK+nBN3fGKuX3ZTcxBsVIWQwt1Xi6NU9IBJS2PAWK8TW94jEIBxrwKxd+KPjrFY7OlcS30P2594HObwlSizexfL1/IA+ooQjRtMQajotvJ6kswRbVv3VEfPhby3l1LlyJhRb84cmw/J9n8ytOvv8q6tBNX6bncakmVLJUFDspPXw7683trhnDUBCA5mAAXWUMkxpHGBbK4RfnVZrsqCT6t+592C6HPc3qSL0/RDqv47t3RBLulSwKMSMy/mPKhcxqlK9VrhKvqQJizYDXYo6VOv1wcazBct0VXmdBQsRcWjZdDo6mc4cDEewMNvtYoYnnoFsOqAOzCQeuBOPozD9Ih3z20rM+0+s/Dw7LxwMgH9cUv3TVqNX5LrsdUeewzKXG0D7OaPFW2TD76IjJcRAuv/WMUqxufsfKxkkvEhnKjlSUqYD/IzyV0eENvnGd4uF9Vuyvk3Yqpx9trjWr3MshiYnEipgIxl3F6Sl12ps5KN+4RUJjf9KpEYdcuzyfOodrRs4tX2RltSk7x7EapZK2eTUGxZclyhPadvOIboqF7xzmWeuTIDp3nnBodbeliBuy80WtyujxW8qp3FlQrCdIlMTHuGoX2BzJ8MeHT+Nw/ke/1jaL0ADe8uRELlo1larfMpIh26IwmocKvUTNAyP7mkX7gLWZdkUj/eio5ODnbav8qpCAMI90jxnyMqUomsOhHeQ1KhYCU3Sf9Oim17Du/Vf1TKhLg/EqiKXVrZLXKMQDqq68GQBV04Ij6xilDzeh1dQVhXsHLFVDeBKGjIjmJVXOL+7mAvqkjFSslS1kx/HCPrH7HprNKX3DnK/7fblh805c1BYzzddH6p1IDbEBOev/VVP1tNzFFRA0KBe0wubiCNVlzIwSQ2OPAqmDMKPTq1CE/OwvI/PfLLMS7T36Mr0u4+PkpX4/g14UO6ezjrUNb3XtVPZhJUSabH7hj/8OFG4Lukw1S+mgwAmAVjhSZHu2Uq8U6TQyCYbgBoDGENP+yIed1Tu2S8UFLltNDUqBRC+xJte0HswUYSfXGfdP1zkNVLyvUYgkjEj8uwrzyr4hJe3RqHRB6MDTkeNt7uiWrikcsDx5C8PHjTOIRmBw23oUHno4hf8i50N6zViH3O5zhPkKTYUPtcMMaR8zMNvn98I/E8r7A1uTcdKASVLgSdKjU2k8
I have to mull over Mario's response, but I think there are usages of
Coq's Prop that require it to be constructive (non-LEM). My own work
relies on this - it also rests on the fact that Prop will be erased,
leaving Type as the program, but uses Prop to carry around simple
computation as well as propositions in order to prove more complex
computation in Type. I'd be curious if the same technique is possible
in Lean.
On Tue, 7 Jan 2020 21:20:33 -0500
Mario Carneiro
<di.gama AT gmail.com>
wrote:
> On Tue, Jan 7, 2020 at 8:51 PM
> jonikelee AT gmail.com
> <jonikelee AT gmail.com>
> wrote:
>
> > [decloaking from lurker mode to add my $0.02]
> >
> > Does having LEM built into Lean interfere with the user's ability to
> > exploit the Curry-Howard isomorphism?
> >
> > If so, that seems like a bad trade off: a small convenience for a
> > small group of people (Fields Medal wanabees) that imposes a large
> > inconvenience for a large group of people (software engineers).
> >
>
> I haven't found that Lean's ontology poses any serious issues for
> writing software, and if anything I think it helps. Lean makes a
> sharp distinction between data (in Type) and proofs (in Prop), and
> proofs are erased during code execution. So if you build a sorting
> function of type forall l : list A, { l2 : list A | l2 is a sorted
> permutation of l }, then the "list A" part is data, which can be
> executed assuming it doesn't use the axiom of choice in its
> definition, and the "l2 is a sorted permutation of l" part is a
> proof, so it completely disappears during execution. You can use
> choice if you want to prove this fact, as it is just a conventional
> mathematical assertion; it will not interfere with the computability
> of the overall function.
>
> So it's a half-baked kind of constructivism, that is constructive
> only in the places where it actually matters to producing code. That
> seems like a reasonable compromise to me. In particular, LEM is not
> executable in any case, because it is a Prop; you can't case analyze
> on it unless you are proving another Prop and this too will be
> erased. Whenever you use "if" in Lean it infers decidability of the
> predicate in question, and this proof of decidability lives in Type
> and can be executed.
- Re: [Coq-Club] Fwd: "Lean is like Coq but better", (continued)
- Re: [Coq-Club] Fwd: "Lean is like Coq but better", Kevin Buzzard, 01/06/2020
- Re: [Coq-Club] Fwd: "Lean is like Coq but better", Conor McBride, 01/06/2020
- Re: [Coq-Club] Fwd: "Lean is like Coq but better", Stefan Monnier, 01/06/2020
- Re: [Coq-Club] Fwd: "Lean is like Coq but better", Bas Spitters, 01/06/2020
- Re: [Coq-Club] Fwd: "Lean is like Coq but better", Xuanrui Qi, 01/07/2020
- Re: [Coq-Club] Fwd: "Lean is like Coq but better", Bas Spitters, 01/07/2020
- Re: [Coq-Club] Fwd: "Lean is like Coq but better", Thorsten Altenkirch, 01/07/2020
- Re: [Coq-Club] Fwd: "Lean is like Coq but better", Ramkumar Ramachandra, 01/07/2020
- Re: [Coq-Club] Fwd: "Lean is like Coq but better", jonikelee AT gmail.com, 01/08/2020
- Re: [Coq-Club] Fwd: "Lean is like Coq but better", Mario Carneiro, 01/08/2020
- Re: [Coq-Club] Fwd: "Lean is like Coq but better", jonikelee AT gmail.com, 01/08/2020
- Re: [Coq-Club] Fwd: "Lean is like Coq but better", Jason Gross, 01/08/2020
- Re: [Coq-Club] Fwd: "Lean is like Coq but better", jonikelee AT gmail.com, 01/08/2020
- Re: [Coq-Club] Fwd: "Lean is like Coq but better", Sylvain Boulmé, 01/08/2020
- Re: [Coq-Club] Fwd: "Lean is like Coq but better", Ramkumar Ramachandra, 01/08/2020
- Re: [Coq-Club] Fwd: "Lean is like Coq but better", Kevin Buzzard, 01/09/2020
- Re: [Coq-Club] Fwd: "Lean is like Coq but better", Florent Hivert, 01/09/2020
- Re: [Coq-Club] Fwd: "Lean is like Coq but better", Timothy Carstens, 01/09/2020
- Re: [Coq-Club] Fwd: "Lean is like Coq but better", Conor McBride, 01/09/2020
- Re: [Coq-Club] Fwd: "Lean is like Coq but better", Timothy Carstens, 01/09/2020
- Re: [Coq-Club] Fwd: "Lean is like Coq but better", Conor McBride, 01/09/2020
Archive powered by MHonArc 2.6.18.