Чи існує якийсь програмний пакет, що дозволяє розкласти унітарії з на квантові схеми за попередньо визначеним універсальним набором воріт?
Чи існує якийсь програмний пакет, що дозволяє розкласти унітарії з на квантові схеми за попередньо визначеним універсальним набором воріт?
Відповіді:
Цей пакет (CUGates.m) був оголошений на arXiv пару днів тому, що може бути корисним для вас. Тут використовується Mathematica. Я ще не пробував цього, і це може робити, а може і не робити те, що потрібно. З реферату:
У цій роботі представлена високоефективна схема декомпозиції та пов’язаний із нею ноутбук Mathematica для аналізу складних квантових схем, що складаються з одиночних / декількох кубітних та квантових квантових воріт. Зокрема, ця схема зводить оцінку множинних операцій унітарних воріт із багатьма умовними умовами лише до двох матричних доповнень, незалежно від кількості умовних умов або розмірів воріт. Це значно покращує можливості квантового аналізатора, що реалізується в класичному комп'ютері. Це також перший ефективний аналізатор квантових схем, що включає квантові квантові логічні ворота.
Близько 6 років тому був підготовлений документ про впровадження та оптимізацію розкладу Barenco: http://arxiv.org/abs/quant-ph/0607123 Я не знаю, чи випустили вони своє програмне забезпечення, чи потрібно запитайте їх гарно про це.
Цей веб - сайт - Quantum Compiler.org - є вихідний код для бібліотеки пітона , який робить це, в двох моделях, Соловеет-Китаєва і Китаєв-Шен-Млявий.
Існує програма "Qubiter" від RRTucci, яка використовує розкладання CS, описана в http://arxiv.org/abs/quant-ph/9902062 та розповсюджується безкоштовно за допомогою вихідного коду (C ++). Я щойно бачив - посилання в електронному друці все ще діє, остання версія - 1-11, але я ніколи не використовував програму сам, тому не можу це коментувати.
[EDIT] У списку є (принаймні) два пакети для розкладання http://www.quantiki.org/wiki/List_of_QC_simulators
На додаток до попередніх відповідей існує пакет, який обчислює перетворення Фур'є для розв’язуваних некомутативних груп на основі цього алгоритму . Програмне забезпечення має інструмент для розкладання перетворень Фур'є на більш прості матриці. Таке розкладання по суті є ефективним квантовим ланцюгом для здійснення неабелевого квантового перетворення Фур'є.
Хоча це не пакет загального призначення, це приємний інструмент, якщо ви працюєте з цим класом (досить складних) підрозділів. У цьому контексті немає альтернатив, які я знаю.