Identifying Data 2023/24
Subject (*) Programming and Implementation of Quantum Algorithms Code 614551007
Study programme
Máster Universitario en Ciencia e Tecnoloxías de Información Cuántica
Descriptors Cycle Period Year Type Credits
Official Master's Degree 1st four-month period
First Optional 3
Language
Spanish
Galician
Teaching method Face-to-face
Prerequisites
Department Enxeñaría de Computadores
Coordinador
Andrade Canosa, Diego
E-mail
diego.andrade@udc.es
Lecturers
Andrade Canosa, Diego
E-mail
diego.andrade@udc.es
Web http://https://quantummastergalicia.es
General description O propósito dos computadores cuánticos é aproveitar as propiedades cuánticas dos qubits e poder executar algoritmos cuánticos que utilizan a superposición e o entrelazamiento para ofrecer unha capacidade de procesamiento moito maior que os algoritmos clásicos. É importante indicar que o verdadeiro cambio de paradigma non consiste en facer o mesmo que fan as computadoras dixitais ou clásicas, senón que os algoritmos cuánticos permiten realizar certas operacións dunha maneira totalmente diferente que en moitos casos resulta ser máis eficiente, é dicir, en moito menos tempo ou utilizando moitos menos recursos computacionales. Esta materia presenta unha serie de algoritmos cuánticos que proporcionan vantaxes computacionales sobre os mellores algoritmos clásicos equivalentes. Aínda que algún destes algoritmos non teñen unha aplicación práctica directa ou a súa implementación é inviable nos computadores cuánticos actuais, son un claro exemplo das posibilidades que a computación cuántica ofrece para tratar problemas irresolubles clasicamente.

Este curso está deseñado para que os estudantes aprendan no laboratorio aspectos relevantes da programación cuántica de algoritmos vistos anteriormente

Study programme competencies
Code Study programme competences
A3 CON_03 Know the physical bases that allow information to be coded and processed. Understanding of the new rules that Quantum Mechanics imposes for its processing.
A4 CON_04 Have knowledge of quantum computing, algorithms, circuits, their programming in different languages and accessible platforms.
B1 HD01 Analyze and break down a complex concept, examine each part and see how they fit together
B2 HD02 Classify and identify types or groups, showing how each category is different from the others
B3 HD03 Compare and contrast and point out similarities and differences between two or more topics or concepts
B6 HD11 Prepare accurately the relevant questions for a specific problem.
B8 HD13 Improvise solutions in an innovative way to solve a problem.
B12 HD23 Communicate using the expected norms for the chosen medium.
B13 HD24 Actively participate in face-to-face activities in the classroom.
B14 HD31 Assign resources and responsibilities so that all members of a team can work optimally
B16 HD33 Set goals for the group to analyze the situation, decide what outcome is desired and clearly set an achievable goal.
C1 C1. Adequate oral and written expression in the official languages.
C2 C2. Mastering oral and written expression in a foreign language.
C3 C3. Using ICT in working contexts and lifelong learning.
C4 C4. Acting as a respectful citizen according to democratic cultures and human rights and with a gender perspective.
C5 C5. Understanding the importance of entrepreneurial culture and the useful means for enterprising people.
C6 C6. Acquiring skills for healthy lifestyles, and healthy habits and routines.
C7 C7. Developing the ability to work in interdisciplinary or transdisciplinary teams in order to offer proposals that can contribute to a sustainable environmental, economic, political and social development.
C8 C8. Valuing the importance of research, innovation and technological development for the socioeconomic and cultural progress of society.

Learning aims
Learning outcomes Study programme competences
Coñecer as bases físicas que permiten codificar e procesar información. Comprensión das novas regras que impón a Mecánica Cuántica para o seu procesado. AJ3
AJ4
BJ1
BJ2
BJ3
BJ6
BJ8
BJ12
BJ13
BJ14
BJ16
CJ1
CJ2
CJ3
CJ4
CJ5
CJ6
CJ7
CJ8
Ter coñecementos de computación cuántica, algoritmia, circuítos, a súa programación en diferentes linguaxes e plataformas accesibles. AJ3
AJ4
BJ1
BJ2
BJ3
CJ1
CJ2
CJ3
CJ4
CJ5
CJ6
CJ7
CJ8

