Closed apchytr closed 1 month ago
All modified and coverable lines are covered by tests :white_check_mark:
Project coverage is 89.12%. Comparing base (
3842246
) to head (1f5954f
). Report is 1 commits behind head on develop.
I'm a bit late to the game here, but widgets.wires()
should probably be updated to draw the classical wires as well - it can be done in another PR, not a big deal
Context: It is apparent that Mr Mustard requires some notion of 'classical wire' to support
both the new poly exp ansatz as well asmeasurements. Here, I introduceclassical_output
andclassical_input
(or some other name we can agree upon) intoWires
that is meant to fill this role. The idea is thatWires
will keep track of the modes that contain this classical information (associating it with an index and unique ID) and the representation will do the rest (in a followup PR).Description of the Change:
Wires
now acceptsclassical_output
andclassical_input
meant to fill the role of non-quantum wires. The behaviour (within Wires) is identical to bra and ket.Benefits: We will now be able to link classical information between circuit components. This approach avoids the need to introduce several new
Wires
classes.Possible Drawbacks: It's possible there are some use cases that may require us to reconsider this approach?
Maybe it turns out we really do need separate classes (i.eClassicalWire
,QuantumWire
,PolyWire
).