Skip to main content

A command-line tool for automatically classifying LCL problems on rooted trees.

Project description

Description

This folder contains two programs that partially a round complexity of homogenous LCL problem on (binary) trees.

  • log_decider
    • decides whether a problem is log(n) solvable or it is inherently harder
  • log_star_decider
    • decides whether a problem is log*(n) solvable or it is inherently harder

Usage

  1. Install dependencies by pip3 install -r requirements.

  2. Run python3 log_decider.py or python3 log_star_decider.py and describe (on standard input) constraints of a problem. For example:

Note that one needs to first run the classifier (python -m rooted_tree_classifier) and only afterwards provide an input on a separate line.

python -m rooted_tree_classifier
111

Expected output is O(log*n)

python -m rooted_tree_classifier
112 121 122

Expected output is O(log*n)

python -m rooted_tree_classifier
121 131 212 323

Expected output is O(log*n)

python -m rooted_tree_classifier
112 121

Expected output is Θ(log n)

python -m rooted_tree_classifier
112 123 131

Expected output is Θ(log n)

python -m rooted_tree_classifier
121 212

Expected output is Ω(n)

Tests

To execute tests, run the following from the root directory:

python -m unittest discover

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

rooted-tree-classifier-0.1.2.tar.gz (5.3 kB view hashes)

Uploaded Source

Built Distribution

rooted_tree_classifier-0.1.2-py3-none-any.whl (6.8 kB view hashes)

Uploaded Python 3

Supported by

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