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

Language and parser for static properties #34

Open
ondrej33 opened this issue Apr 26, 2024 · 1 comment
Open

Language and parser for static properties #34

ondrej33 opened this issue Apr 26, 2024 · 1 comment
Assignees

Comments

@ondrej33
Copy link
Member

To process "generic" static properties given by a formula, we need some sort of language/format for them. For now, the goal is to make an initial testable version, that is:

  1. come up with some simple syntax covering first-order logic (it might be worth it to check some solver tools for syntax ideas)
  2. implement a parser for the language (on backend)

The format should be user-friendly, and the parser should give readable error messages. The processing should also be easily modifiable. Later, we might enrich the language with some predefined "patterns", or something else.

@ondrej33 ondrej33 self-assigned this Apr 26, 2024
@ondrej33
Copy link
Member Author

ondrej33 commented May 2, 2024

A few notes after some initial discussion

  • At first, we will only consider quantification over Boolean variables. In future, we might add quantifying over whole Boolean states (vectors) if that seems necessary.
  • We will not allow free variables in the formulas (that could cause some ambiguity in how they are interpreted). This can also change later.
  • Lastly, when writing formulas, the users should be provided with some "readable" version of the syntax (clickable quantifier symbols and such) so that they do not need to remember the actual syntax.

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

No branches or pull requests

1 participant