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
uvinstalled, follow the instructions to install it. - Run
uv syncto 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_networkpackageformat: format the code in notebooks- Checking: use ruff linter to check code
check_tensor_network: check the exported code intensor_networkpackagecheck: 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 labSee the repo on Huggingface.
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
nbdevto export useful code from notebooks totensor_networkpackage for reusability. - Run
pre-commit install, oruv run pre-commit installif your shell doesn't autodetect venv
- Big thanks to Prof. Ran for the course
- Thanks to Gemini 2.0 and Claude Sonnet for transcribing a lot of equations