Open mtreinish opened 1 month ago
The other thing is this probably depends on #12966 as we'll want to add this new operation directly to rust like the existing Delay
instruction. So this will depend on how we decided to add non-gate standard operations to rust.
In OpenQASM 3 there is a concept of a timing stretch:
https://openqasm.com/language/delays.html#duration-and-stretch-types
that are like delays which can grow to account for other timing constraints. As we move to add more dynamic circuits where qiskit is unable to know the timing constraints around the evaluation and execution of a control flow block having a stretch will provide a useful tool for having scheduling passes that work in a dynamic circuit. We should add a new operation that models the concept of a stretch similar (if not exactly) as defined in openqasm3 that we can use for this purpose (we can split this out into a separate issue as needed).