Nach einer physikalischen Betrachtung der Quantenmechanik werden zunächst die benötigten mathematischen Grundlagen eingeführt bzw. wiederholt: Vektorräume, darauf aufbauend Hilberträume und die Tensorrechnung, gefolgt von den Grundlagen der Wahrscheinlichkeitsrechnung. Auf diesen Grundlagen wird ein Quantencomputer insoweit modelliert, wie es für die Formulierung von Algorithmen notwendig ist, d.h. als mathematisches Modell der Quantenbits, der Zeitentwicklung durch Gates und der abschließenden Messungen. Auf diesem Modell werden dann die klassischen Quantenalgorithmen jeweils vollständig eingeführt und erklärt. Schließlich wird die denkbare Umsetzung von Quantenalgorithmen auf heute existierende klassische Computer diskutiert.
Nach einer physikalischen Betrachtung der Quantenmechanik werden zunächst die benötigten mathematischen Grundlagen eingeführt bzw. wiederholt: Vektorräume, darauf aufbauend Hilberträume und die Tensorrechnung, gefolgt von den Grundlagen der Wahrscheinlichkeitsrechnung. Auf diesen Grundlagen wird ein Quantencomputer insoweit modelliert, wie es für die Formulierung von Algorithmen notwendig ist, d.h. als mathematisches Modell der Quantenbits, der Zeitentwicklung durch Gates und der abschließenden Messungen. Auf diesem Modell werden dann die klassischen Quantenalgorithmen jeweils vollständig eingeführt und erklärt. Schließlich wird die denkbare Umsetzung von Quantenalgorithmen auf heute existierende klassische Computer diskutiert.
Quantencomputer ermöglichen es, bestimmte Berechnungen schneller, genauer und energieeffizienter durchzuführen als klassische Computer, indem sie quantenmechanische Phänomene ausnutzen. Da die Umsetzung der meisten Quantenalgorithmen allerdings Operationen benötigt für die Quantencomputer ungeeignet sind, z. B. Datenbankzugriffe, werden Quantencomputer typischerweise als Spezialprozessoren in hybriden Quantenanwendungen verwendet. Die Entwicklung und der Betrieb dieser hybriden Anwendungen sind komplex und erfordern eine enge interdisziplinäre Zusammenarbeit. Dabei wird tiefgreifendes Wissen aus unterschiedlichen Domänen benötigt, beispielsweise aus der Mathematik, Physik und Softwareentwicklung. Zusätzlich wird die Entwicklung und der Betrieb von Quantenanwendungen durch weitere Faktoren erschwert: (i) Die aktuelle Quantensoftwarelandschaft und die verfügbaren Quanten-Clouddienste, die Zugriff auf unterschiedliche Quantencomputer geben, sind sehr heterogen. (ii) Die schnellen Fortschritte im Quanten-Software-Engineering führen zur Einführung neuer Techniken, welche die Ausführung von Quantenschaltkreisen verbessern können, allerdings aktuell eine komplexe, manuelle Integration erfordern. (iii) Das Fehlen geeigneter Abstraktionsebenen führt dazu, dass die Entwicklung von Quantenanwendungen, insbesondere für Entwickler, die wenig Erfahrung mit Quantencomputing haben, zeitaufwändig und fehleranfällig ist. Um diese Probleme zu lösen, wird in dieser Arbeit die PASTA-Methode präsentiert. Diese basiert auf der Quantencomputingmustersprache, welche etablierte Konzepte und Best Practices in der Quantencomputingdomäne intuitiv verständlich dokumentiert, und stellt einen ganzheitlichen Prozess für diemusterbasierten Entwicklung und den Betrieb von Quantenanwendungen vor. Die Methode beinhaltet alle notwendigen Schritte von der Auswahl der zu verwendenden Quantencomputingmuster, über die Generierung der ausführbaren Quantenanwendung auf Basis wiederverwendbarer Lösungen sowie die Bereitstellung der erforderlichen Softwareartefakte, bis hin zur Überwachung und Analyse der Ausführung hybrider Quantenanwendungen. Zur Umsetzung der PASTA-Methode wird im Rahmen dieser Arbeit die Quantencomputingmustersprache um mehrere Muster erweitert, welche Best Practices für den Betrieb von hybriden Quantenanwendungen sowie etablierte Methoden zur Abschwächung und Korrektur von Quantenfehlern dokumentieren. Um die vom Nutzer ausgewählten Muster in einen ausführbaren Quantenworkflow transformieren zu können, werden eine Vielzahl neuer Workflowmodellierungskonstrukte eingeführt, welche die Spezifikation verschiedener, häufig auftretender Aktivitäten in Quantenworkflows vereinfachen. Weiterhin wird ein Ansatz für die automatische und dynamische Bereitstellung von hybriden Quantenanwendungen auf Grundlage von Nutzeranforderungen vorgestellt. Auf diesen Konzepten aufbauend werden neue Sichten auf Quantenworkflows eingeführt, welche die Überwachung und Analyse von hybriden Quantenanwendungen vereinfachen. Die Sichten ermöglichen es unterschiedlichen Nutzergruppen, wie beispielsweise Quantenexperten und dem Betriebspersonal, Quantenanwendungen auf verschiedenen Abstraktionsebenen zu analysieren und bieten zusätzliche, für die jeweilige Nutzergruppe relevante Informationen. Zur Demonstration der praktischen Umsetzbarkeit der PASTA-Methode wird das PASTA-Framework eingeführt, welches die in dieser Arbeit eingeführten Konzepte prototypisch implementiert. Die Nutzbarkeit der Methode und des Frameworks werden anhand mehrerer Anwendungsfälle evaluiert, für welche eine Laufzeitanalyse sowie eine Nutzerstudie durchgeführt wird.
In dieser Arbeit werden Algorithmen zur Lösung zahlentheoretischer Probleme für klassische Computer und Quantencomputer entwickelt und analysiert sowie ihre Auswirkungen auf Public-Key-Kryptosysteme untersucht. Im Jahr 1994 veröffentliche Shor einen Quantenalgorithmus [Shor, 1994], der das Periodengitter einer gegebenen Funktion in Quanten-Polynomzeit bestimmt. Mit diesem Algorithmus läßt sich das Faktorisierungs- und das Diskreter-Logarithmus-Problems in endlichen abelschen Gruppen in Quanten-Polynomzeit lösen. Dadurch werden die meisten heutzutage verwendeten Public-Key-Kryptoverfahren unsicher, sollten hinreichend große Quantencomputer eines Tages gebaut werden können. Der erste Quantencomputer wurde 1998 gebaut [Chuang/Vandersypen/Zhou/Leung/Lloyd, 1998]. Er bestand aus zwei Qubits. Der größte Quantencomputer, der bis heute gebaut wurde, besteht aus nur sieben Qubits [Vandersypen/Steffen/Breyta/Yannoni/Sherwood/Chuang, 2001]. Es hat sich herausgestellt, daß das Bauen von großen Quantencomputern ein extrem schwieriges Problem ist. Aus diesem Grund kann davon ausgegangen werden, daß die Größe der Quantencomputer, d.h. die Anzahl der Qubits, aus denen ein Quantencomputer besteht, nur langsam wachsen wird. Deshalb ist es von Interesse, Shors Quantenalgorithmus an verschiedene abelsche Gruppen sowie gruppenähnliche Strukturen zu adaptieren und ihre genaue Komplexität zu untersuchen, um daraus die Bedrohungen für die betroffenen Kryptosysteme genau zu bestimmen. In dieser Arbeit werden Quantenalgorithmen zur Lösung des Ordnungsproblems und des DL-Problems in der Klassengruppe der Ideale eines imaginär-quadratischen Zahlkörpers angegeben und ihre Komplexität, d.h. die Anzahl der Qubits und der elementaren Quantenoperationen, bestimmt. Darüberhinaus werden Algorithmen zur Bestimmung des Regulators und zur Lösung des Hauptidealproblems und des erweiterten Diskreter-Logarithmus-Problems in reell-quadratischen Zahlkörpern präsentiert. Shors Algorithmus wird dabei auf Funktionen angewendet, die nicht injektiv innerhalb einer Periode sind. Auch in diesem Fall wird die Komplexität der Algorithmen genau bestimmt. Im Falle von Zahlkörpern eines beliebigen Grades wird eine weitere Modifikation von Shors Algorithmus entwickelt: Es wird das Periodengitter einer Funktion bestimmt, deren Periodengitter irrational ist. Dieser Algorithmus wird benutzt, um die Einheitengruppe eines beliebigen endlich-dimensionalen Zahlkörpers zu berechnen. Als nächstes werden die Auswirkungen von Quantenalgorithmen auf die Sicherheit von Public-Key-Kryptosystemen untersucht. Es wird ein neuer Sicherheitsbegriff eingeführt. Die Sicherheit zweier Kryptosysteme wird als gleich definiert, wenn die Anzahl der Qubits zum Brechen dieser Kryptosysteme gleich ist. Basierend auf der neuen Sicherheitsdefinition wird die Geschwindigkeit und die Schlüsselgröße von einigen Kryptosystemen verglichen. Im letzten Kapitel wird ein deterministischer klassischer Algorithmus zur Berechnung der Struktur einer endlichen abelschen Gruppe aus einem Erzeugendensystem präsentiert, dessen Laufzeit nur linear von der Anzahl der gegebenen Erzeuger abhängt und dessen Speicherplatzkomplexität unabhängig von der Anzahl der gegebenen Erzeuger ist. Das stellt eine exponentielle Verbesserung zu früheren Algorithmen dar, bei denen sowohl die Laufzeit als auch die Speicherplatzkomplexität exponentiell von der Anzahl der Erzeuger im gegebenen Erzeugendensystem abhängt [Buchmann/Jacobson/Teske, 1997].
Diese Bachelorarbeit erläutert die Grundlagen von Quantencomputern und ihr Potential sowie die Vorteile, die eine Auseinandersetzung mit diesem Thema mit sich bringt. Sie richtet sich an Leser ohne Vorwissen auf diesem Gebiet und stellt die Konzepte auf eine Art vor, die für jede Person mit einem Grundwissen im Softwarebereich zugänglich ist. Es werden dabei die Unterschiede zwischen klassischen Computern und Quantencomputern besprochen, sowie die grundlegende Funktionsweise, wie die Basiseinheiten (Qubits) und die Gatter, die auf diese angewendet werden. Um diese Grundbausteine und Funktionsweise zu veranschaulichen sowie die Potentiale von Quantencomputern nachzuvollziehen, werden drei Algorithmen näher besprochen. Der Deutsch-Algorithmus zeigt, dass Quantencomputer manche Probleme schneller als klassische Computer lösen können. Der Shor-Algorithmus kann RSA verschlüsselte Nachrichten schnell entschlüsseln. Der Grover-Algorithmus bietet eine schnelle Methode eine bestimmte Information in unsortierten Daten zu suchen. Die drei Algorithmen decken bereits ein recht breites Spektrum von Anwendungsmöglichkeiten von Quantencomputern ab. Dieses Potential sowie die Wichtigkeit der Auseinandersetzung mit der Mächtigkeit von Quantencomputern und ein kurzer Einblick in mögliche zukünftige Entwicklungen schießen die Arbeit ab. Diese Bachelorarbeit erläutert die Grundlagen von Quantencomputern und ihr Potential sowie die Vorteile, die eine Auseinandersetzung mit diesem Thema mit sich bringt. Sie richtet sich an Leser ohne Vorwissen auf diesem Gebiet und stellt die Konzepte auf eine Art vor, die für jede Person mit einem Grundwissen im Softwarebereich zugänglich ist. Es werden dabei die Unterschiede zwischen klassischen Computern und Quantencomputern besprochen, sowie die grundlegende Funktionsweise, wie die Basiseinheiten (Qubits) und die Gatter, die auf diese angewendet werden. Um diese Grundbausteine und Funktionsweise zu veranschaulichen sowie die Potentiale von Quantencomputern nachzuvollziehen, werden drei Algorithmen näher besprochen. Der Deutsch-Algorithmus zeigt, dass Quantencomputer manche Probleme schneller als klassische Computer lösen können. Der Shor-Algorithmus kann RSA verschlüsselte Nachrichten schnell entschlüsseln. Der Grover-Algorithmus bietet eine schnelle Methode eine bestimmte Information in unsortierten Daten zu suchen. Die drei Algorithmen decken bereits ein recht breites Spektrum von Anwendungsmöglichkeiten von Quantencomputern ab. Dieses Potential sowie die Wichtigkeit der Auseinandersetzung mit der Mächtigkeit von Quantencomputern und ein kurzer Einblick in mögliche zukünftige Entwicklungen schießen die Arbeit ab. Diese Bachelorarbeit erläutert die Grundlagen von Quantencomputern und ihr Potential sowie die Vorteile, die eine Auseinandersetzung mit diesem Thema mit sich bringt. Sie richtet sich an Leser ohne Vorwissen auf diesem Gebiet und stellt die Konzepte auf eine Art vor, die für jede Person mit einem Grundwissen im Softwarebereich zugänglich ist. Es werden dabei die Unterschiede zwischen klassischen Computern und Quantencomputern besprochen, sowie die grundlegende Funktionsweise, wie die Basiseinheiten (Qubits) und die Gatter, die auf diese angewendet werden. Um diese Grundbausteine und Funktionsweise zu veranschaulichen sowie die Potentiale von Quantencomputern nachzuvollziehen, werden drei Algorithmen näher besprochen. Der Deutsch-Algorithmus zeigt, dass Quantencomputer manche Probleme schneller als klassische Computer lösen können. Der Shor-Algorithmus kann RSA verschlüsselte Nachrichten schnell entschlüsseln. Der Grover-Algorithmus bietet eine schnelle Methode eine bestimmte Information in unsortierten Daten zu suchen. Die drei Algorithmen decken bereits ein recht breites Spektrum von Anwendungsmöglichkeiten von Quantencomputern ab. Dieses Potential sowie die Wichtigkeit der Auseinandersetzung mit der Mächtigkeit von Quantencomputern und ein kurzer Einblick in mögliche zukünftige Entwicklungen schießen die Arbeit ab. Diese Bachelorarbeit erläutert die Grundlagen von Quantencomputern und ihr Potential sowie die Vorteile, die eine Auseinandersetzung mit diesem Thema mit sich bringt. Sie richtet sich an Leser ohne Vorwissen auf diesem Gebiet und stellt die Konzepte auf eine Art vor, die für jede Person mit einem Grundwissen im Softwarebereich zugänglich ist. Es werden dabei die Unterschiede zwischen klassischen Computern und Quantencomputern besprochen, sowie die grundlegende Funktionsweise, wie die Basiseinheiten (Qubits) und die Gatter, die auf diese angewendet werden. Um diese Grundbausteine und Funktionsweise zu veranschaulichen sowie die Potentiale von Quantencomputern nachzuvollziehen, werden drei Algorithmen näher besprochen. Der Deutsch-Algorithmus zeigt, dass Quantencomputer manche Probleme schneller als klassische Computer lösen können. Der Shor-Algorithmus kann RSA verschlüsselte Nachrichten schnell entschlüsseln. Der Grover-Algorithmus bietet eine schnelle Methode eine bestimmte Information in unsortierten Daten zu suchen. Die drei Algorithmen decken bereits ein recht breites Spektrum von Anwendungsmöglichkeiten von Quantencomputern ab. Dieses Potential sowie die Wichtigkeit der Auseinandersetzung mit der Mächtigkeit von Quantencomputern und ein kurzer Einblick in mögliche zukünftige Entwicklungen schießen die Arbeit ab.
Die Arbeit bietet eine systematische Einführung in die Grundlagen der Quantenmechanik und entwickelt diese ausgehend von Heisenbergs Ansatz, „nur messbare Größen zuzulassen“ . Im Zentrum steht die Abkehr von klassischen Atommodellen und die Etablierung der Operatorenmechanik, in der Observablen durch hermitesche Operatoren auf einem komplexen Hilbertraum dargestellt werden. Zustände werden als Vektoren formuliert, deren Transformationen und Messprozesse durch lineare Operatoren beschrieben sind. Ein Schwerpunkt liegt auf der physikalischen und mathematischen Analyse des Spins. Ausgehend vom Stern‑Gerlach‑Experiment wird gezeigt, dass Spinkomponenten nicht kontinuierlich, sondern ausschließlich diskrete Werte annehmen: „Dem war aber nicht so. Sondern es gab nur Punkte rund um o und um u.“ . Die Arbeit erläutert die quantisierte Natur des Spins, die Rolle des Landé‑Faktors, die Interpretation von Messprozessen sowie die Wahrscheinlichkeitsverteilungen bei Drehung des Messapparats. Darauf aufbauend wird die mathematische Struktur der Quantenmechanik entwickelt: Hilberträume, Orthonormalbasen, Bra‑Ket‑Notation, Wahrscheinlichkeitsamplituden und die Darstellung von Operatoren als Matrizen. Die Pauli‑Matrizen werden eingeführt und ihre Rolle als Spinoperatoren detailliert hergeleitet. Die Bedeutung von Eigenwerten und Eigenvektoren für stabile Zustände wird anhand des Spinoperators Sz demonstriert. Abschließend verbindet der Text experimentelle Evidenz, mathematische Formalisierung und konzeptionelle Interpretation zu einer kohärenten Darstellung der Quantenmechanik, die sowohl für die physikalische Intuition als auch für die theoretische Weiterarbeit geeignet ist.
Quantencomputer besitzen das Potenzial, um in naher Zukunft Probleme, die mit herkömmlichen Computern und Supercomputern nicht bewältigbar sind, zu lösen. Bisher ist die Umsetzung dieser Technologie in der Industrie noch in der Anfangsphase, wodurch der Einsatz von Quantencomputern bisher nur für Forschungsprojekte möglich ist. Dennoch ermöglichen es große IT-Unternehmen, interessierten Personen einen indirekten Zugang zu Quantencomputern über deren Services. Da die Technologien und Konzepte, auf denen Quantencomputern basieren, sehr umfangreich und komplex sind, ist es für interessierte Personen, die sich in diese neue Materie vertiefen wollen, oft schwierig, die Hauptkonzepte, die benötigt werden, um Quantencomputern zu verstehen, zu identifizieren und somit ein Grundverständnis von Quantencomputern zu erlangen. Aus diesem Grund besteht der Hauptzweck dieser Arbeit darin, die benötigten Grundkonzepte und Themen auf denen Quantencomputer aufbauen, zu identifizieren und auszuarbeiten. Hierfür werden die Konzepte von bekannten Lehrbüchern im Bereich Quantencomputer herangezogen und systematisch nach deren Wichtigkeit für das Verständnis von Quantencomputern gegliedert, aufgelistet und ausgearbeitet. Für den praktischen Teil der Arbeit werden zwei Quantenbeispiele anhand des zuvor erarbeiteten Wissens beschrieben und erweitert. Die zuvor identifizierten und beschriebenen Grundkonzepte werden anschließend grafisch mittels einer Concept-Map dargestellt, diese bietet einen systematischen Überblick über die einzelnen Konzepte und deren Abhängigkeiten zueinander. Der Vorteil in der Darstellung von Wissen mittels einer Concept-Map besteht darin, dass die Visualisierung der Verbindungen zwischen den einzelnen Konzepten hervorgehoben wird. Zusätzlich wird auf Basis des erarbeiteten Wissens ein Beispiel-Curriculum für eine Lehrveranstaltung, die das Ziel hat, die Grundkonzepte von Quantencomputern zu vermitteln, erstellt. Das Ergebnis dieser Arbeit zeigt, dass die Konzepte, auf denen Quantencomputer aufbauen, in drei Grundkompetenzen unterteilt werden können. Zum einen die Kompetenz der linearen Algebra, in dem die meisten Konzepte und Themen bereits in einem vorangegangenen Studium behandelt wurden. Zum anderen die der Informatik-Konzepte, wobei hier wie bei der linearen Algebra das Verständnis im Bereich der Programmierung angenommen werden kann. Die Kompetenz der Quantenmechanik stützt sich auf die Konzepte, die von Quantencomputern genutzt wird und auf die Kompetenzen und das Wissen der beiden anderen Kompetenzen. Zusammenfassend zeigt diese Arbeit, dass für das reine Verständnis von Quantencomputern und dem Replizieren von bereits erstellten Quantenalgorithmen eine große Anzahl an unterschiedlichen Konzepten benötigt wird. Für die Fähigkeit der Entwicklung von eigenen Quantenalgorithmen reicht das erarbeitet Wissen nicht aus, sondern wird als Grundwissen angesehen.
Quantencomputer versprechen eine revolutionäre Leistungssteigerung und könnten damit einige aktuelle Paradigmen der Informatik obsolet werden lassen. Diese Technologie ist für Interessierte ohne Vorkenntnisse aus dem Bereich der Quantenphysik jedoch schwer nachzuvollziehen. Die vorliegende Arbeit basiert auf einer Literaturrecherche und wurde verfasst, um die Thematik der Quantencomputer verständlich darzulegen. Zu diesem Zweck wird zuerst eine Beschreibung von relevanten Grundprinzipien der Quantenmechanik gegeben. Neben der Anführung von bestimmten Quantenzahlen und deren Zuständen werden dabei die Konzepte der Superposition und der Verschränkung dieser Zustände erläutert. Danach wird die Funktionsweise eines auf Quantengattern basierenden Computers mathematisch und grafisch nachvollziehbar beschrieben. Operationen, welche durch Transformation von Quantenzuständen ausgeführt werden, und Anwendungen für diese Art von Berechnungen werden vorgestellt. Potenziale und Einschränkungen sind durch das Verständnis der Arbeitsweise eines Quantencomputers eingängig. Der Aufbau eines Quantencomputers, sowie eine Analyse des Fortschritts bei der Realisierung von voll skalierbaren Quantencomputern werden weiters dargelegt. Dabei wird auf die wesentlichen Bestandteile eines Quantenchips näher eingegangen. Für geeignet gehaltene Quantenzustände für die Nutzung als Qubits, sowie Verfahren zur Speicherung und Manipulation von Informationen durch Quantencomputer werden beschrieben. Vor allem die Fehlerrate von Qubits stellt Forscher und Entwickler derzeit noch vor große Herausforderungen. Diese Arbeit gibt deshalb einen Ausblick, welche weiteren Schritte nötig sind, um die Vision von kommerziell einsetzbaren Quantencomputern zu verwirklichen.