Skip to main content

Python First-Order Graph Property Library

Project description

PyPI - Version PyPI - Python Versions Test Coverage License Documentation Status

Python First-Order Graph Property Library

pygplib

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

pygplib-2.3.2.tar.gz (34.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pygplib-2.3.2-py3-none-any.whl (40.6 kB view details)

Uploaded Python 3

File details

Details for the file pygplib-2.3.2.tar.gz.

File metadata

  • Download URL: pygplib-2.3.2.tar.gz
  • Upload date:
  • Size: 34.3 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

Hashes for pygplib-2.3.2.tar.gz
Algorithm Hash digest
SHA256 db39dfc324acff426a71f02f482f1462e9a2165030cc7128ba19a1f01b47ee65
MD5 ec6e9846119a367e966944be23489d65
BLAKE2b-256 884576f7fd37306da968afe3309252d191ae6a9295c838cd76af48e6ba067c11

See more details on using hashes here.

File details

Details for the file pygplib-2.3.2-py3-none-any.whl.

File metadata

  • Download URL: pygplib-2.3.2-py3-none-any.whl
  • Upload date:
  • Size: 40.6 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

Hashes for pygplib-2.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 aadaa4e4fabdafac5d57229e7ce39a0cc65f9b4b52f6a82172c04614ee3b0159
MD5 b5267d23ca9f66e8286f86daae99be88
BLAKE2b-256 d9dac5f193426e601221a8d7602bfdf00d9d882ffc0cb871a4e42e9e888a8843

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page