-
Notifications
You must be signed in to change notification settings - Fork 33
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Missing value for option --input
for polymorphic SMT syntax
#933
Comments
Thanks for the report! With the legacy frontend, Alt-Ergo only supported psmt2 (so with the legacy frontend we actually parse all smt2 files as psmt2). Hence, historically, the When writing the Dolmen frontend we interpreted @claudemarche would that solution be acceptable for you, or is having separate |
In fact I don't understand anymore. At first, it seemed to me that Alt-Ergo was behaving differently on |
Alt-Ergo should behave identically on If the file uses polymorphism, it currently depends on the frontend:
We can make the Dolmen frontend behave like the legacy frontend and accept polymorphic syntax in |
My mistake, I tested without passing the To my point of view, I don't see any use of Alt-Ergo rejecting the polymorphic syntax in a |
By the way, it is confusing to me that Alt-Ergo accepts to parse a |
I agree — one of those two need to happen. We will discuss internally and pick one of these for the next release.
We are not maintaining the legacy one ;) The support for SMT-LIB input in the legacy frontend has always been experimental and was never officially supported; it will be dropped entirely when we switch to using Dolmen by default. It is provided by psmt2-frontend whose integration into Alt-Ergo suffers from design issues (it targets the wrong internal representation, essentially) that make it hard to support SMT-LIB features natively. Official support for SMT-LIB input is through the Dolmen frontend only. |
At the dev meeting today we chose to always use psmt2 as was done in the previous frontend. |
This makes the Dolmen frontend behave like the legacy frontend and always allows polymorphic extensions of smt-lib input (this means .smt2 and .psmt2 files as well as the `--input smtlib2` option). As pointed out by @Gbury this means that we need to override Dolmen's language inference for `.smt2` files. We also need to properly take care of `.zip` input. Fixes OCamlPro#933
This makes the Dolmen frontend behave like the legacy frontend and always allows polymorphic extensions of smt-lib input (this means .smt2 and .psmt2 files as well as the `--input smtlib2` option). As pointed out by @Gbury this means that we need to override Dolmen's language inference for `.smt2` files. We also need to properly take care of `.zip` input. Fixes #933
Following discussions at the Alt-Ergo Club meeting last week, it was agreed that it was better to support SMT-LIB2 format by default for ".smt2" files and to only enable the polymorphic extensions for ".psmt2" files. This patch performs that change, partially reverting OCamlPro#948 / 42e9ef1 and uses the same polymorphic variant type as Dolmen for the same purpose. In order to accomodate OCamlPro#933, introduce a new "psmt2" input mode.
Following discussions at the Alt-Ergo Club meeting last week, it was agreed that it was better to support SMT-LIB2 format by default for ".smt2" files and to only enable the polymorphic extensions for ".psmt2" files. This patch performs that change, partially reverting #948 / 42e9ef1 and uses the same polymorphic variant type as Dolmen for the same purpose. In order to accomodate #933, introduce a new "psmt2" input mode.
With the Dolmen frontend of Alt-Ergo, it is possible to give an input file in the SMT syntax. It even supports the upcoming 3.0 version of the syntax which allows one to add prenex type quantification on hypotheses. Yet, Alt-Ergo will accepts the polymorphic syntax only if the given file has the
.psmt2
extension.It should be possible though to use this frontend parser even of the input file has another extension, or if input is taken from standard input, say, by passing the option
--input
. Unfortunately there does not seem to have a possible value for this option corresponding topsmt2
. Please add it!The text was updated successfully, but these errors were encountered: