Rename `qml.Interferometer` to `qml.InterferometerUnitary`
See original GitHub issueFeature details
As per https://github.com/PennyLaneAI/pennylane/issues/1256, we’re changing qml.Interferometer, as it collides with a the template qml.templates.Interferometer.
A short summary based on the (updated) comments in the linked issue:
In this PR we need to rename the class, and then search for lines in the code where
Interferometeris translated to an implementation.
Implementation
- Check the
default.gaussiandevice, and change the operation name there. More precisely, at the moment whendefault.gaussianencounters a gate called Interferometer, it expects it to have a param that represents the unitary which defines the interferometer’s matrix. This logic should now only be performed when it seesInterferometerUnitary. When it sees Interferometer it should not find a translation in the list, and will then decompose this operation into the gates defined intemplate.Interferometer. In other words, in future InterferometerUnitary is an operation that is natively supported by devices, whiletemplates.Interferometeris an operation that is only defined by its decomposition.
- The
representation_revolverwould also require a change such that circuit drawing is updated.
See details on the possible changes to be made:
How important would you say this feature is?
2: Somewhat important. Needed this quarter.
Additional information
We’d like to have this in for v0.19.0.
Issue Analytics
- State:
- Created 2 years ago
- Comments:6 (4 by maintainers)
Top Results From Across the Web
qml.Interferometer — PennyLane 0.28.0 documentation
General linear interferometer, an array of beamsplitters and phase shifters. ... Interferometer(*params, wires=range(4)) return qml.expval(qml.
Read more >Refactoring | Qt Creator Manual - Qt Documentation
To rename a QML type in a project, select Tools > QML/JS > Rename Symbol Under Cursor or press Ctrl+Shift+R. Search Results shows...
Read more >
Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free
Top Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found

Hi @AkashNarayanan, that’s great to hear! 🙂 Feel free to ask any questions and open a work in progress PR.
Closing with #1714 merged.