Execution on C12 Quantum Cloud
C12 is building scalable carbon-based quantum computers. Classiq supports execution on C12 QPU-emulators.
Configuration
C12 introduces several customizable hardware parameters (Available through SDK only):
inilabel
The initial state specified using a binary label format, such as "00", "01", etc.
inistatevector
The initial state vector for each qubit, provided as a comma-separated list of complex values. Example: "1.+0.j, 0.+0.j, 0.+0.j, 0.+0.j"
Note: Either inilabel or inistatevector can be provided but not both.
ininoisy
Indicates whether noisy initialization of the circuit should be used.
Usage Example
If you are using Classiq IDE, simply choose C12 in the checkbox menu under Execution page.
Setting up Backend Preferences
from classiq.execution import C12BackendPreferences
from classiq import ExecutionPreferences, ExecutionSession, synthesize
backend_preferences = C12BackendPreferences(
backend_name="c12sim-iswap",
inilabel="00", # Either inilabel or inistatevector must be provided
# inistatevector="1.+0.j, 0.+0.j,", # Either inilabel or inistatevector must be provided
ininoisy=True,
)
execution_preferences = ExecutionPreferences(
num_shots=1000,
backend_preferences=backend_preferences,
)
Execute with ExecutionSession
Create your model, set execution preferences, synthesize, then run with ExecutionSession:
quantum_program = synthesize(your_model, preferences=preferences)
quantum_program = set_quantum_program_execution_preferences(
quantum_program, execution_preferences
)
with ExecutionSession(quantum_program) as session:
result = session.sample()
Supported Backends
- SIMULATOR = "c12sim_iswap"
- SQUARED = "squared-iswap"