- qtree - main source code. Contains functions for various operations
- examples - scripts for specific purposes, such as performance testing and complexity estimation
- thirdparty - third-party programs to calculate tree decomposition
- doc - documentation in the Sphinx format
Qtree depends on external tree decomposition programs, otherwise only simple heuristics will be available. The instructions for the supported programs are provided below. We recommend to use the solver of Tamaki for its higher speed.
Clone the repository
git clone https://github.com/qbit-/quickbb.git
check that it works for you:
cd quickbb; ./run_quickbb_64.sh --cnffile test.cnf
and add it to PATH:
export PATH=$PATH:`cwd`
Clone the repository
git clone https://github.com/TCS-Meiji/PACE2017-TrackA.git
Build the binary (requires Java compiler):
cd PACE2017-TrackA; make
chmod +x tw-exact tw-heuristic
and add it to PATH:
export PATH=$PATH:`cwd`
To install run
pip install qtree
It is also possible to work with the source code without installation. However, you need to make sure that tree decomposition programs are available either in the thirdparty folder or in your PATH. Please clone the repository recursively and build the thirdparty code.
git clone --recursive https://github.com/Huawei-HiQ/qtree.git
cd qtree/thirdparty/tamaki_treewidth
make && chmod +x tw-exact
Finally, install with pip
cd /path/to/qtree/repository
pip install -e .