Support simpler readout definition
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 64
- Forks
- 16
- Avg merge
- 1d 5h
- Merged PRs (30d)
- 5
Description
Use stim.solve_flow_measurements to support logical readouts like READOUT IN0.LX0 IN1.LX1 (measuring one joint logical operator). It tries to solve a measurement flow from input logical observables to concrete physical measurements and then XOR with any other physical measurements in the READOUT line. This can make user's life simpler when they know that some physical measurements are measuring a logical observable but don't know exactly which set of physical measurements it measures. Also, this should pick up the signs automatically.
Be careful with annotate tool, especially with COMPOSE: the READOUT must expand to full physical measurements before composing. Make sure to include test cases for these use cases.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start at stim.solve_flow_measurements and trace how READOUT definitions are parsed and expanded, including the annotate tool and COMPOSE handling. Add test cases for joint logical operators, XOR with other physical measurements, automatic signs, and expansion before composition; done means these READOUT forms produce the expected measurements.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- compilers
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100