|
Coto
Abstract additive quantum diagrams
|
Theoretical research, experiments and implementation of abstract additive quantum decision diagrams, as part of a student research project.
To build the project, you must have Clang, CMake and Ninja installed. The code uses some C++23 features, so a recent version of clang++ is required. Other versions probably work, but I personally use the following on my machine:
After building the project (steps 1. and 2. above), simply run ./build/prompt. You can then enter QASM instructions, for example
This prompt utility comes with a few available run statements that should be ;-terminated:
@build, @inst, @instantiate - create a new diagram@list, @actions - list the actions (gate applicaitons) to be performed@display, @evaluate, @eval - display the evaluation of the current diagram@describe, @desc - display the description of the current diagram@help, @man, @manual - display a help messageApplying gates to qubits is not performed immediately after the statement is entered, and should be triggered by a @display;.
The prompt executable can also take a .qasm file path as an argument, in this case it quits after executing all statements in the file, without entering interactive mode.
Presentation of this repository's main directories:
.github/workflows GitHub actions continuous integration (CI) and continous deployment (CD) configuration filestest directory and marked as ready for testing in CMakeLists.txtarchives Legacy documents or code, that still should be indexeddoc Theory documents (basically, LaTeX)include Code header files (.h C++ files)ref References, code or case studies that can be used as exampless6 Final report and presentation for semester 6 (in French)s7 Final report and presentation for semester 6 (in French)src Source code (.cpp C++ files, not headers)test Test code (.cpp C++ files)