Skip to main content

Convert PDDL planning problems to HOA (Hanoi Omega Automata) format

Project description

pddl2hoa

pddl2hoa is a Python tool that converts PDDL (Planning Domain Definition Language) planning problems into HOA (Hanoi Omega Automata) format. This enables downstream analysis with formal methods tools and automata-based verification frameworks.


Features

  • Parse and analyze PDDL domain and problem files
  • Convert planning goals into equivalent HOA automata
  • Generate Strategy Templates for PDDL domains and problems (must install Pestel seperately)
  • Compatible with tools that support HOA format (e.g., Spot, Pestel)
  • Designed for integration into formal methods pipelines

Installation

Install via uv (recommended):

uv pip install pddl2hoa

Or from source:

git clone https://github.com/yourusername/pddl2hoa.git
cd pddl2hoa
uv pip install .

Usage

After installation, use the CLI tool:

pddl2hoa domain.pddl problem.pddl > edge_labeled_HOA.hoa

Or use it as a Python library:

from pddl2hoa import convert_pddl_to_hoa

convert_pddl_to_hoa("domain.pddl", "problem.pddl")

Converting from other formats to HOA

This library is designed to be extensible. You can convert almost any domain with a graph-based structure into an HOA representation by subclassing the TurnBasedGame abstract base class in game.py. Once your game format is implemented, you can call the format_hoa method from generate_hoa.py to produce a corresponding HOA graph.


Contributing

Pull requests are welcome! For major changes, please open an issue first to discuss what you’d like to change.


Links

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

pddl2hoa-0.1.2.tar.gz (7.0 kB view details)

Uploaded Source

Built Distribution

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

pddl2hoa-0.1.2-py3-none-any.whl (7.6 kB view details)

Uploaded Python 3

File details

Details for the file pddl2hoa-0.1.2.tar.gz.

File metadata

  • Download URL: pddl2hoa-0.1.2.tar.gz
  • Upload date:
  • Size: 7.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.13

File hashes

Hashes for pddl2hoa-0.1.2.tar.gz
Algorithm Hash digest
SHA256 032f3c1968245224a6c74e359630a585f2a1e532be22ebeb131855c272eacf38
MD5 ec42ec6bbd3ca86f1a7977a643e0f96c
BLAKE2b-256 03c1f8c8c0159dbcf169729572cec522b14ec79f99912e5fcc9401c771a8b7c3

See more details on using hashes here.

File details

Details for the file pddl2hoa-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: pddl2hoa-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 7.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.13

File hashes

Hashes for pddl2hoa-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 21a47f9fa39eff2d5d6f6bdd1c41c2a52251f429354c3f804f766669a692ff95
MD5 03546e9cb93340e4eeea14491072c2e3
BLAKE2b-256 2b2dd7312aad19786eb817c0c892db6e42619d6f17ae2a7aa0ff52cb763adae5

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