Basic circuit execution¶
This notebooks illustrates how you can run your qiskit code on the Quantum Inspire platform.
This notebook makes the following assumptions:¶
The qi cli tool is installed and you are logged in, see these instructions
account exists in the Quantum Inspire platform
Pennylane plugin installed in the same environment as this notebook
The necessary imports¶
import pennylane as qml
from qiskit_quantuminspire.qi_provider import QIProvider
from pennylane_quantuminspire.qi_device import QIDevice
What QI Backends are available?¶
# Show all current supported backends:
provider = QIProvider()
print(provider.backends())
Choose your backend¶
We will choose the QX emulator
# Get Quantum Inspire's simulator backend:
backend = provider.get_backend("QX emulator")
# Instantiate a Pennylane device based on chosen backend
demo_device = QIDevice(backend)
Create your Circuit¶
Let’s create a bell state circuit.
@qml.qnode(demo_device)
def bell_state():
qml.Hadamard(wires=0)
qml.CNOT(wires=[0, 1])
return [qml.expval(qml.Z(x)) for x in range(2)]
Run the job and get results¶
Let’s run the circuit! Be aware that if your circuit contains gates that are not supported by the target, compilation errors may arise.
# Execute the circuit
result = bell_state()
print(result)