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 .
Metadata
Release files for pygplib 2.3.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pygplib-2.3.2.tar.gz | 34.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pygplib-2.3.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 74.9 kB
Release files / pygplib-2.3.2.tar.gz
| Download URL | pygplib-2.3.2.tar.gz |
|---|---|
| Size | 34.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
db39dfc324acff426a71f02f482f1462e9a2165030cc7128ba19a1f01b47ee65
|
|
BLAKE2b-256 checksum How to use checksums |
884576f7fd37306da968afe3309252d191ae6a9295c838cd76af48e6ba067c11
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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
|
Release files / pygplib-2.3.2-py3-none-any.whl
| Download URL | pygplib-2.3.2-py3-none-any.whl |
|---|---|
| Size | 40.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
aadaa4e4fabdafac5d57229e7ce39a0cc65f9b4b52f6a82172c04614ee3b0159
|
|
BLAKE2b-256 checksum How to use checksums |
d9dac5f193426e601221a8d7602bfdf00d9d882ffc0cb871a4e42e9e888a8843
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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
|