Refactor ScheduledCircuit
and implement a frozen alternative.
#358
Labels
backend
Issue pertaining to the Python backend (tqec package)
enhancement
New feature or request, may not be in the task flow
refactor
Requires major updates to code base
Is your feature request related to a problem? Please describe.
The current
schedule.py
file is quite huge (more than 900 lines) and contains a lot of code. It would be nice to split it into several smaller files, just like what was done withBlockGraph
in #340.At the same time, it would be nice to be able to ensure that some
ScheduledCircuit
instances will never be mutated. This will allow us to safely implement__hash__
forPlaquette
instances for example, and would avoid any kind of bugs due to unwanted in-place changes.Describe the solution you'd like
Split
tqec.circuit.schedule
into submodules, e.g.:tqec.circuit.schedule.schedule
tqec.circuit.schedule.circuit
tqec.circuit.schedule.frozen
tqec.circuit.schedule.manipulation
The text was updated successfully, but these errors were encountered: