You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We are considering porting a version of the stim dialect from xdsl into xdsl-quantum, but there needs to be some discussion on how this is done.
The original dialect was for direct compatability of the existing QSSA and QREF dialects with the stabiliser simulator tool Stim.
The main use of Stim in existing compiler toolchains is for calibrating decoders for error-correction, which requires the circuit to be run and a model of the hardware it will be run on. There are now other
The problems are:
The stim dialect has too many duplicated operations, and should be streamlined to only contain things relevant to stabiliser simulation
It is too specific to the Stim simulator, rather than fulfilling a more general purpose i.e. decoder calibration
The key properties of the Stim dialect are:
stabilisers and stabiliser measurements, which must be adapted to use QuantumOperationAttribute
hardware specific attributes, ie. layout, noise model - which should be moved to their own dialect
detectors, which should be given an explicit operation
ability to run a stabiliser simulator (e.g. Stim) as part of the overall compiler pass pipeline
Looking for comments on:
splitting the dialect into several more purposeful dialects
ways to adapt it to support either more general decoder calibration or better support for stabiliser simulation
I might be wrong, but these seem like slightly different concerns. In my understanding, stim would be a kind of in/out representation, that would be convertible to/from a text format. We could also have a bunch of dialects that correspond to each of the levels of abstraction that you describe. It's not clear to me whether the STIM ops would have the ideal form to do those analyses anyway, and the separation would give us freedom to iterate on how to model the ops that we operate on separately from the parsing/printing dialect, as long as they can be translated between. Does this make sense? That way the creative decisions are mostly left out of the first phase, and we just build a representation that can be parsed/printed.
I agree that having more general dialects makes sense, but also think we should have specialised "endpoint" dialects for existing formats, whose only job is to input and output those formats.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
We are considering porting a version of the stim dialect from xdsl into xdsl-quantum, but there needs to be some discussion on how this is done.
The original dialect was for direct compatability of the existing QSSA and QREF dialects with the stabiliser simulator tool Stim.
The main use of Stim in existing compiler toolchains is for calibrating decoders for error-correction, which requires the circuit to be run and a model of the hardware it will be run on. There are now other
The problems are:
The key properties of the Stim dialect are:
Looking for comments on: