## Duration

21 hours (usually 3 days including breaks)

## Requirements

- Knowledge of mathematical methods in probability and linear algebra
- Comprehension of foundational computer science theories and algorithms
- An understanding of elementary quantum physics concepts
- Basic experience with quantum mechanics models and theories

**Audience**

- Computer Scientists
- Engineers

## Overview

Quantum computing is the integration of quantum physics, mathematics, and computer science methods for the advancement of computational models. It applies two main quantum properties namely superposition and entanglement, which allows the development of quantum computers. Quantum computing incorporates these behaviors of quantum particles to execute computational technologies that are exponentially faster than classic computers.

This instructor-led, live training (online or onsite) is aimed at computer scientists and engineers who wish to understand the principles behind quantum computing and utilize them in developing algorithms for quantum computer implementations.

By the end of this training, participants will be able to:

- Comprehend the fundamentals of quantum computing.
- Understand and apply quantum physics concepts into computational methods.
- Create algorithms for quantum computers.
- Solve computational problems efficiently with quantum computers.
- Integrate quantum behaviors into existing computational models.
- Perceive the potential of quantum computing in the advancement of other technologies.

**Format of the Course**

- Interactive lecture and discussion.
- Lots of exercises and practice.
- Hands-on implementation in a live-lab environment.

**Course Customization Options**

- To request a customized training for this course, please contact us to arrange.

## Course Outline

Introduction

Overview of Quantum Physics Theories Applied in Quantum Computing

- Fundamentals of quantum superposition
- Fundamentals of quantum entanglement
- Mathematical foundations of quantum computing

Overview of Quantum Computing

- Differentiating quantum computing and classical electronic computing
- Integrating quantum behaviors into quantum computing
- The Qubit
- Implementing the Dirac notation
- Computational basis measurements in quantum computing
- Quantum circuits and quantum oracles

Working with Vectors and Matrices in Quantum Computing

- Matrix multiplication using quantum physics
- Conventions of tensor products

Applying Advanced Matrix Concepts to Quantum Computing

Overview of Quantum Computers and Quantum Simulators

- The quantum hardware and its components
- Running a quantum simulator
- Executable quantum mechanisms in a quantum simulation
- Performing quantum computations in a quantum computer

Working with Quantum Computing Models

- Logic and functions of different quantum gates
- Understanding superposition and entanglement effects on quantum gates

Utilizing Shor’s Algorithm and Quantum Computing Cryptography

Implementing Grover’s Algorithm in Quantum Computing

Estimating a Quantum Phase in a Quantum Computer

- The quantum Fourier transform

Writing Basic Quantum Computing Algorithms and Programs for a Quantum Computer

- Utilizing the right tools and language for quantum computing
- Setting up quantum circuits and specifying quantum gates

Compiling and Running Quantum Algorithms and Programs in a Quantum Computer

Testing and Debugging Quantum Algorithms and Quantum Computer Programs

Identifying and Correcting Algorithm Errors Using Quantum Error Correction (QEC)

Overview of Quantum Computing Hardware and Architecture

Integrating Quantum Algorithms and Programs with the Quantum Hardware

Troubleshooting

Advancing Quantum Computing for Future Quantum Information Science Applications

Summary and Conclusion