coq-club AT inria.fr
Subject: The Coq mailing list
List archive
- From: "Aaron Bohannon" <bohannon AT cis.upenn.edu>
- To: "Pierre Letouzey" <Pierre.Letouzey AT pps.jussieu.fr>
- Cc: "Coq List" <coq-club AT pauillac.inria.fr>
- Subject: Re: [Coq-Club] FSet tactics
- Date: Thu, 5 Jul 2007 20:09:56 -0400
- Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:sender:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references:x-google-sender-auth; b=OdHoH69WBdsW02dqrf5Z5pBsgCV/e4WNJ+I45x1Arba1burpYq+cPwY0kNWx5+6O7zj57SWNOdWevIAar2nOl67oi/Dt3A5+OSOrVLpIbDD+hrbjv6L/S0K5m9oyo4s7NRdXBxqX+nd2ETKYWI14VcU3Q7Oe4ZzXI8gYSwIvYk8=
- List-archive: <http://pauillac.inria.fr/pipermail/coq-club/>
On 7/4/07, Pierre Letouzey
<Pierre.Letouzey AT pps.jussieu.fr>
wrote:
By the way, what kind of goals would you like to see automatically
solved ?
To be very precise, I would like to have a tactic that will solve any
goal of the form
forall s1 ... sn, forall x1 ... xm, P
where P is an expression over the grammar
P :=
| E.eq X X'
| In X F
| Empty F
| Subset F F'
| Equal F F'
| P /\ P'
| P \/ P'
| P -> P'
| ~ P
F :=
| S
| empty
| singleton X
| add X F
| remove X F
| union F F'
| inter F F'
| diff F F'
X := x1 | ... | xm
S := s1 | ... | sn
Unless I am mistaken, statements of this form can be rather easily be
viewed as formulas in the (classical) monadic predicate calculus with
equality (each set variable corresponds to a predicate symbol), and
the validity of formulas in that logic is decidable.
It is reasonably simple to write an Ltac that solves goals that do not
involve "E.eq", "singleton", "add", or "remove" because the statements
can be systematically translated into a form that "tauto" can solve
(in the manner of "set_iff"). With equality, it is not so easy. I
suspect that one would pretty much be required to write the tactic in
ML for reasons of efficiency, since it will duplicate all of the
machinery of "tauto". That might be more of an undertaking than I
have time for. However, assuming I wanted to do such a thing, I'd be
interested in hearing any warnings or advice that comes to anyone's
mind.
-Aaron
- [Coq-Club] FSet tactics, Aaron Bohannon
- Re: [Coq-Club] FSet tactics,
Pierre Letouzey
- Re: [Coq-Club] FSet tactics, Aaron Bohannon
- Re: [Coq-Club] FSet tactics,
Pierre Letouzey
Archive powered by MhonArc 2.6.16.