Skip to content

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"