quri_parts.qulacs.circuit package

convert_gate(gate)
Parameters:

gate (QuantumGate)

Return type:

QuantumGateBase

convert_circuit(circuit)
Parameters:

circuit (ImmutableQuantumCircuit)

Return type:

QuantumCircuit

convert_parametric_circuit(circuit)
Parameters:

circuit (ParametricQuantumCircuitProtocol)

Return type:

tuple[ParametricQuantumCircuit, Callable[[Sequence[float]], Sequence[float]]]

compile_circuit(circuit)

Compiles a quri-parts circuit into an ImmutableQuantumCircuit that holds the corresponding qulacs circuit on memory. The qulacs circuit can be accessed by the .qulacs_circuit property.

Example:

>>> circuit = QuantumCircuit(2)
>>> circuit.add_X_gate(0)
>>> circuit.add_X_gate(1)

Get compiled circuit

>>> compiled_circuit = compile_circuit(circuit)
>>> compiled_qulacs_circuit = compiled_circuit.qulacs_circuit
Parameters:

circuit (ImmutableQuantumCircuit)

Return type:

_QulacsCircuit

compile_parametric_circuit(circuit)

Compiles a:

  • quri-parts ParametricQuantumCircuit into an

    ImmutableParametricQuantumCircuit that holds the corresponding qulacs parametric circuit on memory.

  • quri-parts LinearMappedParametricQuantumCircuit into an

    ImmutableParametricQuantumCircuit that holds the corresponding qulacs parametric circuit on memory.

The qulacs circuit can be accessed by the .qulacs_circuit property.

The parameter mapper that maps the quri-parts circuit parameters to qulacs parametric circuit parameters can be accessed by the .param_mapper property.

Example:

>>> parametric_circuit = ParametricQuantumCircuit(2)
>>> parametric_circuit.add_ParametricRX_gate(0)
>>> parametric_circuit.add_ParametricRX_gate(1)
  1. Get compiled parametric circuit

>>> compiled_parametric_circuit = compile_circuit(circuit)
>>> compiled_qulacs_circuit = compiled_circuit.qulacs_circuit
  1. Get qulacs circuit parameters

>>> param_mapper = compiled_circuit.param_mapper
>>> quri_parts_circuit_param = [0, 1]
>>> qulacs_circuit_param = param_mapper(quri_parts_circuit_param)
Parameters:

circuit (ParametricQuantumCircuit | LinearMappedParametricQuantumCircuit)

Return type:

_QulacsUnboundParametricCircuit | _QulacsLinearMappedUnboundParametricCircuit

circuit_from_qulacs(qulacs_circuit)

Converts a qulacs.QuantumCircuit to ImmutableQuantumCircuit.

Parameters:

qulacs_circuit (QuantumCircuit)

Return type:

ImmutableQuantumCircuit

Subpackages

Submodules