Features
- Numerical and symbolic simulation of quantum algorithms
- Plot state and current operation, density matrix and measurement graphs
- The state values can be represented as angles, which helps in the analysis of the fourrier quantum transform.
- Operations can be performed directly on the instantiated qubit object or using qubit indices.
- Support GPU
Table of Contents
Installation
pip install logicqubit-gpu
Startup
logicQuBit = LogicQuBit(n_qubits, symbolic = True)
Where n_qubits is the number of qubits, and symbolic defines whether the values a and b of the qubits will be symbolic or not, if the symbolic input is omitted the calculation will be numeric.
To instantiate a qubit
q = Qubit()
To instantiate a qubit register
reg = QubitRegister(num_qubits)
Operations
Operations on one qubit
The operation can be performed as q.Gate(parameters) or logicQuBit.Gate(id_qubit, parameters).
Operations on two qubits
In this case, the operation can be performed as q.Gate(control_qubit, parameters) or logicQuBit.Gate(control_qubit, target_qubit, parameters).
*The need for parameters depends on the type of gate.
List of available gates
Single-qubit gates: X, Y, Z, V, S, T, H, RX, RY, RZ, U, U1, U2, U3.
Two-qubits gates: CX or CNOT, CY, CZ, CV, CS, CT, CRX, CRY, CRZ, CU, CU1, CU2, CU3, SWAP.
Three-qubits gates: CCX or Toffoli, Fredkin.
Measure
Measure the expected value of one or more qubits
result = logicQuBit.Measure([q1,q2,..,qn])
Measure one shot on a qubit
value = logicQuBit.Measure_One(qubit)
Plot graphs and print state
Plot expected values
logicQuBit.plot()
Generate a graph of the values obtained by the Measure([...]).
Plot the density matrix
logicQuBit.PlotDensityMatrix()
Print the current state
logicQuBit.PrintState()
Print the current state as angles
logicQuBit.getPsiAtAngles(degree=True)
The degree variable defines whether the result will be displayed in degrees or radians.
Code sample
from logicqubit.logic import *
logicQuBit = LogicQuBit(3)
a = Qubit()
b = Qubit()
c = Qubit()
a.H()
b.H()
c.CCX(a,b) # and operation
logicQuBit.Measure([c])
logicQuBit.Plot()
Other code samples
Release files for logicqubit-gpu 1.6.4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| logicqubit_gpu-1.6.4.tar.gz | 18.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| logicqubit_gpu-1.6.4-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 39.2 kB
Release files / logicqubit_gpu-1.6.4.tar.gz
| Download URL | logicqubit_gpu-1.6.4.tar.gz |
|---|---|
| Size | 18.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d57f0372fa0a6692addf848a1b0890f6a7bf4eb21436ef14e9937ad2cc4e9b81
|
|
BLAKE2b-256 checksum How to use checksums |
49609df8e0e9ba3724c2f5b515bb1b96e615327d93e7412e1e18c472387237c0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.12.4
|
Release files / logicqubit_gpu-1.6.4-py3-none-any.whl
| Download URL | logicqubit_gpu-1.6.4-py3-none-any.whl |
|---|---|
| Size | 20.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
6837e617625cec887c2dc5e3e2ca4bd6d7ec3976a110089dc85aa823467783b1
|
|
BLAKE2b-256 checksum How to use checksums |
8c789c8a0584bbc970705adb9b8783b3d2462f3e1721f8bba1b7bf73ae18918c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.12.4
|