Re-structuring of `mixture` protocol along with serial concatenation
Summarize the task
Re-structuring the mixture and has_mixture protocol by calling lower-level protocols such as unitary rather than accessing the corresponding attributes. If there exists no direct way of constructing the mixture, then the protocol must try decomposing the operation and apply serial concatenation.
Acceptance criteria - when is the task considered done? The above criteria for the protocols are satisfied and are supported with tests and consistency checks.
Related This issue must be resolved before #4822 can be completed.
Related issues: #4288
I’m already working on this, some overview:
- Serial concatenation will use
superoperatoras intermediate. Since there is no direct way of interconversion,krauswill also be another intermediate between them. - The mixture can be obtained back from
kraususing eigendecomposition.
@Zshan0 is there an update on this PR? -- Cirq Cync update