Skip to content

QAOA circuits cause Error 3211 with qiskit-ibm-runtime 0.37 #2193

@t-imamichi

Description

@t-imamichi

Describe the bug
The following QAOA circuit causes error 3211 with qiskit-ibm-runtime 0.37.0.
The QAOA circuit is generated by assign one of the two parameters with another parameter.
No error occurs with 0.35.0.

I also found that the new IQP does not return the error code 3211. See the error messages.

Steps to reproduce

import numpy as np
from qiskit import QuantumCircuit, generate_preset_pass_manager
from qiskit import __version__ as qiskit_version
from qiskit.circuit import ParameterVector
from qiskit.circuit.library import QAOAAnsatz, qaoa_ansatz
from qiskit.quantum_info import SparsePauliOp
from qiskit_ibm_runtime import QiskitRuntimeService, Sampler
from qiskit_ibm_runtime import __version__ as runtime_version

print(f"{qiskit_version=} {runtime_version=}")

op = SparsePauliOp(["ZIZI", "IZIZ", "ZIIZ"])
qaoa = qaoa_ansatz(op, reps=1)
x = ParameterVector("γ", 1)
qaoa = qaoa.assign_parameters({qaoa.parameters[1]: x[0]})
qc = QuantumCircuit(4)
qc.append(qaoa, range(4))
qc.measure_all()
# print(qc)

for name, iqp in [("primitives", "conventional IQP"), ("notebooks-internal", "new IQP")]:
    print(iqp)
    service = QiskitRuntimeService(name=name)
    backend = service.backend("test_eagle_us-east")
    pm = generate_preset_pass_manager(optimization_level=2, backend=backend)
    t_qc = pm.run(qc)

    sampler = Sampler(backend)
    params = np.ones(t_qc.num_parameters)
    try:
        job = sampler.run([(t_qc, params)])
        print(job)
        result = job.result()
        print(result)
    except Exception as ex:
        print(ex.message)
    print()
qiskit_version='1.4.2' runtime_version='0.37.0'
conventional IQP
<RuntimeJobV2('czgh0pjzj67g008sck1g', 'sampler')>
Unable to retrieve job result. Error code 3211; Job not valid. "Cannot bind Parameters (['γ[0]']) not present in expression."

new IQP
<RuntimeJobV2('cvgh0pots29s738teclg', 'sampler')>
Unable to retrieve job result. CircuitError: "Cannot bind Parameters (['γ[0]']) not present in expression.

Expected behavior
No error as same as 0.35.0

qiskit_version='1.4.2' runtime_version='0.35.0'
conventional IQP
<RuntimeJobV2('czgh11mzj67g008sck30', 'sampler')>
PrimitiveResult([SamplerPubResult(data=DataBin(meas=BitArray(<shape=(), num_shots=4096, num_bits=4>)), metadata={'circuit_metadata': {}})], metadata={'execution': {'execution_spans': ExecutionSpans([SliceSpan(<start='2025-03-24 07:58:01', stop='2025-03-24 07:58:08', size=4096>)])}, 'version': 2})

new IQP
<RuntimeJobV2('cvgh178ts29s738tedq0', 'sampler')>
PrimitiveResult([SamplerPubResult(data=DataBin(meas=BitArray(<shape=(), num_shots=4096, num_bits=4>)), metadata={'circuit_metadata': {}})], metadata={'execution': {'execution_spans': ExecutionSpans([SliceSpan(<start='2025-03-24 07:58:22', stop='2025-03-24 07:58:29', size=4096>)])}, 'version': 2})

Suggested solutions

Additional Information

  • qiskit-ibm-runtime version: 0.37.0
  • Qiskit version: 1.4.2
  • Python version: 3.12.9
  • Operating system: macOS 15.3.2

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions