This repo contains my notes and code related to the course Tensor Network.
This is a uv
project. Setting up the environment is easy:
- If you have not got
uv
installed, follow the instructions to install it. - Run
uv sync
to create an environment and get dependencies, including development dependencies that you need to run the code in a notebook.
We use poe
to run tools. Available commands are:
lab
: run Jupyter Labsync
: sync the code in notebooks to thetensor_network
packageformat
: format the code in notebooks- Checking: use ruff linter to check code
check_tensor_network
: check the exported code intensor_network
packagecheck
: check code in.
check_all
: check code in.
andtensor_network
precommit
: run pre-commit hooks
Sample usage:
# if your shell detects venvs automatically, you can run poe directly
poe lab
# if your shell does not detect venvs automatically, you can run uv run poe directly
uv run poe lab
Contributions are very welcome. Please file an issue or PR if you have any questions or suggestions.
A few points to note:
- The code should primarily live in notebooks, not Python scripts. We use
nbdev
to export useful code from notebooks totensor_network
package for reusability.
- Big thanks to Prof. Ran for the course
- Thanks to Gemini 2.0 for transcribing a lot of equations