[SMT-LIB] [SMT-API] SMTLIB resources - tutorial, Java tool, API, and Eclipse plug-in
Tinelli, Cesare
tinelli at iowa.uiowa.edu
Wed Jan 19 18:39:40 EST 2011
Hi all,
I'd like to give a belated but big public thank you to David for writing this tutorial and creating its accompanying tools. They are a great service to the community and will be invaluable in popularizing the SMT-LIB 2 standard.
The tutorial and the tools are now also accessible from the SMT-LIB web site.
Please help improve the (already high) quality of the tutorial further by sending your feedback to David.
Thanks,
Cesare
On 3 Jan 2011, at 08:38, <cok at frontiernet.net>
<cok at frontiernet.net> wrote:
> SMT-LIB community:
>
> I'd like to (pre-)announce a number of SMT-LIB resources.
> These are available from http://www.grammatech.com/resources/smt
> [see the DISCLAIMER below].
> In particular, feedback and comments are highly welcome. These
> are all early versions and will be corrected and modified based
> on input received.
>
> 1) A tutorial - at the request of the SMT-LIB authors, I've written a
> tutorial on SMT-LIB v.2, with examples and a more informal, explanatory
> style than the formal reference manual.
> STATUS: The first complete draft is out for comment; a revision will be
> issued once comments are received. You are welcome to add your comments
> to those I have directly solicited. If you would find this useful to your
> students (particularly, perhaps, with the Eclipse plug-in below), I would
> be very interested in some collaboration.
>
> 2) jSMTLIB.jar - This Java (Java 1.6) software package includes the
> following capabilities [If you absolutely need Java 1.5 support, let me know]:
> a) an application that parses and type-checks SMT-LIB scripts (from files,
> direct user input, or through a network port)
> b) a Java API for programmatically creating and working with SMT-LIB scripts
> (and designed to be extensible - able to add commands, new concrete syntax,
> new back-end adapters, additional logics and theories, eventually new
> expression syntax)
> c) adapters that connect SMT-LIB to the input languages of some
> SMT solvers that do not (yet) (completely) conform to SMT-LIBv2
> (in particular, so far, Simplify 1.5.4, Yices 1.0.28, CVC3 2.2, Z3 2.11
> on Cygwin/Windows)
> STATUS: the package is available: (2.a) is documented and tested; the documentation
> for (2.b) is in progress; the implementations for (2.c) exist as early alpha
> versions but are not yet complete.
>
> I'd welcome interaction with individuals interested in using the API; the API
> is at present directed toward providing OpenJML a connection to SMT solvers
> through SMT-LIBv2, but its design would benefit from having other applications
> as well. (OpenJML is an implementation of JML tools, in particular ESC/Java2,
> built on OpenJDK - contact me if you are interested in that separate activity.)
>
> 3) A user guide for jSMTLIB.jar
> STATUS: Available and documents the jSMTLIB application (2a); the documentation of
> the Java API (2b), the adapter implementations (2c), and the Eclipse plug-in (4)
> are underway.
>
> 4) An Eclipse plug-in that encapsulates the jSMTLIB tool. This plug-in provides a
> custom SMT-LIB-aware GUI editor, with syntax coloring and with standard Eclipse
> problem markers for parse and type errors. It allows sending a script to a
> back-end SMT solver for execution, receiving and displaying the results in the GUI.
> Features such as grammar and type-aware navigation, refactoring tools, and
> a host of would-be-nice GUI embellishments are in progress.
> STATUS: Exists, works, and is available from the standard plug-in update site
> http://www.grammatech.com/resources/smt/jSMTLIB-UpdateSite (online help
> documentation is in draft form) (Eclipse 3.6, using Java 1.6)
>
> "5") I also have a validation suite for SMT-LIBv2 tools, that checks conformity to
> the SMT-LIBv2 standard. (It checks conformity of command syntax and semantics,
> not of the SMT solving capability.) I will make a public release once it is more
> automated and has had more experience with tools under development;
> in the meantime, I would be happy to share the suite's assessment of
> any tool under development, if the developers contact me.
>
> [DISCLAIMER: Though these items are hosted at grammatech.com, they are not products
> of GrammaTech, my employer, nor supported or warranted by the company.
> The usual disclaimer is included in the material - "AS IS" with no warranties, etc.
> The standard license is for academic or not-for-profit use; if you want to include
> them in other material or use them in a commercial product, please contact me.]
>
> David Cok
>
> _______________________________________________
> SMT-API mailing list
> SMT-API at cs.nyu.edu
> http://www.cs.nyu.edu/mailman/listinfo/smt-api
More information about the SMT-LIB
mailing list