Zusammenfassung
Dieses Kapitel liefert Implementierungsdetails des zugrunde liegenden DD-Pakets. Während viele Konzepte direkt aus konventionellen DD-Paketen übernommen werden, verursachen die auftretenden komplexen Zahlen erhebliche Probleme – vor allem, da sie als Gewichte an den Kanten des DD auftreten und die begrenzte Maschinengenauigkeit unweigerlich zu numerischen Fehlern führt. In diesem Kapitel werden Konzepte zum effizienteren Umgang mit komplexen Zahlen erörtert und somit ein effizientes DD-Paket im Quantenbereich entwickelt, das im Vergleich zu früheren Implementierungen Verbesserungen um mehrere Größenordnungen erzielt. Dies betrifft nicht nur den vorgeschlagenen Simulationsansatz, sondern kann potenziell auch andere DD-basierte Entwurfsmethoden (beispielsweise für Synthese oder Verifikation) verbessern, indem einfach das zugrunde liegende DD-Paket ausgetauscht wird.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
Es sei darauf hingewiesen, dass DDs für den Quantenbereich auch zur Bewältigung der exponentiellen Komplexität bei Aufgaben wie Synthese [117, 118, 120] und Verifikation [119, 163, 168, 182] verwendet wurden – unter Verwendung von Entscheidungsdiagrammtypen, wie in [3, 105, 116, 165, 168] vorgeschlagen.
- 2.
Die Hash-Funktion sollte die Knoten möglichst gleichmäßig auf die Buckets verteilen, um die Anzahl der Kollisionen beim Nachschlagen zu verringern.
- 3.
Wenn die Liste leer ist, wird genügend Speicherallokiert, um mehrere neue DD-Knoten zu erstellen.
- 4.
- 5.
Man beachte, dass das getrennte Einfügen von Real- und Imaginärteil auch die Anzahl der zu speichernden Zahlen reduzieren kann, da dieselbe Zahl als Real-/Imaginärteil in mehreren komplexen Zahlen vorkommen kann.
- 6.
Da das DD eine unitäre Matrix darstellt, gilt dies auch für den Real- und Imaginärteil des komplexen Gewichts an der Kante, die auf den Wurzelknoten zeigt.
- 7.
Man beachte, dass auch andere Strategien zur Aufteilung des Intervalls [0, 1] möglich sind.
- 8.
Man beachte, dass es höchstens zwei Zahlen in der Nachschlagetabelle gibt, die näher als 𝜖 zu r sind.
- 9.
Die Simulation wurde nicht als spezielle Anwendung betrachtet, da die Unzulänglichkeiten des Originalpakets die Durchführung von Simulationen in angemessener Zeit – selbst für kleine Fälle – oft verhindern.
- 10.
Man beachte, dass die Anzahl der verschiedenen komplexen Zahlen nur für das ursprüngliche Paket bestimmt werden kann, da alle während der Berechnung verwendeten Zahlen in einem Array verbleiben.
- 11.
Man beachte, dass das ursprüngliche Paket leicht angepasst wurde, um die Speicherung von mehr als 10.000 verschiedenen komplexen Zahlen zu ermöglichen. Dies hatte jedoch keine Auswirkungen auf die Laufzeit.
Literatur
P. Niemann, R. Datta, R. Wille, Logic synthesis for quantum state generation, in International Symposium on Multi-Valued Logic (IEEE, Piscataway, 2016), S. 247–252
P. Niemann, R. Wille, R. Drechsler, Efficient synthesis of quantum circuits implementing Clifford group operations, in Asia and South Pacific Design Automation Conference (2014), S. 483–488
P. Niemann, R. Wille, R. Drechsler, Improved synthesis of Clifford+ T quantum functionality, in Design, Automation and Test in Europe (2018), S. 597–600
P. Niemann, R. Wille, R. Drechsler, Equivalence checking in multi-level quantum systems, in International Conference of Reversible Computation (2014), S. 201–215
G. F. Viamontes, I. L. Markov, J. P. Hayes, Checking equivalence of quantum circuits and states, in International Conference on CAD (IEEE, Piscataway, 2007), S. 69–74
S.-A. Wang, C.-Y. Lu, I.-M. Tsai, S.-Y. Kuo, An XQDD-based verification method for quantum circuits. IEICE Trans. 91-A(2), 584–594 (2008)
S. Yamashita, I. L. Markov, Fast equivalence-checking for quantum circuits, in International Symposium on Nanoscale Architectures (IEEE Press, New York, 2010), S. 23–28
A. Abdollahi, M. Pedram, Analysis and synthesis of quantum circuits by using quantum decision diagrams, in Design, Automation and Test in Europe (European Design and Automation Association, 2006), S. 317–322
D.M. Miller, M.A. Thornton, QMDD: a decision diagram structure for reversible and quantum circuits, in International Symposium on Multi-Valued Logic (2006), S. 30–30
P. Niemann, R. Wille, D. M. Miller, M. A. Thornton, R. Drechsler, QMDDs: efficient quantum function representation and manipulation. IEEE Trans. CAD Integr. Circuits Syst. 35(1), 86–99 (2015)
G.F. Viamontes, M. Rajagopalan, I.L. Markov, J.P. Hayes, Gate-level simulation of quantum circuits, in Asia and South Pacific Design Automation Conference (2003), S. 295–301
K.S. Brace, R.L. Rudell, R.E. Bryant, Efficient implementation of a BDD package, in Design Automation Conference (1990), S. 40–45
R. E. Bryant, Graph-based algorithms for Boolean function manipulation. IEEE Trans. Comput. 35(8), 677–691 (1986)
A. Hett, R. Drechsler, B. Becker, MORE: alternative implementation of BDD packages by multi-operand synthesis, in European Design Automation Conference (1996), S. 164–169
D. M. Miller, R. Drechsler, Implementing a multiple-valued decision diagram package, in International Symposium on Multi-Valued Logic (IEEE, Piscataway, 1998), S. 52–57
T. Stornetta, F. Brewer, Implementation of an efficient parallel BDD package, in Design Automation Conference (1996), S. 641–644
A. Zulehner, S. Hillmich, R. Wille, How to efficiently handle complex values? Implementing decision diagrams for quantum computation, in International Conference on CAD (2019)
M. Herbstritt, wld: a C+ + library for decision diagrams (2004), https://ira.informatik.uni-freiburg.de/software/wld/
D.E. Knuth, The art of computer programming: binary decision diagrams (2011), https://www-cs-faculty.stanford.edu/~knuth/programs.html
F. Somenzi, CUDD: CU decision diagram package release 3.0.0 (2015), http://vlsi.colorado.edu/~fabio/
R. E. Bryant, Y.-A. Chen, Verification of arithmetic circuits with binary moment diagrams, in Design Automation Conference (IEEE, Piscataway, 1995), S. 535–541
D. M. Miller, M. A. Thornton, D. Goodman, A decision diagram package for reversible and quantum circuit simulation, in International Conference on Evolutionary Computation (IEEE, Piscataway, 2006), S. 2428–2435
G. F. Viamontes, I. L. Markov, J. P. Hayes, Quantum Circuit Simulation (Springer, Berlin, 2009)
P. Niemann, A. Zulehner, R. Wille, R. Drechsler, Efficient construction of QMDDs for irreversible, reversible, and quantum functions, in International Conference of Reversible Computation (Springer, Berlin, 2017), S. 214–231
R. Sedgewick, in Algorithms, chap. 15 (Addison-Wesley, Reading, 1983), S. 199
L. J. Guibas, R. Sedgewick, A dichromatic framework for balanced trees, in Symposium on Foundations of Computer Science (IEEE, Piscataway, 1978), S. 8–21
A. Ekert, R. Jozsa, Quantum computation and Shor’s factoring algorithm. Rev. Mod. Phys. 68(3), 733 (1996)
S. Boixo, S. V. Isakov, V. N. Smelyanskiy, R. Babbush, N. Ding, Z. Jiang, M. J. Bremner, J. M. Martinis, H. Neven, Characterizing quantum supremacy in near-term devices. Nat. Phys. 14(6), 595 (2018)
Author information
Authors and Affiliations
Rights and permissions
Copyright information
© 2023 Der/die Autor(en), exklusiv lizenziert an Springer Nature Switzerland AG
About this chapter
Cite this chapter
Zulehner, A., Wille, R. (2023). Effiziente Implementierung von DDs im Quantenbereich. In: Einführung in die Entwurfsautomatisierung für Quantencomputer. Springer Vieweg, Cham. https://doi.org/10.1007/978-3-031-36751-9_7
Download citation
DOI: https://doi.org/10.1007/978-3-031-36751-9_7
Published:
Publisher Name: Springer Vieweg, Cham
Print ISBN: 978-3-031-36750-2
Online ISBN: 978-3-031-36751-9
eBook Packages: Computer Science and Engineering (German Language)