Contents
Topic Sub-topic
1- Introdución aos algoritmos cuánticos "clasicos"
.
2- Paralelismo cuántico
.
3- Oráculos cuánticos
.
4- Algoritmos cuánticos "clasicos":
a. Algoritmos de Deutsch e Deutsch-Jozsa
b. Algoritmo de Bernstein-Vazirani
c. Algoritmo de periodicidade de Simon
5- Algoritmo de procura de Grover: amplificación de amplitude
.
6- Transformada Cuántica de Fourier
.
7- Algoritmo Cuántico de Estimación de Fase
.
8- Algoritmo de factorización de Shor
.

Planning
Methodologies / tests Competencies Ordinary class hours Student’s personal work hours Total hours
Laboratory practice A3 A4 B1 B2 B3 B6 B8 B12 B13 B14 B16 C1 C2 C3 C4 C5 C6 C7 C8 10 30 40
Supervised projects A3 A4 B1 B2 B3 C1 C2 C3 C4 C5 C6 C7 C8 3 6 9
Practical test: B1 B2 3 0 3
Objective test A3 A4 B1 B2 B3 C1 C2 C3 C4 C5 C6 C7 C8 3 0 3
Guest lecture / keynote speech A3 A4 5 15 20
 
Personalized attention 0 0
 
(*)The information in the planning table is for guidance only and does not take into account the heterogeneity of the students.

Methodologies
Methodologies Description
Laboratory practice Resolución dos exercicios e problemas propostos, posta en común de dúbidas. Darase protagonismo ao alumnado para que presente os seus resultados.
Supervised projects Nelas atenderase de forma personalizada ao alumnado para proporcionarlle orientación e resolver as súas dúbidas
Practical test: Proba de carácter práctico realizada na aula
Objective test Proba de carácter obxectivo realizada na aula
Guest lecture / keynote speech Nelas explicaranse os contidos programados e responderanse as dúbidas que xurdan. Proporanse exercicios e problemas que os estudantes deberán resolver no seu tempo de traballo propio.

Personalized attention
Methodologies
Laboratory practice
Description
O alumnado recibirá aseoramento durante a realización das súas prácticas de laboratorio por parte do profesorado.

Assessment
Methodologies Competencies Description Qualification
Practical test: B1 B2 Asistencia e participación ás clases expositivas e interactivas, entrega de exercicios e problemas resoltos, exposición voluntaria de resultados 60
Objective test A3 A4 B1 B2 B3 C1 C2 C3 C4 C5 C6 C7 C8 Exames e/ou tests parciais e/ou finais 40
 
Assessment comments

Sources of information
Basic

Básica:
- Notas de Clase
- Varios autores, Qiskit textbook: Quantum protocols and quantum algorithms, Dispoñible online en: https://qiskit.org/learn/course/quantum-protocols-and-quantum-algorithms/


Complementary

- Thomas G. Wong. Introduction to Classical and Quantum Computing, capítulo 7, Rooted Grove, 2022
- Noson S. Yanofsky e Mirco A. Mannucci. Quantum computing for computer scientists, capítulo 6, Cambridge University Press, 2008.
- M.A. Nielsen and I.L. Chuang: Quantum Computation and Quantum Information, capítulos 4-6, Cambridge, 2010.


Recommendations
Subjects that it is recommended to have taken before
Quantum Computing Tools/614551006

Subjects that are recommended to be taken simultaneously
Practical Applications of Quantum Computing/614551010

Subjects that continue the syllabus
Quantum Computing and Machine Learning/614551008
Quantum Computing and High Performance Computing/614551009

Other comments


(*)The teaching guide is the document in which the URV publishes the information about all its courses. It is a public document and cannot be modified. Only in exceptional cases can it be revised by the competent agent or duly revised so that it is in line with current legislation.