Skip to content

circuit visualization - why should we do a native package #256

@Roger-luo

Description

@Roger-luo

I think we all agree visualization is important for debugging especially for circuits (and perhaps all other levels). While currently, it is possible to create a picture on a given QASM2-compatible kernel program by emitting QASM2 string and read it as a qiskit circuit.

There are certain information get lost between compilation:

  • qiskit does not have the noise channels in our implementation and thus cannot visualize the noise channels within circuits to show where does the noise happen
  • we cannot annotate blocks of subroutines and the plot end up being inlining everything, for large circuit, this is very hard to read
  • because we are compiling things into QASM/qiskit circuit/cirq circuit, these language typically do not have control flow or structures such as a loop repeating some gate, a subroutine call to some stdlib function (e.g phase estimation calling qft as subroutine), it is more nature to visualize these structure directly on our IR

@stefan-o bring up these needs and I think this serves a good motivation to build our native plotting package for circuits on squin.

cc: @stefan-o

Metadata

Metadata

Assignees

No one assigned

    Labels

    rfcRequest for Comments

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions