Skip to content
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

add owi replay #442

Open
wants to merge 2 commits into
base: main
Choose a base branch
from
Open

add owi replay #442

wants to merge 2 commits into from

Conversation

zapashcanon
Copy link
Member

No description provided.

@zapashcanon
Copy link
Member Author

zapashcanon commented Nov 24, 2024

@filipeom, so I got the main mechanism working. Before completing this, I think it would be great if we could discuss the format used for representing model. I have a few questions:

  • I'll have to parse models in Owi, but the printing is done in Smt.ml, should we implement the parsing in Smt.ml or Owi? Having both in Smt.ml will make it easier to detect new incompatibilities but I'm not sure it's usefull for Smt.ml to parse them.
  • Is there a model format coming from the smtlib already?
  • Would you be OK in using another format than S-expressions ? I'm thinking about scfg which would work quite well IMO while allowing to display more complex structures in the future while maintaining good readability (I find S-expressions less readable than scfg). Also, I'm the author of the OCaml implementaiton of scfg. :-)

I'm also wondering if I should keep this as an owi replay command or simply add a --replay-file argument to owi sym (or owi run ?) and even maybe owi c etc.

@filipeom
Copy link
Collaborator

filipeom commented Nov 24, 2024

I'll have to parse models in Owi, but the printing is done in Smt.ml, should we implement the parsing in Smt.ml or Owi? Having both in Smt.ml will make it easier to detect new incompatibilities but I'm not sure it's usefull for Smt.ml to parse them.

I think it makes sense to also have it in smtml, even if we just implement it in Owi. I'd like to be able to do to_string to print a model and of_string to parse it.

Is there a model format coming from the smtlib already?

The current format is not smtlib compliant, I'd have to go over the spec again to fix the model printing. But I can do this pretty quickly, and provide a of_string function as well if you would like

Would you be OK in using another format than S-expressions ? I'm thinking about scfg which would work quite well IMO while allowing to display more complex structures in the future while maintaining good readability (I find S-expressions less readable than scfg). Also, I'm the author of the OCaml implementaiton of scfg. :-)

Yes this is fine with me. If this is to be done in smtml, ideally we would support the three formats (smtlib, json, and scfg)

@filipeom
Copy link
Collaborator

I'm also wondering if I should keep this as an owi replay command or simply add a --replay-file argument to owi sym (or owi run ?) and even maybe owi c etc.

Regarding this, I like the --replay-file option in owi run. Although, it might make more sense to have it in owi sym so that it is easy to use with owi c. But I don't dislike having the owi replay command, so to me you can leave it as is.

@zapashcanon
Copy link
Member Author

I made a draft PR in smtml for model parsing.

It makes sense in owi run but in owi sym unfortunately most options are incompatible with --replay-file. I think I'm going to leave it this way and think more about it.

I'll wait for the smtml model parsing to be done and then we should be good to go with this one ! :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants