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

Adding get_requires() to Python bindings #1019

Merged
merged 2 commits into from
Apr 2, 2024
Merged

Conversation

Robertorosmaninho
Copy link
Collaborator

@Robertorosmaninho Robertorosmaninho commented Apr 2, 2024

This is a requirement from the Math Proof Generation Team of $Piˆ2$ to get easy access to the Pattern of a requires clause.

This PR must be merged before this PyK PR that will properly expose this binding to the Pi2 project.

@@ -179,7 +179,8 @@ void bind_ast(py::module_ &m) {
py::arg("is_claim") = false)
.def_property_readonly("is_claim", &kore_axiom_declaration::is_claim)
.def("add_pattern", &kore_axiom_declaration::add_pattern)
.def_property_readonly("pattern", &kore_axiom_declaration::get_pattern);
.def_property_readonly("pattern", &kore_axiom_declaration::get_pattern)
.def("get_requires", &kore_axiom_declaration::get_requires);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should be a read only property, and shouldn't have the get_ prefix

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, Bruce! I've just modified it as required!

@rv-jenkins rv-jenkins merged commit 283b97b into master Apr 2, 2024
8 checks passed
@rv-jenkins rv-jenkins deleted the get-requires-binding branch April 2, 2024 23:02
rv-jenkins pushed a commit to runtimeverification/pyk that referenced this pull request Apr 4, 2024
This PR introduces a new file, `utils.py`, which should contain
auxiliary functions that need to be converted from and to llvm but don't
set any field on an object.

In this context we're using a function from llvm backend's
[pattern_matching.cpp](https://github.com/runtimeverification/llvm-backend/blob/e2f583a05b9bf362deabd58f8acc1ce534aaf4c4/lib/ast/pattern_matching.cpp#L174)
to avoid reimplement it in Python. This function is exported as Pyhton
binding in this
[PR](runtimeverification/llvm-backend#1019), and
therefore, the current PR can only be merged after we merge the LLVM
Backend one.

---------

Co-authored-by: devops <devops@runtimeverification.com>
Baltoli pushed a commit to runtimeverification/k that referenced this pull request Apr 9, 2024
This PR introduces a new file, `utils.py`, which should contain
auxiliary functions that need to be converted from and to llvm but don't
set any field on an object.

In this context we're using a function from llvm backend's
[pattern_matching.cpp](https://github.com/runtimeverification/llvm-backend/blob/e2f583a05b9bf362deabd58f8acc1ce534aaf4c4/lib/ast/pattern_matching.cpp#L174)
to avoid reimplement it in Python. This function is exported as Pyhton
binding in this
[PR](runtimeverification/llvm-backend#1019), and
therefore, the current PR can only be merged after we merge the LLVM
Backend one.

---------

Co-authored-by: devops <devops@runtimeverification.com>
Baltoli pushed a commit to runtimeverification/k that referenced this pull request Apr 9, 2024
This PR introduces a new file, `utils.py`, which should contain
auxiliary functions that need to be converted from and to llvm but don't
set any field on an object.

In this context we're using a function from llvm backend's
[pattern_matching.cpp](https://github.com/runtimeverification/llvm-backend/blob/e2f583a05b9bf362deabd58f8acc1ce534aaf4c4/lib/ast/pattern_matching.cpp#L174)
to avoid reimplement it in Python. This function is exported as Pyhton
binding in this
[PR](runtimeverification/llvm-backend#1019), and
therefore, the current PR can only be merged after we merge the LLVM
Backend one.

---------

Co-authored-by: devops <devops@runtimeverification.com>
Baltoli pushed a commit to runtimeverification/k that referenced this pull request Apr 9, 2024
This PR introduces a new file, `utils.py`, which should contain
auxiliary functions that need to be converted from and to llvm but don't
set any field on an object.

In this context we're using a function from llvm backend's
[pattern_matching.cpp](https://github.com/runtimeverification/llvm-backend/blob/e2f583a05b9bf362deabd58f8acc1ce534aaf4c4/lib/ast/pattern_matching.cpp#L174)
to avoid reimplement it in Python. This function is exported as Pyhton
binding in this
[PR](runtimeverification/llvm-backend#1019), and
therefore, the current PR can only be merged after we merge the LLVM
Backend one.

---------

Co-authored-by: devops <devops@runtimeverification.com>
Baltoli pushed a commit to runtimeverification/k that referenced this pull request Apr 10, 2024
This PR introduces a new file, `utils.py`, which should contain
auxiliary functions that need to be converted from and to llvm but don't
set any field on an object.

In this context we're using a function from llvm backend's
[pattern_matching.cpp](https://github.com/runtimeverification/llvm-backend/blob/e2f583a05b9bf362deabd58f8acc1ce534aaf4c4/lib/ast/pattern_matching.cpp#L174)
to avoid reimplement it in Python. This function is exported as Pyhton
binding in this
[PR](runtimeverification/llvm-backend#1019), and
therefore, the current PR can only be merged after we merge the LLVM
Backend one.

---------

Co-authored-by: devops <devops@runtimeverification.com>
Baltoli pushed a commit to runtimeverification/k that referenced this pull request Apr 10, 2024
This PR introduces a new file, `utils.py`, which should contain
auxiliary functions that need to be converted from and to llvm but don't
set any field on an object.

In this context we're using a function from llvm backend's
[pattern_matching.cpp](https://github.com/runtimeverification/llvm-backend/blob/e2f583a05b9bf362deabd58f8acc1ce534aaf4c4/lib/ast/pattern_matching.cpp#L174)
to avoid reimplement it in Python. This function is exported as Pyhton
binding in this
[PR](runtimeverification/llvm-backend#1019), and
therefore, the current PR can only be merged after we merge the LLVM
Backend one.

---------

Co-authored-by: devops <devops@runtimeverification.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants