Skip to Content.
Sympa Menu

coq-club - Re: [Coq-Club] Tactic scripts

coq-club AT inria.fr

Subject: The Coq mailing list

List archive

Re: [Coq-Club] Tactic scripts


chronological Thread 
  • From: Adam Chlipala <adamc AT csail.mit.edu>
  • To: Victor Porton <porton AT narod.ru>
  • Cc: Coq <coq-club AT inria.fr>
  • Subject: Re: [Coq-Club] Tactic scripts
  • Date: Wed, 02 Nov 2011 09:08:13 -0400

Victor Porton wrote:
Probably a stupid question:

Why Coq has special language for writing new tactics, while Coq proofs can be 
turn into programs? Can't programs generated from existence proof be use 
instead of tactic scripts?

You seem to be mixing two questions:
1) Why have Ltac when we also have Gallina, in which dependently typed functions that find proofs can be written?
2) Why not produce such functions by extracting from constructive proofs?

For the second question, I'll just say that hardly anyone anywhere, using any system, extracts programs from proofs. It just isn't that useful of an idea, though it sounds nice in theory.

For the first one, I invite you to try doing all your proofs directly as Gallina terms. I usually argue against dynamic typing, but I really like it in Ltac, because every program exists only to generate a proof term, and we can check those statically after the fact. You would need quite complex typing to support the proof manipulations that are natural in Ltac. Also, it would be harder to integrate good error messages and other tool support with Gallina tactics.



Archive powered by MhonArc 2.6.16.

Top of Page