Presentation is loading. Please wait.

Presentation is loading. Please wait.

A Quantum Programming Language

Similar presentations

Presentation on theme: "A Quantum Programming Language"— Presentation transcript:

1 A Quantum Programming Language
-HSK A Quantum Programming Language Presented by Team HSK: Katherine Heller, Krysta Svore, Maryam Kamvar

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

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

4 Key Features Familiar C-style syntax Matrix operations via CBLAS
Complex and real data types A quantum type qreg A graphical view of quantum algorithms Lucid representation of quantum qubits, registers, and gates Interactive user options (start, stop, pause, change animation rate) 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; H M q

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

7 Architecture of Q-HSK System
lex.yy.c translate.c Program.q Lexical Analyzer Syntax Analyzer Parser Translator Program.cpp g++ Executable Java javac Graphics

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

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

10 Future Goals 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 error handling Expand to include building of algorithms from the graphical display 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 the perfect tool for quantum simulation and computation USE HSK!

Download ppt "A Quantum Programming Language"

Similar presentations

Ads by Google