Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

QASM3 load with qiskit-cpp

Abierto
#166 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
5/5
Tiempo estimado
Más de una semana
Aptitud para principiantes
45/100
Tipo de issue
Nueva funcionalidad
Claridad
Bastante claro
Estado de actividad
Activo
Stack tecnológico
cpp

Línea de trabajo

Start by locating qiskit-cpp's existing QuantumCircuit construction and any QASM parsing entry points; the issue names no C++ files or tests. Use Python's qiskit.qasm3.loads behavior as the reference, and consider how QASM3 input should become a QuantumCircuit that can be run by the C++ program. Done means QASM3 can be loaded and converted successfully.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

What should we add?
Current Issue

In the Python version of Qiskit, you can use qiskit.qasm3.loads to convert QASM3 into a QuantumCircuit and run that circuit.
However, qiskit-cpp cannot convert QASM3 into a QuantumCircuit.
Therefore, it is not possible to run QASM3 on the C++ program.

python program:

from qiskit import qasm3
from qiskit_ibm_runtime import QiskitRuntimeService, SamplerV2
from qiskit.transpiler import generate_preset_pass_manager

# Get backend
...

# Load a OpenQASM file
with open("simple.qasm", "r") as f:
    qasm_str = f.read()
qc = qasm3.loads(qasm_str)    # qiskit-cpp does not have this feature.

# Transpile
pm = generate_preset_pass_manager(target=backend.target, optimization_level=1)
isa_circuit = pm.run(qc)

# Run circuit
sampler = SamplerV2(mode=backend)
job = sampler.run([isa_circuit], shots=100)

# Get result
result = job.result();
print(result[0].data.meas.get_counts())
Request

I would like you to implement a feature in qiskit-cpp that loads QASM3 and converts it into a QuantumCircuit.
This will allow you to run QASM3 on the C++ program.

Lenguaje dominante
C++
Estrellas
41
Forks
26
Métricas de merge de PR
Sin PR fusionados en 30 d

Preparar el entorno

  • Sin Dockerfile ni archivo de Docker Compose
  • Tiene una plantilla de pull request
  • Sin guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de Qiskit/qiskit-cpp

Todos los issues de Qiskit/qiskit-cpp

Issues similares

Más issues de C++

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.