Presentation is loading. Please wait.

Presentation is loading. Please wait.

-HSK -HSK A Quantum Programming Language Katherine H eller, Krysta S vore, Maryam K amvar Presented by Team HSK:

Similar presentations


Presentation on theme: "-HSK -HSK A Quantum Programming Language Katherine H eller, Krysta S vore, Maryam K amvar Presented by Team HSK:"— Presentation transcript:

1 -HSK -HSK A Quantum Programming Language Katherine H eller, Krysta S vore, Maryam K amvar Presented by Team HSK:

2 What is Q-HSK? Q-HSK is a language which we designed to facilitate the implementation and simulation of quantum algorithms on a classical computer Q-HSK is a language which we designed to facilitate the implementation and simulation of quantum algorithms on a classical computer

3 Quantum Computation Problems can be solved exponentially faster than with classical computation Problems can be solved exponentially faster than with classical computation Problems include summation, factoring, searching Problems include summation, factoring, searching Quantum mechanics is used to solve these problems Quantum mechanics is used to solve these problems Current technology is limited Current technology is limited Factors the number 15 Factors the number 15 Decoheres for large number of qubits Decoheres for large number of qubits Qubits and quantum gates are used Qubits and quantum gates are used Qubits take values 0, 1, or superposition of values Qubits take values 0, 1, or superposition of values Gates include Hadamard, Unitary, Fourier Gates include Hadamard, Unitary, Fourier

4 Key Features Familiar C-style syntax Familiar C-style syntax Matrix operations via CBLAS Matrix operations via CBLAS Complex and real data types Complex and real data types A quantum type qreg A quantum type qreg A graphical view of quantum algorithms A graphical view of quantum algorithms Lucid representation of quantum qubits, registers, and gates Lucid representation of quantum qubits, registers, and gates Interactive user options (start, stop, pause, change animation rate) Interactive user options (start, stop, pause, change animation rate) Detailed text output to trace algorithm Detailed text output to trace algorithm

5 A Simple Example int main( ){ int a, i; qreg q[5]; i = 0; while (i < 5){ q[i] = 0; i = i + 1; } q = computeHadamard(q); a = measureReg(q); printf(This is the measure: %d, a); return 0; } q H M

6 Simulation of Shors Algorithm Factors numbers which are divisible by two prime numbers Factors numbers which are divisible by two prime numbers Simulates steps of a quantum computer Simulates steps of a quantum computer Demonstrates Demonstrates Hadamard gate Hadamard gate Unitary gate Unitary gate Quantum Fourier transform Quantum Fourier transform Measurement of quantum registers Measurement of quantum registers Quantum registers of type qreg Quantum registers of type qreg Arrays of type complex Arrays of type complex Advanced arithmetic operations Advanced arithmetic operations Illustrates translation process and graphics Illustrates translation process and graphics

7 Architecture of Q-HSK System Program.q Lexical AnalyzerSyntax Analyzer ParserTranslator Program.cppg++ Java Graphics Executable lex.yy.cy.tab.ctranslate.c javac

8 Testing Regression testing Regression testing Ensure backward compatibility Ensure backward compatibility Prevent new bugs in old code Prevent new bugs in old code Integration testing Integration testing Connect Q-HSK program, translation, and graphics Connect Q-HSK program, translation, and graphics Provide a robust system Provide a robust system Baby steps Baby steps Test incrementally Test incrementally Test frequently Test frequently

9 Everything we need to know we learned in PLT… Communication Communication Detail the design early Detail the design early Explicit definitions of the input/output for each component Explicit definitions of the input/output for each component Incremental Development Incremental Development Create goal points along the way Create goal points along the way Start small and expand Start small and expand Demo product to potential users for constructive feedback Demo product to potential users for constructive feedback Make system more robust over time Make system more robust over time

10 Future Goals Expand graphics to include complete code display and tracing Expand graphics to include complete code display and tracing Expand to include a double-click for a detailed description of the operations in a quantum gate Expand to include a double-click for a detailed description of the operations in a quantum gate Expand error handling Expand error handling Expand to include building of algorithms from the graphical display Expand to include building of algorithms from the graphical display Build a quantum computer Build a quantum computer And of course win the Turing Award

11 Conclusion Q-HSK enables simple programming of quantum algorithms with built-in graphics Q-HSK is a valuable learning tool for both experts and beginners Q-HSK is a valuable learning tool for both experts and beginners Q-HSK is the perfect tool for quantum simulation and computation Q-HSK is the perfect tool for quantum simulation and computation USE -HSK!


Download ppt "-HSK -HSK A Quantum Programming Language Katherine H eller, Krysta S vore, Maryam K amvar Presented by Team HSK:"

Similar presentations


Ads by Google