Python First-Order Graph Property Library
Project description
Python First-Order Graph Property Library
Pygplib (Python First-Order Graph Property Library) is a Python module for constructing, manipulating, and encoding graph properties expressible with first-order logic of graphs. It serves as a prototyping tool to tackle with various graph related applications. It provides access to state-of-the-art satisfiability technologies without advanced knowledge. Basic steps to follow are :
Express a graph property of interest as a first-order formula.
Set a graph structure, and encode a first-order formula into CNF, a canonical normal form for propositional formulas.
Apply satisfiability tools to the CNF to compute satisfying assignments.
Decode the result into an assignment of first-order variables.
Documentation
For installation, examples, tutorials, and so on, please see online documentation .
Citation
Please cite the following paper if you use pygplib:
@INPROCEEDINGS {10356599, author = {T. Toda and T. Ito and J. Kawahara and T. Soh and A. Suzuki and J. Teruyama}, booktitle = {2023 IEEE 35th International Conference on Tools with Artificial Intelligence (ICTAI)}, title = {Solving Reconfiguration Problems of First-Order Expressible Properties of Graph Vertices with Boolean Satisfiability}, year = {2023}, volume = {}, issn = {}, pages = {294-302}, abstract = {This paper presents a unified framework for capturing a variety of graph reconfiguration problems in terms of firstorder expressible properties and proposes a Boolean encoding for formulas in the first-order logic of graphs based on the exploitation of fundamental properties of graphs. We show that a variety of graph reconfiguration problems captured in our framework can be computed in a unified way by combining our encoding and Boolean satisfiability solver in a bounded model checking approach but allowing us to use quantifiers and predicates on vertices to express reconfiguration properties.}, keywords = {automata;model checking;encoding;artificial intelligence}, doi = {10.1109/ICTAI59109.2023.00050}, url = {https://doi.ieeecomputersociety.org/10.1109/ICTAI59109.2023.00050}, publisher = {IEEE Computer Society}, address = {Los Alamitos, CA, USA}, month = {nov} }
Bugs/Requests/Discussions
Please report bugs and requests from GitHub Issues , and ask questions from GitHub Discussions .
History
Please see CHANGES .
License
Please see LICENSE .
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file pygplib-2.2.0.tar.gz
.
File metadata
- Download URL: pygplib-2.2.0.tar.gz
- Upload date:
- Size: 30.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f0fcfbad95524ae4f7da75b14cf966c51bc124c3496e3e8c2d55a5a31c7e452c |
|
MD5 | b9ba5b0bb1a405881bc03d604d28ffa2 |
|
BLAKE2b-256 | 0ffcffb23cf609e670abbaa813cde83cae536fe2e2b2b95f7c94e8a0f32d9b88 |
File details
Details for the file pygplib-2.2.0-py3-none-any.whl
.
File metadata
- Download URL: pygplib-2.2.0-py3-none-any.whl
- Upload date:
- Size: 36.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e9a0966dbcc6978e794de6d528a50df60e0446c385980ac39eb06566eea49f6c |
|
MD5 | be2bbe0c1e2e7d75ee5987b874026269 |
|
BLAKE2b-256 | d24b84fa8a9e95b0b2081a6a55cc15b34fe8c9af9b60001e0325bb654c061716 |