Description
Over the past several years, semiconductors have become smaller and their processing speeds have gotten faster. However, due to the recent components becoming too small, electrons simply ignore them and pass through them, so-called tunneling phenomenon has made it difficult to further miniaturize semiconductors. In addition, as problems that are difficult to solve even with the best supercomputers in existence are presented, the need for faster and more efficient computers than existing classical computers has been discussed. The genius physicist Richard Feynman proposed the concept of a quantum computer, a computer that calculates quantum phenomena using the properties of quantum mechanics. Unlike existing bits that can only have one value of 0 or 1 at a time, qubits that can exist as 0 and 1 at the same time are used as calculation units by utilizing the superposition and entanglement phenomena of quantum mechanics. As the number of qubits increases, the number of values that can be expressed simultaneously increases exponentially. It is expected that quantum computers will be able to efficiently solve problems such as factoring large numbers and optimization problems that were previously difficult to solve. How can we mathematically express superposition and entanglement, which are the core of quantum computers? And if we know how to express this mathematically, wouldn't it be possible to simulate these mathematical models? In this session, we will cover the mathematical basis used in quantum circuits for quantum computing and how to simulate them using the Python library NUMPY.