First Circuit

A QuantumCircuit is the program you push through the SDK. Construct it, add gates, then run it.

Create and inspect

from microquantum import QuantumCircuit

qc = QuantumCircuit(2)     # two qubits, |00>
qc.h(0)                    # Hadamard on qubit 0
qc.cx(0, 1)                # CNOT, control=0 target=1

print(qc.num_qubits)       # 2
print(qc.depth())          # 2
print(qc)                  # textual circuit drawing

Unitary and state

unitary = qc.get_unitary()
print(unitary.shape)              # (4, 4)

state = qc.run()
print(state)                      # StateVector: ~|00> + |11>

Measurements

Shots sample the output distribution. The same circuit run through a backend counts samples; see First Measurement.

Parameters

Circuits can carry symbolic parameters that are bound before execution:

from microquantum import Parameter, QuantumCircuit

theta = Parameter("theta")          # symbolic parameter
pqc = QuantumCircuit(1)
pqc.rx(theta, 0)

bound = pqc.bind_parameters({theta: 0.5})   # new circuit, theta -> 0.5
print(bound)

See Parameters for details on parameters, binding and sweeps.

Next: First Measurement.