Skip to content

Add conversion between jeff and Qiskit #60

@denialhaag

Description

@denialhaag

Description

To ensure compatibility with the greater ecosystem, it would be nice to have conversions between jeff and Qiskit.

A first version of these conversions does not need to cover jeff's full capabilities. A minimal implementation should be able to round-trip most, if not all, straight-line quantum programs.

As a starting point, consider the following circuit (taken from Qiskit's documentation):

qr = QuantumRegister(2, "q")
cr = ClassicalRegister(2, "c")
qc = QuantumCircuit(qr, cr)

qc.x([0, 1])
qc.h(0)
qc.cx(0, 1)
qc.ry(-2 * pi / 3, 1)
qc.measure([0, 1], [0, 1])

Given the limited scope, it should be possible to implement the conversions using Qiskit's new C API in combination with the C++ builder.

Acceptance criteria

  • Most straight-line quantum programs can be round-tripped
  • Implementation builds on Qiskit's C API

Out-of-scope follow-ups

Support for all of jeff's operations can be added in follow-up issues.

Metadata

Metadata

Assignees

No one assigned

    Labels

    C-feature-acceptedCategory: A feature request that has been accepted pending implementation

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions