An interactive tool for the ZX-calculus
Project description
The ZX-calculus gives us a handy way to represent and work with quantum computations. ZXLive is an interactive tool for working with ZX. Draw graphs or load circuits and apply ZX rules. Intended for experimenting, building proofs, helping to write papers, showing off, or simply learning about ZX and quantum computing. It is powered by the pyzx open source library under the hood. The documentation is available at https://zxlive.readthedocs.io/
This project is in a pretty early stage, with lots more to come. Have a look at the Issue Tracker to see what's in the pipeline.
Instructions
To install from source, you need Python >= 3.9 and pip. If you have those, just run:
git clone https://github.com/zxcalc/zxlive.git
cd zxlive
pip install .
Then, you can run ZXLive by typing zxlive.
Note that ZXLive requires the most recent development version of PyZX. If you already have a version of PyZX installed, first uninstall it with pip uninstall pyzx, and then run pip install . in the ZXLive folder (or manually install the latest PyZX version using pip install @git+https://github.com/zxcalc/pyzx.git).
Testing
To ensure the quality and correctness of this project, several testing and linting tools are utilized. Below are the steps to run the tests and checks:
1. Static Type Checks with mypy
You can run mypy to perform static type checking:
mypy zxlive
2. Unit Tests with pytest
Execute the test suite using pytest to ensure all tests pass:
pytest
Documentation
This project uses Sphinx to build a ReadTheDocs page. In addition, it uses the MyST preprocessor to allow us to write documentation in a Markdown-like format rather than Sphinx's native rich structured text format.
The documentation can be built with
cd doc
make html
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file zxlive-0.3.0.tar.gz.
File metadata
- Download URL: zxlive-0.3.0.tar.gz
- Upload date:
- Size: 2.4 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c00330fcae1358fe57d75d69f2c11d4cddc7be4625c6e3e4a36d1d8c00019ad3
|
|
| MD5 |
aea6a131b0e5bd80c226a63c0538e421
|
|
| BLAKE2b-256 |
7f40cc881087560491e503e700cc2204ca06aa7dd1f58015ed7e9b04bcea8b79
|
File details
Details for the file zxlive-0.3.0-py3-none-any.whl.
File metadata
- Download URL: zxlive-0.3.0-py3-none-any.whl
- Upload date:
- Size: 2.4 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2c71bab5ba02de9caeac5c0dcb0beda5c3dc70b0318e023e71d8407ca52223c5
|
|
| MD5 |
26efb21e7acce3131d4971cdbcd6f276
|
|
| BLAKE2b-256 |
bed6e440dbba06e5ff49965cede19ce2395901a891a2c41753a0910a8c88a2d7
|