Skip to Content.
Sympa Menu

coq-club - Re: [Coq-Club] Using hint databases to partially solve a goal?

coq-club AT inria.fr

Subject: The Coq mailing list

List archive

Re: [Coq-Club] Using hint databases to partially solve a goal?


Chronological Thread 
  • From: Jason Gross <jasongross9 AT gmail.com>
  • To: coq-club <coq-club AT inria.fr>
  • Subject: Re: [Coq-Club] Using hint databases to partially solve a goal?
  • Date: Fri, 8 May 2020 21:33:32 -0400
  • Authentication-results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=jasongross9 AT gmail.com; spf=Pass smtp.mailfrom=jasongross9 AT gmail.com; spf=None smtp.helo=postmaster AT mail-ed1-f41.google.com
  • Ironport-phdr: 9a23:dmFjKhA9KlyZxgdQ9TpMUyQJP3N1i/DPJgcQr6AfoPdwSPT7pMbcNUDSrc9gkEXOFd2Cra4d1qyG7+u8AyQp2tWoiDg6aptCVhsI2409vjcLJ4q7M3D9N+PgdCcgHc5PBxdP9nC/NlVJSo6lPwWB6nK94iQPFRrhKAF7Ovr6GpLIj8Swyuu+54Dfbx9HiTagYb5+Nha7oAreusQZn4dpN7o8xAbOrnZUYepd2HlmJUiUnxby58ew+IBs/iFNsP8/9MBOTLv3cb0gQbNXEDopPWY15Nb2tRbYVguA+mEcUmQNnRVWBQXO8Qz3UY3wsiv+sep9xTWaMMjrRr06RTiu86FmQwLuhSwaNTA27XvXh9R/g6JVoh2vpxJxzY3Jbo+LKPVzZbnScc8ASGdbQspdSy5MD4WhZIUPFeoBOuNYopH5qVQUthu+Ag+sD/7uxD9SgX/2xrY62PkmHAHExgMgBNUOsHLbrNXvM6cSSvu1wa3TwDXMavNZwzb96IzSfh89pvGMWKt9fMzMwkYgCw3LlE+fqZD5PzyLzOQNtXCW4uhiWO+zimMqpAN8rzmzy8owl4XEhoYYx1TH+Chnz4g4J9O2RVN4bNOgDpdetz+XOYt2T88/TWxkpSc3xqEJtJO9YSMEy4wnygbBZ/Cbd4WE+BHuWeaLLTtmmH5oe6izihmv/UWm1+byTNO70ExQoSpAitTMtm4C1xjU6sWfT/ty5Eah2TKW2w/N9+5IPFk4laTUJpI82LIwmZ0TsUPMHi/yhkr6lrOZdkIh+uSw6uTnZKvppoOEOoNqlg3zNr4il8+/DOgiLAQCQ2uW9f6z2bH+5UH5Ra9FjvwykqnXqpDaIsEbq7a7AwBPyYYj7BC/Dzi80NQfhnkHN1ZIdQmIj4jsIV7OIfT4Ae2jjFSrlTdn3+rGMaH5ApXRMnjDl6/scqp6605F0QY80dRf549PBbwaO/LyWkrxtMTCARMjMgy0xfznCNRn2Y8EV2KPGPzRDKSHuliRo+krPuPEMIQSoXP2L+Uvz//ol34w31EHK/qHx5wSPVKxBfNga2qDZmH3yoMDGHwNuAUkS/fx2XWNVDdSYzC5WKdqtWJzM56vEYqWHtPlu7eGxiruRsQKNFADMUiFFDLTT6vBQ+0FMXvALcpokzhCXr+kGdd4hEOe8TTiwr8iFdL6vygRtJbtzt9wvrSBmhQ79DgyBMOYgTjUEjNE21gQTjpz55hR5ExwzlDZjPp9iv1cUNFfvrZHDl58OpnbwOh3Tdv1X1CZcw==

I believe you can add `shelve` as a hint, and this will allow the search to succeed with a partial solution.  You can then use `unshelve eauto` to get back the left-over goals

On Fri, May 8, 2020, 20:06 Eddy Westbrook <westbrook AT galois.com> wrote:
Hey coq-club list-ers,

Is there any way to partially solve a goal using the auto hint databases? That is, is there a way to do something like "eauto with <my_db>” but for it to make as much progress as it can and then leave the remaining sub-goals for me to prove manually?

The use case here is that I have monadic programs I’m trying to prove properties of, and I have a set of rules to prove those properties modulo properties of the values produced in those computations. So, for instance, I have a monadic program that manipulates bitvectors, and my rules can reduce (in a rote and automatable way) all the properties about my monadic program to properties about bitvectors that I have to prove by hand. The hope is that I could use the hint databases to define how to apply my rules, and then I could apply these hints and end up with my goals about bitvectors to prove by hand. The only other option is to write a monolithic tactic that pattern-matches on the form of the goal to apply my rules, and that isn’t as nice and extensible.

Any ideas?

Thanks,
-Eddy



Archive powered by MHonArc 2.6.18.

Top of Page