Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Getting Started

TNC is not yet on crates.io. Instead, it can be added to your project by running

cargo add --git https://github.com/qc-tum/TNC tnc

or by directly modifying your Cargo.toml file to include

[dependencies]
tnc = { git = "https://github.com/qc-tum/TNC.git" }

Features

There are no default features activated. The list of optional features to include is:

  • cotengra: Enables Rust bindings to the tree annealing, tree reconfiguration and tree tempering methods of cotengra (for improving contraction paths)

System Requirements

As noted in the README, the library relies on system dependencies. To install them, run

sudo apt install libhdf5-dev openmpi-bin libopenmpi-dev libboost-program-options-dev

Furthermore, the library relies on C++ libraries that are being built when building the library. For this, cmake and a C++ compiler are required on the system.

Optionally, to use the cotengra feature, Python must be installed and the following Python packages must be installed:

pip install cotengra kahypar optuna