{"id":1611,"date":"2018-03-19T17:38:27","date_gmt":"2018-03-19T16:38:27","guid":{"rendered":"https:\/\/www.quantum-bits.org\/?p=1611"},"modified":"2022-08-12T17:18:15","modified_gmt":"2022-08-12T16:18:15","slug":"on-quantum-computing","status":"publish","type":"post","link":"https:\/\/www.quantum-bits.org\/?p=1611","title":{"rendered":"On quantum computing"},"content":{"rendered":"<p>Quantum computing as made the headlines recently. At IBM&#8217;s inaugural Index Developer Conference held in San Francisco, the company showed off its latest prototype: a quantum computing rig housing 50 qubits, one of the most advanced machines currently in existence.<\/p>\n<p>Google Quantum AI Lab announced Bristlecone, its new quantum processor, at the annual American Physical Society meeting in Los Angeles. This gate-based superconducting system is to provide a testbed for research into system error rates and scalability of our qubit technology, as well as applications in quantum simulation, optimization, and machine learning.<\/p>\n<p>Microsoft released the first version of its quantum development kit and a new quantum computing programming language (Q#) last December. On february, the company released an update that adds support for quantum development on macOS and GNU\/Linux. Both the Q# language, MS&#8217;s quantum simulator, will run on these platforms in addition to Windows.<\/p>\n<p>It&#8217;s been almost 10 years (!) since I published <a href=\"https:\/\/www.quantum-bits.org\/?p=55\">a small post about quantum information<\/a> &#8230; that is still lacking a follow up. And, unfortunately, there was only very little on that subject in the series of posts on hidden realities I published a couple of years ago :&nbsp;<\/p>\n<ul>\n<li>On hidden realities (part 1) &#8211; <a href=\"http:\/\/quantum-bits.org\/?p=896\" target=\"_blank\" rel=\"noopener\">Many-worlds interpretation of quantum mechanics<\/a><\/li>\n<li>On hidden realities (part 2) &#8211; <a href=\"http:\/\/quantum-bits.org\/?p=963\" target=\"_blank\" rel=\"noopener\">Space-time geometries and dynamics<\/a><\/li>\n<li>On hidden realities (part 3) &#8211; <a href=\"http:\/\/quantum-bits.org\/?p=1078\" target=\"_blank\" rel=\"noopener\">Higher dimensional universes<\/a><\/li>\n<li>On hidden realities (part 4) &#8211; <a href=\"http:\/\/quantum-bits.org\/?p=1134\" target=\"_blank\" rel=\"noopener\">Holographic principle<\/a><\/li>\n<li>On hidden realities (part 5) &#8211;&nbsp;<a href=\"http:\/\/quantum-bits.org\/?p=1210\" target=\"_blank\" rel=\"noopener\">Simulated reality<\/a><\/li>\n<\/ul>\n<p>So, I think it&#8217;s about time to get (a little) deeper about the basis of quantum computing !<\/p>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter wp-image-1612\" src=\"https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/quantum-physics-formulas-over-blackboard.jpg\" alt=\"\" width=\"850\" height=\"332\" srcset=\"https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/quantum-physics-formulas-over-blackboard.jpg 768w, https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/quantum-physics-formulas-over-blackboard-300x117.jpg 300w\" sizes=\"(max-width: 850px) 100vw, 850px\" \/><\/p>\n<p><strong>What is quantum computing ?<\/strong><\/p>\n<p>In simple terms, a quantum computer is any device that uses quantum mechanical phenomena,&nbsp;such as <a title=\"Quantum superposition\" href=\"https:\/\/en.wikipedia.org\/wiki\/Quantum_superposition\" target=\"_blank\" rel=\"noopener\">superposition<\/a> or <a title=\"Quantum entanglement\" href=\"https:\/\/en.wikipedia.org\/wiki\/Quantum_entanglement\" target=\"_blank\" rel=\"noopener\">entanglement<\/a> to perform calculations or manipulate data.<\/p>\n<p>Whereas common computing requires the data to be encoded into binary digits (known as bits), each of which is always in one of two definite states (0 or 1), quantum computation uses quantum bits (known as qubits), which are superpositions of quantum states.<\/p>\n<p>Quantum computing is still in its infancy. Experiments have been carried out in which operations are executed on a very small number of quantum bits (Google&#8217;s Bristlecone 72 qubits processor being the record as of 2018). Practical and theoretical research are carried on, in effort to develop quantum computers for civilian, business, trade, environmental and security purposes, such as cryptanalysis.<\/p>\n<p>Quantum computing typically aims at solving certain classes of problems (like integer factorization) quicker than any classical computers or simulating multi-body quantum systems. Indeed, there exist <a title=\"Quantum algorithm\" href=\"https:\/\/en.wikipedia.org\/wiki\/Quantum_algorithm\" target=\"_blank\" rel=\"noopener\">quantum algorithms<\/a>, such as&nbsp; <a class=\"mw-redirect\" title=\"Simon's algorithm\" href=\"https:\/\/en.wikipedia.org\/wiki\/Simon%27s_algorithm\" target=\"_blank\" rel=\"noopener\">Simon&#8217;s algorithm<\/a>, that run faster than any possible probabilistic classical algorithm.<\/p>\n<p>It is worth noting that a classical computer could in principle (with exponential resources) simulate a quantum algorithm, as quantum computation does not violate the <a title=\"Church\u2013Turing thesis\" href=\"https:\/\/en.wikipedia.org\/wiki\/Church%E2%80%93Turing_thesis\" target=\"_blank\" rel=\"noopener\">Church\u2013Turing thesis<\/a>.<sup id=\"cite_ref-nielchuan_11-0\" class=\"reference\"><\/sup> On the other hand, quantum computers may be able to efficiently solve problems which are not <strong>practically <\/strong>feasible on classical computers.<\/p>\n<p>Quantum computing is of great importance for cryptography and cryptanalysis. Typically, RSA public key encryption relies on the difficulty of factoring large integers. It is conjectured that factorization is impossible to do efficiently with a classical computer. <a href=\"https:\/\/en.wikipedia.org\/wiki\/Shor%27s_algorithm\" target=\"_blank\" rel=\"noopener\">Shor&#8217;s factoring algorithm<\/a> for quantum computers would render this encryption method useless.<\/p>\n<p><strong>Quantum information<\/strong><\/p>\n<p>In quantum computing, a quantum bit (or qubit) is a unit of information. It is modeled as&nbsp; a common <a title=\"Two-state quantum system\" href=\"https:\/\/en.wikipedia.org\/wiki\/Two-state_quantum_system\" target=\"_blank\" rel=\"noopener\">two-state quantum-mechanical system<\/a>.<\/p>\n<p>In a classical system, a bit would have to be either in one state or the other. In a quantum system, a qubit can be a superposition&nbsp;of both states at the same time, a property that is fundamental to quantum computing.<\/p>\n<p>Let&#8217;s enter the realm of quantum mechanics. <a href=\"https:\/\/www.quantum-bits.org\/?p=55\" target=\"_blank\" rel=\"noopener\">As we have seen<\/a>, a quantum state can be mathematically described an element of a <a href=\"https:\/\/en.wikipedia.org\/wiki\/Hilbert_space\" target=\"_blank\" rel=\"noopener\">Hilbert vector space<\/a>. Following Dirac&#8217;s notation, a quantum state (or ket) will denoted as&nbsp;<img src='https:\/\/s0.wp.com\/latex.php?latex=%7C%5Cpsi%5Crangle&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='|\\psi\\rangle' title='|\\psi\\rangle' class='latex' \/>.<\/p>\n<p>Let&#8217;s introduce the following vectors <img src='https:\/\/s0.wp.com\/latex.php?latex=%7C0%5Crangle+%3D+%5Cbegin%7Bbmatrix%7D1+%5C%5C+0+%5Cend%7Bbmatrix%7D&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='|0\\rangle = \\begin{bmatrix}1 \\\\ 0 \\end{bmatrix}' title='|0\\rangle = \\begin{bmatrix}1 \\\\ 0 \\end{bmatrix}' class='latex' \/> and <img src='https:\/\/s0.wp.com\/latex.php?latex=%7C1%5Crangle+%3D+%5Cbegin%7Bbmatrix%7D0+%5C%5C+1+%5Cend%7Bbmatrix%7D&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='|1\\rangle = \\begin{bmatrix}0 \\\\ 1 \\end{bmatrix}' title='|1\\rangle = \\begin{bmatrix}0 \\\\ 1 \\end{bmatrix}' class='latex' \/>.<\/p>\n<p>A pure state qubit would be represented as a <a title=\"Linear combination\" href=\"https:\/\/en.wikipedia.org\/wiki\/Linear_combination\" target=\"_blank\" rel=\"noopener\">linear combination<\/a> of <img src='https:\/\/s0.wp.com\/latex.php?latex=%7C0%5Crangle&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='|0\\rangle' title='|0\\rangle' class='latex' \/> and <img src='https:\/\/s0.wp.com\/latex.php?latex=%7C1%5Crangle&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='|1\\rangle' title='|1\\rangle' class='latex' \/>:<\/p>\n<p style=\"text-align: center;\"><img src='https:\/\/s0.wp.com\/latex.php?latex=%7C%5Cpsi%5Crangle+%3D+%5Calpha+%7C0%5Crangle+%2B+%5Cbeta+%7C1%5Crangle&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='|\\psi\\rangle = \\alpha |0\\rangle + \\beta |1\\rangle' title='|\\psi\\rangle = \\alpha |0\\rangle + \\beta |1\\rangle' class='latex' \/> where <img src='https:\/\/s0.wp.com\/latex.php?latex=%5Calpha&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='\\alpha' title='\\alpha' class='latex' \/> and <img src='https:\/\/s0.wp.com\/latex.php?latex=%5Cbeta&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='\\beta' title='\\beta' class='latex' \/> are <a title=\"Probability amplitude\" href=\"https:\/\/en.wikipedia.org\/wiki\/Probability_amplitude\" target=\"_blank\" rel=\"noopener\">probability amplitudes<\/a>.<\/p>\n<p>Because the absolute squares of amplitudes <img src='https:\/\/s0.wp.com\/latex.php?latex=%7C%5Calpha%7C%5E2&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='|\\alpha|^2' title='|\\alpha|^2' class='latex' \/> and <img src='https:\/\/s0.wp.com\/latex.php?latex=%7C%5Cbeta%7C%5E2+&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='|\\beta|^2 ' title='|\\beta|^2 ' class='latex' \/> are probabilities, it follows that the complex numbers <img src='https:\/\/s0.wp.com\/latex.php?latex=%5Calpha&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='\\alpha' title='\\alpha' class='latex' \/> and <img src='https:\/\/s0.wp.com\/latex.php?latex=%5Cbeta&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='\\beta' title='\\beta' class='latex' \/> must be constrained by the equation <img src='https:\/\/s0.wp.com\/latex.php?latex=%7C%5Calpha%7C%5E2+%2B+%7C%5Cbeta%7C%5E2+%3D+1&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='|\\alpha|^2 + |\\beta|^2 = 1' title='|\\alpha|^2 + |\\beta|^2 = 1' class='latex' \/>, which can be treated as the equation for a 3-sphere embedded in 4-dimensional space with a radius of <span class=\"texhtml\">1, called a <a href=\"https:\/\/en.wikipedia.org\/wiki\/Bloch_sphere\" target=\"_blank\" rel=\"noopener\">Bloch sphere<\/a>:<br \/>\n<\/span><\/p>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter wp-image-1658\" src=\"https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/blochsphere.png\" alt=\"\" width=\"177\" height=\"200\"><\/p>\n<p>Operators act on quantum states. More specifically, <a href=\"https:\/\/en.wikipedia.org\/wiki\/Observable\" target=\"_blank\" rel=\"noopener\">observables<\/a> are <a href=\"https:\/\/en.wikipedia.org\/wiki\/Self-adjoint_operator\" target=\"_blank\" rel=\"noopener\">self-adjoint<\/a> <a href=\"https:\/\/en.wikipedia.org\/wiki\/Hermitian_matrix\" target=\"_blank\" rel=\"noopener\">hermitian<\/a> operators.<\/p>\n<p>Measurement is an operation in which information is gained about the state of the qubit. The result of the measurement of the pure quantum state&nbsp;<img src='https:\/\/s0.wp.com\/latex.php?latex=%7C%5Cpsi%5Crangle+&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='|\\psi\\rangle ' title='|\\psi\\rangle ' class='latex' \/> will either be <img src='https:\/\/s0.wp.com\/latex.php?latex=%5Calpha+%7C0%5Crangle+&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='\\alpha |0\\rangle ' title='\\alpha |0\\rangle ' class='latex' \/> or <img src='https:\/\/s0.wp.com\/latex.php?latex=%5Calpha+%7C1%5Crangle+&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='\\alpha |1\\rangle ' title='\\alpha |1\\rangle ' class='latex' \/>, with respective probabilities <img src='https:\/\/s0.wp.com\/latex.php?latex=%7C%5Calpha%7C%5E2&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='|\\alpha|^2' title='|\\alpha|^2' class='latex' \/> or <img src='https:\/\/s0.wp.com\/latex.php?latex=%7C%5Cbeta%7C%5E2&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='|\\beta|^2' title='|\\beta|^2' class='latex' \/>.<\/p>\n<p><strong>Classical computation<\/strong><\/p>\n<p>Now, let&#8217;s get back for a moment to non-quantum computing. Computation is done by means of an algorithm, which can be thought of as a set of instructions for solving a specific problem.<\/p>\n<div>Around 1936-37, the great mathematician, logician, computer scientist, cryptanalyst, philosopher, and theoretical biologist <a href=\"https:\/\/en.wikipedia.org\/wiki\/Alan_Turing\" target=\"_blank\" rel=\"noopener\">Alan Turing<\/a> devised a hypothetical machine that could execute any algorithm called &#8230; a <a href=\"https:\/\/en.wikipedia.org\/wiki\/Turing_machine\" target=\"_blank\" rel=\"noopener\">Turing Machine<\/a>.<\/div>\n<div>&nbsp;<\/div>\n<div><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter wp-image-1650\" src=\"https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/turingmachine.png\" alt=\"\" width=\"290\" height=\"64\" srcset=\"https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/turingmachine.png 340w, https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/turingmachine-300x66.png 300w\" sizes=\"(max-width: 290px) 100vw, 290px\" \/><\/div>\n<div>A Turing machine consists of:<\/div>\n<div>&nbsp;<\/div>\n<ul>\n<li>A <strong>tape<\/strong>, divided into cells. Each cell contains a symbol from some finite alphabet. The tape is assumed to be arbitrarily extendable to the left and to the right.<\/li>\n<li>A <strong>head<\/strong>, that can read and write symbols on the tape and move the tape left and right one (and only one) cell at a time.<\/li>\n<li>A <strong>state register<\/strong> that stores the (finate) state of the machine.<\/li>\n<li>A (finite) <strong>table<\/strong> of instructions that, given the state (<em>q<sub>i<\/sub><\/em>) the machine is currently in and the symbol (<em>a<sub>j<\/sub><\/em>) it is reading on the tape (symbol currently under the head), tells the machine what to do: erase or write a symbol, move the head, &#8230;<\/li>\n<\/ul>\n<div>Programs are defined by a set of instructions. An instruction can be written as <em>T:(q,a)<\/em> \u2192 <em>(q&#8217;,a&#8217;,d)<\/em>, where <em>q<\/em> is the current state and <em>q&#8217;<\/em> is the final state of the head, <em>a<\/em> is the symbol in the cell, <em>a&#8217;<\/em> is the symbol to be written, <em>d<\/em> is the direction the head will move.<\/div>\n<div>&nbsp;<\/div>\n<div>\n<div>\n<p>The input is the initial state of the Turing machine.The output of a Turing machine is the final state of the Turing machine (if any). For a Turing machine it is impossible to know for all inputs whether the control head will reach a halting state or not. This is the known as the <a href=\"https:\/\/en.wikipedia.org\/wiki\/Halting_problem\" target=\"_blank\" rel=\"noopener\">halting problem<\/a>.<\/p>\n<p>A Turing machine that is able to simulate any other Turing machine is called a <a title=\"Universal Turing machine\" href=\"https:\/\/en.wikipedia.org\/wiki\/Universal_Turing_machine\" target=\"_blank\" rel=\"noopener\">universal Turing machine<\/a>. A more mathematically oriented definition with a similar &#8220;universal&#8221; nature was introduced by <a title=\"Alonzo Church\" href=\"https:\/\/en.wikipedia.org\/wiki\/Alonzo_Church\" target=\"_blank\" rel=\"noopener\">Alonzo Church<\/a>, whose work on <a title=\"Lambda calculus\" href=\"https:\/\/en.wikipedia.org\/wiki\/Lambda_calculus\" target=\"_blank\" rel=\"noopener\">lambda calculus<\/a> intertwined with Turing&#8217;s in a formal theory of <a title=\"Computation\" href=\"https:\/\/en.wikipedia.org\/wiki\/Computation\" target=\"_blank\" rel=\"noopener\">computation<\/a> known as the Church\u2013Turing thesis.<\/p>\n<\/div>\n<p>The thesis conjectures that any function whose values can be computed by an <a title=\"Algorithm\" href=\"https:\/\/en.wikipedia.org\/wiki\/Algorithm\" target=\"_blank\" rel=\"noopener\">algorithm<\/a> can be computed by a Turing machine, and therefore that if any real-world computer can simulate a Turing machine, it is Turing equivalent to a Turing machine.<\/p>\n<\/div>\n<p>These principles are considered to be the origin of the idea of a stored-program computer used by <a title=\"John von Neumann\" href=\"https:\/\/en.wikipedia.org\/wiki\/John_von_Neumann\" target=\"_blank\" rel=\"noopener\">John von Neumann<\/a> in 1946 for the &#8220;<em>Electronic Computing Instrument<\/em>&#8221; that now bears his name: the <a title=\"Von Neumann architecture\" href=\"https:\/\/en.wikipedia.org\/wiki\/Von_Neumann_architecture\" target=\"_blank\" rel=\"noopener\">von Neumann architecture.<\/a><\/p>\n<p><strong>Logic gates<\/strong><\/p>\n<p>Logic gates is an idealized or physical device implementing a Boolean function. A logic gate performs a logical operation on one or more binary inputs and produces a binary output. In any computation, a circuit (made of logic gates) can be represented as mapping a n-bit input to a m-bit output.<\/p>\n<p>The following table lists such logic gates:<\/p>\n<table width=\"450\" cellspacing=\"0\" cellpadding=\"0\" border=\"1\">\n<tbody>\n<tr>\n<td style=\"text-align: right;\">NOT<\/td>\n<td style=\"text-align: center; vertical-align: middle;\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter wp-image-1670\" src=\"https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/NOT.png\" alt=\"\" width=\"50\" height=\"25\"><\/td>\n<td style=\"text-align: center;\"><img src='https:\/\/s0.wp.com\/latex.php?latex=%5Coverline%7BA%7D+&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='\\overline{A} ' title='\\overline{A} ' class='latex' \/><\/td>\n<td style=\"text-align: right;\">Negation<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: right;\">AND<\/td>\n<td style=\"text-align: center; vertical-align: middle;\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter wp-image-1669\" src=\"https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/AND.png\" alt=\"\" width=\"50\" height=\"25\"><\/td>\n<td style=\"text-align: center;\"><img src='https:\/\/s0.wp.com\/latex.php?latex=A+%5Ccdot+B&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='A \\cdot B' title='A \\cdot B' class='latex' \/><\/td>\n<td style=\"text-align: right;\">Conjunction<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: right;\">OR<\/td>\n<td style=\"text-align: center; vertical-align: middle;\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter wp-image-1664\" src=\"https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/OR.png\" alt=\"\" width=\"50\" height=\"25\"><\/td>\n<td style=\"text-align: center;\"><img src='https:\/\/s0.wp.com\/latex.php?latex=A+%2B+B&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='A + B' title='A + B' class='latex' \/><\/td>\n<td style=\"text-align: right;\">Disjunction<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: right;\">NAND<\/td>\n<td style=\"text-align: center; vertical-align: middle;\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter wp-image-1668\" src=\"https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/NAND.png\" alt=\"\" width=\"50\" height=\"25\"><\/td>\n<td style=\"text-align: center;\"><img src='https:\/\/s0.wp.com\/latex.php?latex=%5Coverline%7BA+%5Ccdot+B%7D&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='\\overline{A \\cdot B}' title='\\overline{A \\cdot B}' class='latex' \/><\/td>\n<td style=\"text-align: right;\">Alternative denial<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: right;\">NOR<\/td>\n<td style=\"text-align: center; vertical-align: middle;\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter wp-image-1667\" src=\"https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/NOR.png\" alt=\"\" width=\"50\" height=\"25\"><\/td>\n<td style=\"text-align: center;\"><img src='https:\/\/s0.wp.com\/latex.php?latex=%5Coverline%7BA+%2B+B%7D&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='\\overline{A + B}' title='\\overline{A + B}' class='latex' \/><\/td>\n<td style=\"text-align: right;\">Joint denial<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: right;\">XOR<\/td>\n<td style=\"text-align: center; vertical-align: middle;\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter wp-image-1666\" src=\"https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/XOR.png\" alt=\"\" width=\"50\" height=\"25\"><\/td>\n<td style=\"text-align: center;\"><img src='https:\/\/s0.wp.com\/latex.php?latex=A+%5Coplus+B&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='A \\oplus B' title='A \\oplus B' class='latex' \/><\/td>\n<td style=\"text-align: right;\">Exclusive Or<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: right;\">XNOR<\/td>\n<td style=\"text-align: center; vertical-align: middle;\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter wp-image-1665\" src=\"https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/XNOR.png\" alt=\"\" width=\"50\" height=\"25\"><\/td>\n<td style=\"text-align: center;\"><img src='https:\/\/s0.wp.com\/latex.php?latex=%5Coverline%7BA+%5Coplus+B%7D&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='\\overline{A \\oplus B}' title='\\overline{A \\oplus B}' class='latex' \/><\/td>\n<td style=\"text-align: right;\">Biconditional<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>These gates can be expressed as linear operators.<\/p>\n<p>The logic gate &#8220;NOT&#8221; can trivially be represented as a 2 x 2 matrix:<\/p>\n<p style=\"text-align: center;\"><img src='https:\/\/s0.wp.com\/latex.php?latex=%5Ctextsf%7BNOT%7D+%3D+%5Cbegin%7Bbmatrix%7D+0+%26+1+%5C%5C+1+%26+0+%5Cend%7Bbmatrix%7D&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='\\textsf{NOT} = \\begin{bmatrix} 0 &amp; 1 \\\\ 1 &amp; 0 \\end{bmatrix}' title='\\textsf{NOT} = \\begin{bmatrix} 0 &amp; 1 \\\\ 1 &amp; 0 \\end{bmatrix}' class='latex' \/><\/p>\n<p style=\"text-align: center;\"><img src='https:\/\/s0.wp.com\/latex.php?latex=%5Ctextsf%7BNOT%7D%7C1%5Crangle+%3D+%5Cbegin%7Bbmatrix%7D+0+%26+1+%5C%5C+1+%26+0+%5Cend%7Bbmatrix%7D+%5Cbegin%7Bbmatrix%7D0+%5C%5C+1+%5Cend%7Bbmatrix%7D%3D%5Cbegin%7Bbmatrix%7D1+%5C%5C+0+%5Cend%7Bbmatrix%7D%3D%7C0%5Crangle&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='\\textsf{NOT}|1\\rangle = \\begin{bmatrix} 0 &amp; 1 \\\\ 1 &amp; 0 \\end{bmatrix} \\begin{bmatrix}0 \\\\ 1 \\end{bmatrix}=\\begin{bmatrix}1 \\\\ 0 \\end{bmatrix}=|0\\rangle' title='\\textsf{NOT}|1\\rangle = \\begin{bmatrix} 0 &amp; 1 \\\\ 1 &amp; 0 \\end{bmatrix} \\begin{bmatrix}0 \\\\ 1 \\end{bmatrix}=\\begin{bmatrix}1 \\\\ 0 \\end{bmatrix}=|0\\rangle' class='latex' \/><\/p>\n<p>As an example, one can build a circuit of logic gates in order to process binary additions:<\/p>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter wp-image-1694\" src=\"https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/binaryaddition.png\" alt=\"\" width=\"342\" height=\"150\" srcset=\"https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/binaryaddition.png 500w, https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/binaryaddition-300x131.png 300w\" sizes=\"(max-width: 342px) 100vw, 342px\" \/><\/p>\n<p><strong>Quantum computation<\/strong><\/p>\n<div>Quantum bits can be manipulated in a manner analogous to the logic gates and circuit models of classical computation.<\/div>\n<div>&nbsp;<\/div>\n<div>\n<div>We have seen, that for a single qubit (2-level system):<\/div>\n<div style=\"text-align: center;\">&nbsp;<br \/>\n<img src='https:\/\/s0.wp.com\/latex.php?latex=%7C%5Cpsi%5Crangle+%3D+%5Calpha+%7C0%5Crangle+%2B+%5Cbeta+%7C1%5Crangle&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='|\\psi\\rangle = \\alpha |0\\rangle + \\beta |1\\rangle' title='|\\psi\\rangle = \\alpha |0\\rangle + \\beta |1\\rangle' class='latex' \/> or, simply <img src='https:\/\/s0.wp.com\/latex.php?latex=%7C%5Cpsi%5Crangle+%3D+%5Cbegin%7Bbmatrix%7D+%5Calpha+%5C%5C+%5Cbeta+%5Cend%7Bbmatrix%7D&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='|\\psi\\rangle = \\begin{bmatrix} \\alpha \\\\ \\beta \\end{bmatrix}' title='|\\psi\\rangle = \\begin{bmatrix} \\alpha \\\\ \\beta \\end{bmatrix}' class='latex' \/><\/div>\n<\/div>\n<p>How can it be extended to a 2-qubit system ?<\/p>\n<p>First, let&#8217;s define two qubits:<\/p>\n<p style=\"text-align: center;\"><img src='https:\/\/s0.wp.com\/latex.php?latex=%7C%5Cpsi_1%5Crangle+%3D+%5Cbegin%7Bbmatrix%7D+%5Calpha_1+%5C%5C+%5Cbeta_1+%5Cend%7Bbmatrix%7D&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='|\\psi_1\\rangle = \\begin{bmatrix} \\alpha_1 \\\\ \\beta_1 \\end{bmatrix}' title='|\\psi_1\\rangle = \\begin{bmatrix} \\alpha_1 \\\\ \\beta_1 \\end{bmatrix}' class='latex' \/> and&nbsp; <img src='https:\/\/s0.wp.com\/latex.php?latex=%7C%5Cpsi_2%5Crangle+%3D+%5Cbegin%7Bbmatrix%7D+%5Calpha_2+%5C%5C+%5Cbeta_2+%5Cend%7Bbmatrix%7D&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='|\\psi_2\\rangle = \\begin{bmatrix} \\alpha_2 \\\\ \\beta_2 \\end{bmatrix}' title='|\\psi_2\\rangle = \\begin{bmatrix} \\alpha_2 \\\\ \\beta_2 \\end{bmatrix}' class='latex' \/><\/p>\n<div>A 2-qubit can be represented as a <a href=\"https:\/\/en.wikipedia.org\/wiki\/Tensor_product\" target=\"_blank\" rel=\"noopener\">tensor product<\/a> :<\/div>\n<div>&nbsp;<\/div>\n<div style=\"text-align: center;\"><img src='https:\/\/s0.wp.com\/latex.php?latex=%7C%5Cpsi_1+%5Cpsi_1%5Crangle+%3D+%7C%5Cpsi_1%5Crangle+%5Cotimes+%7C%5Cpsi_2%5Crangle&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='|\\psi_1 \\psi_1\\rangle = |\\psi_1\\rangle \\otimes |\\psi_2\\rangle' title='|\\psi_1 \\psi_1\\rangle = |\\psi_1\\rangle \\otimes |\\psi_2\\rangle' class='latex' \/> or <img src='https:\/\/s0.wp.com\/latex.php?latex=%7C%5Cpsi_1+%5Cpsi_1%5Crangle+%3D+%5Cbegin%7Bbmatrix%7D+%5Calpha_1+%5Calpha_2+%5C%5C+%5Calpha_1+%5Cbeta_2+%5C%5C+%5Cbeta_1+%5Calpha_2+%5C%5C+%5Cbeta_1+%5Cbeta_2%5Cend%7Bbmatrix%7D&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='|\\psi_1 \\psi_1\\rangle = \\begin{bmatrix} \\alpha_1 \\alpha_2 \\\\ \\alpha_1 \\beta_2 \\\\ \\beta_1 \\alpha_2 \\\\ \\beta_1 \\beta_2\\end{bmatrix}' title='|\\psi_1 \\psi_1\\rangle = \\begin{bmatrix} \\alpha_1 \\alpha_2 \\\\ \\alpha_1 \\beta_2 \\\\ \\beta_1 \\alpha_2 \\\\ \\beta_1 \\beta_2\\end{bmatrix}' class='latex' \/><\/div>\n<div>&nbsp;<\/div>\n<div>\n<div>In order to represent a 2-qubit system, a 4-dimensional vector is needed.<\/div>\n<\/div>\n<div>&nbsp;<\/div>\n<div>\n<div>A basis for a 2-qubit system can be written as the tensor products of the individual qubit&#8217;s<\/div>\n<div>basis vectors:<\/div>\n<div>&nbsp;<\/div>\n<\/div>\n<ul>\n<li><img src='https:\/\/s0.wp.com\/latex.php?latex=%7C+0+0+%5Crangle+%3D+%7C+0+%5Crangle+%5Cotimes+%7C+0+%5Crangle&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='| 0 0 \\rangle = | 0 \\rangle \\otimes | 0 \\rangle' title='| 0 0 \\rangle = | 0 \\rangle \\otimes | 0 \\rangle' class='latex' \/><\/li>\n<li><img src='https:\/\/s0.wp.com\/latex.php?latex=%7C+0+1+%5Crangle+%3D+%7C+0+%5Crangle+%5Cotimes+%7C+1+%5Crangle&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='| 0 1 \\rangle = | 0 \\rangle \\otimes | 1 \\rangle' title='| 0 1 \\rangle = | 0 \\rangle \\otimes | 1 \\rangle' class='latex' \/><\/li>\n<li><img src='https:\/\/s0.wp.com\/latex.php?latex=%7C+1+0+%5Crangle+%3D+%7C+1+%5Crangle+%5Cotimes+%7C+0+%5Crangle&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='| 1 0 \\rangle = | 1 \\rangle \\otimes | 0 \\rangle' title='| 1 0 \\rangle = | 1 \\rangle \\otimes | 0 \\rangle' class='latex' \/><\/li>\n<li><img src='https:\/\/s0.wp.com\/latex.php?latex=%7C+1+1+%5Crangle+%3D+%7C+1+%5Crangle+%5Cotimes+%7C+1+%5Crangle&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='| 1 1 \\rangle = | 1 \\rangle \\otimes | 1 \\rangle' title='| 1 1 \\rangle = | 1 \\rangle \\otimes | 1 \\rangle' class='latex' \/><\/li>\n<\/ul>\n<div>A quantum computer with a given number of qubits is fundamentally different from a classical computer composed of the same number of classical bits.<\/div>\n<div>&nbsp;<\/div>\n<div>Representing the state of an <strong>n-qubit<\/strong> system requires (on a classical computer) the storage of <strong>2<sup><i>n<\/i><\/sup> <\/strong>(complex) <strong>numbers<\/strong>, whereas to characterize the state of a classical <strong>n-bit<\/strong> system, it is sufficient to store only <strong>n numbers<\/strong>.<\/div>\n<div>&nbsp;<\/div>\n<div>\n<div>\n<div class=\"textLayer\">\n<div>A quantum computer may be thought of as a collection of n-qubits called a <strong>quantum<\/strong> <strong>register<\/strong>. One n-qubit quantum register has a basis of <strong>2<sup><i>n<\/i><\/sup><\/strong> allowed states, and any state of the quantum computer is in a superposition of these states.<\/div>\n<\/div>\n<\/div>\n<\/div>\n<div>&nbsp;<\/div>\n<div><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter wp-image-1709\" src=\"https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/qubits-superposition.png\" alt=\"\" width=\"215\" height=\"200\" srcset=\"https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/qubits-superposition.png 322w, https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/qubits-superposition-300x280.png 300w\" sizes=\"(max-width: 215px) 100vw, 215px\" \/><\/div>\n<div>&nbsp;<\/div>\n<div>At first sight, it would seem that qubits can hold exponentially more information than their classical counterparts. But one must mustn&#8217;t overlook the fact that the qubits are only in a <strong>probabilistic superposition<\/strong> of all of their states.<\/div>\n<div>&nbsp;<\/div>\n<div>This means that when the final state of the qubits is <strong>measured<\/strong>, they will only be found in <strong>one<\/strong> of the possible configurations they were in <strong>before<\/strong> the measurement. Quantum mechanically speaking, it is generally incorrect to think of a system as being in one particular state before the measurement.<\/div>\n<div>&nbsp;<\/div>\n<p><strong>Quantum entanglement<\/strong><\/p>\n<div>An important distinguishing feature between a qubit and a classical bit is that multiple qubits can exhibit quantum entanglement. This is a <a title=\"Quantum nonlocality\" href=\"https:\/\/en.wikipedia.org\/wiki\/Quantum_nonlocality\" target=\"_blank\" rel=\"noopener\">nonlocal<\/a> property that allows a set of qubits to express higher correlation than is possible in classical systems.<\/div>\n<div>&nbsp;<\/div>\n<div>Quantum entanglement is a physical phenomenon which occurs when pairs or groups of particles are generated or interact in ways such that the quantum state of each particle cannot be described independently of the state of the other(s), even when the particles are separated by a large distance\u2014instead, a quantum state must be described for the system as a whole.<\/div>\n<div>&nbsp;<\/div>\n<div>Let&#8217;s consider 2-qubit systems. A 2-qubit state is said to be <em>separable<\/em> if it can be written as the tensor product of two 1-qubit states. Example:<\/div>\n<div>&nbsp;<\/div>\n<div style=\"text-align: center;\"><img src='https:\/\/s0.wp.com\/latex.php?latex=%5Cdisplaystyle+%7C+%5Cpsi_s+%5Crangle+%3D+%5Cfrac%7B1%7D%7B%5Csqrt%7B2%7D%7D+%5Cbig%28+%7C+01+%5Crangle+%2B%7C+11+%5Crangle+%5Cbig%29+%3D+%5Cfrac%7B1%7D%7B%5Csqrt%7B2%7D%7D+%5Cbig%28+%7C+0+%5Crangle+%2B%7C+1+%5Crangle+%5Cbig%29+%5Cotimes+%7C+1+%5Crangle&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='\\displaystyle | \\psi_s \\rangle = \\frac{1}{\\sqrt{2}} \\big( | 01 \\rangle +| 11 \\rangle \\big) = \\frac{1}{\\sqrt{2}} \\big( | 0 \\rangle +| 1 \\rangle \\big) \\otimes | 1 \\rangle' title='\\displaystyle | \\psi_s \\rangle = \\frac{1}{\\sqrt{2}} \\big( | 01 \\rangle +| 11 \\rangle \\big) = \\frac{1}{\\sqrt{2}} \\big( | 0 \\rangle +| 1 \\rangle \\big) \\otimes | 1 \\rangle' class='latex' \/><\/div>\n<div>&nbsp;<\/div>\n<div>A 2-qubit state is <em>entangled<\/em> otherwise. Example:<\/div>\n<div>&nbsp;<\/div>\n<div style=\"text-align: center;\"><img src='https:\/\/s0.wp.com\/latex.php?latex=%5Cdisplaystyle+%7C+%5Cpsi_e+%5Crangle+%3D+%5Cfrac%7B1%7D%7B%5Csqrt%7B2%7D%7D+%5Cbig%28+%7C+00+%5Crangle+%2B%7C+11+%5Crangle+%5Cbig%29+&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='\\displaystyle | \\psi_e \\rangle = \\frac{1}{\\sqrt{2}} \\big( | 00 \\rangle +| 11 \\rangle \\big) ' title='\\displaystyle | \\psi_e \\rangle = \\frac{1}{\\sqrt{2}} \\big( | 00 \\rangle +| 11 \\rangle \\big) ' class='latex' \/><\/div>\n<div>&nbsp;<\/div>\n<div>This last state is also known as a <a title=\"Bell state\" href=\"https:\/\/en.wikipedia.org\/wiki\/Bell_state\" target=\"_blank\" rel=\"noopener\">Bell state<\/a>. In this state, there are equal probabilities (<img src='https:\/\/s0.wp.com\/latex.php?latex=%7C%5Cfrac%7B1%7D%7B%5Csqrt%7B2%7D%7D%7C%5E2%3D%5Cfrac%7B1%7D%7B2%7D&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='|\\frac{1}{\\sqrt{2}}|^2=\\frac{1}{2}' title='|\\frac{1}{\\sqrt{2}}|^2=\\frac{1}{2}' class='latex' \/>) of measuring either <span class=\"mwe-math-element\"><span class=\"mwe-math-mathml-inline mwe-math-mathml-a11y\"><img src='https:\/\/s0.wp.com\/latex.php?latex=%7C+00+%5Crangle&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='| 00 \\rangle' title='| 00 \\rangle' class='latex' \/> or&nbsp;<img src='https:\/\/s0.wp.com\/latex.php?latex=%7C+01+%5Crangle&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='| 01 \\rangle' title='| 01 \\rangle' class='latex' \/>.<\/span><\/span><\/div>\n<div>&nbsp;<\/div>\n<div>Now, let&#8217;s imagine that these entangled 2-qubits are separated: one each given to Alice and Bob. Alice makes a measurement of her qubit, obtaining either&nbsp;<span class=\"mwe-math-element\"><span class=\"mwe-math-mathml-inline mwe-math-mathml-a11y\"><img src='https:\/\/s0.wp.com\/latex.php?latex=%7C+0+%5Crangle&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='| 0 \\rangle' title='| 0 \\rangle' class='latex' \/><\/span><\/span> or <span class=\"mwe-math-element\"><span class=\"mwe-math-mathml-inline mwe-math-mathml-a11y\"><img src='https:\/\/s0.wp.com\/latex.php?latex=%7C+1+%5Crangle&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='| 1 \\rangle' title='| 1 \\rangle' class='latex' \/><\/span><\/span>.<\/div>\n<div>&nbsp;<\/div>\n<div>Because of the qubits&#8217; entanglement, Bob must now get exactly the same measurement as Alice : if she measures a <span class=\"mwe-math-element\"><span class=\"mwe-math-mathml-inline mwe-math-mathml-a11y\"><img src='https:\/\/s0.wp.com\/latex.php?latex=%7C+0+%5Crangle&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='| 0 \\rangle' title='| 0 \\rangle' class='latex' \/><\/span><\/span>, Bob must measure the same, as&nbsp;<span class=\"mwe-math-element\"><span class=\"mwe-math-mathml-inline mwe-math-mathml-a11y\"><img src='https:\/\/s0.wp.com\/latex.php?latex=%7C+00+%5Crangle&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='| 00 \\rangle' title='| 00 \\rangle' class='latex' \/><\/span><\/span> is the only state where Alice&#8217;s qubit is a <span class=\"mwe-math-element\"><span class=\"mwe-math-mathml-inline mwe-math-mathml-a11y\"><img src='https:\/\/s0.wp.com\/latex.php?latex=%7C+0+%5Crangle&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='| 0 \\rangle' title='| 0 \\rangle' class='latex' \/><\/span><\/span>.<\/div>\n<div>&nbsp;<\/div>\n<div>Entanglement also allows multiple states (such as the Bell state mentioned above) to be acted on simultaneously, <strong>unlike classical bits that can only have one value at a time<\/strong>. Entanglement is a <strong>necessary<\/strong> ingredient of any quantum computation that <strong>cannot be done efficiently on a classical computer<\/strong>. Many of the successes of quantum computation and communication, such as <a title=\"Quantum teleportation\" href=\"https:\/\/en.wikipedia.org\/wiki\/Quantum_teleportation\" target=\"_blank\" rel=\"noopener\">quantum teleportation<\/a> and <a title=\"Superdense coding\" href=\"https:\/\/en.wikipedia.org\/wiki\/Superdense_coding\" target=\"_blank\" rel=\"noopener\">superdense coding<\/a>, make use of entanglement, suggesting that <strong>entanglement<\/strong> is a resource that is <strong>unique<\/strong> to quantum computation.<\/div>\n<div>&nbsp;<\/div>\n<p><strong>Quantum logic gates<\/strong><\/p>\n<p>A <a class=\"mw-redirect\" title=\"Quantum logic gate\" href=\"https:\/\/en.wikipedia.org\/wiki\/Quantum_logic_gate\">quantum logic gate<\/a> can operate on a qubit. Mathematically speaking, the qubit undergoes a unitary transformation. <a href=\"https:\/\/en.wikipedia.org\/wiki\/Unitary_transformation\" target=\"_blank\" rel=\"noopener\">Unitary transformations<\/a> correspond to rotations of the qubit vector in the Bloch sphere.<\/p>\n<div>\n<div class=\"textLayer\">\n<div>Prerequisites for quantum computation are:<\/div>\n<div>&nbsp;<\/div>\n<\/div>\n<\/div>\n<ul>\n<li>Being able to prepare system in a well defined initial state: <img src='https:\/\/s0.wp.com\/latex.php?latex=%7C+%5Cpsi_i+%5Crangle+%3D+%7C+011+%5Cdots+101+%5Crangle+&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='| \\psi_i \\rangle = | 011 \\dots 101 \\rangle ' title='| \\psi_i \\rangle = | 011 \\dots 101 \\rangle ' class='latex' \/><\/li>\n<li>Being able to manipulate the quantum state via unitary transformations: <img src='https:\/\/s0.wp.com\/latex.php?latex=%7C+%5Cpsi_f+%5Crangle+%3D+%5Ctextbf%7BU%7D+%7C+%5Cpsi_i+%5Crangle+&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='| \\psi_f \\rangle = \\textbf{U} | \\psi_i \\rangle ' title='| \\psi_f \\rangle = \\textbf{U} | \\psi_i \\rangle ' class='latex' \/><\/li>\n<li>Be able to measure the final states of each qubit : <img src='https:\/\/s0.wp.com\/latex.php?latex=%7C+%5Cpsi_f+%5Crangle+%3D+%7C+001+%5Cdots+011+%5Crangle+&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='| \\psi_f \\rangle = | 001 \\dots 011 \\rangle ' title='| \\psi_f \\rangle = | 001 \\dots 011 \\rangle ' class='latex' \/><\/li>\n<\/ul>\n<p>The most common quantum gates operate on spaces of one or two qubits, just like the common classical logic gates operate on one or two bits.<\/p>\n<p>As matrices, quantum gates can be described by&nbsp;2<sup><i>n<\/i><\/sup> x&nbsp;2<sup><i>n<\/i><\/sup> sized unitary matrices, where <span class=\"mwe-math-element\"><span class=\"mwe-math-mathml-inline mwe-math-mathml-a11y\"><em> n<\/em> <\/span><\/span>is the number of qubits the gate acts on.<\/p>\n<p>The <b>Hadamard gate<\/b> is a 1-qubit rotation, mapping the qubit-basis states <span class=\"mwe-math-element\"><span class=\"mwe-math-mathml-inline mwe-math-mathml-a11y\"><img src='https:\/\/s0.wp.com\/latex.php?latex=%7C+0+%5Crangle&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='| 0 \\rangle' title='| 0 \\rangle' class='latex' \/><\/span><\/span>&nbsp; and&nbsp;<span class=\"mwe-math-element\"><span class=\"mwe-math-mathml-inline mwe-math-mathml-a11y\"><img src='https:\/\/s0.wp.com\/latex.php?latex=%7C+1+%5Crangle&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='| 1 \\rangle' title='| 1 \\rangle' class='latex' \/><\/span><\/span>&nbsp; to two superposition states with equal weight of the computational basis states <span class=\"mwe-math-element\"><span class=\"mwe-math-mathml-inline mwe-math-mathml-a11y\"><img src='https:\/\/s0.wp.com\/latex.php?latex=%7C+0+%5Crangle&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='| 0 \\rangle' title='| 0 \\rangle' class='latex' \/><\/span><\/span>&nbsp; and&nbsp;<span class=\"mwe-math-element\"><span class=\"mwe-math-mathml-inline mwe-math-mathml-a11y\"><img src='https:\/\/s0.wp.com\/latex.php?latex=%7C+1+%5Crangle&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='| 1 \\rangle' title='| 1 \\rangle' class='latex' \/><\/span><\/span>.<\/p>\n<p>It is commonly defined as:<\/p>\n<p style=\"text-align: center;\"><img src='https:\/\/s0.wp.com\/latex.php?latex=%5Cdisplaystyle+H+%3D+%5Cfrac%7B+%7C+0+%5Crangle+%2B+%7C+1+%5Crangle+%7D+%7B+%5Csqrt%7B2%7D+%7D+%5Clangle+0+%7C+%2B+%5Cfrac%7B+%7C+0+%5Crangle+-+%7C+1+%5Crangle+%7D+%7B+%5Csqrt%7B2%7D+%7D+%5Clangle+1+%7C+&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='\\displaystyle H = \\frac{ | 0 \\rangle + | 1 \\rangle } { \\sqrt{2} } \\langle 0 | + \\frac{ | 0 \\rangle - | 1 \\rangle } { \\sqrt{2} } \\langle 1 | ' title='\\displaystyle H = \\frac{ | 0 \\rangle + | 1 \\rangle } { \\sqrt{2} } \\langle 0 | + \\frac{ | 0 \\rangle - | 1 \\rangle } { \\sqrt{2} } \\langle 1 | ' class='latex' \/> ,<\/p>\n<p>so that gate operations are:<\/p>\n<ul>\n<li><img src='https:\/\/s0.wp.com\/latex.php?latex=%5Cdisplaystyle+H+%7C+0+%5Crangle+%3D+%5Cfrac%7B1%7D%7B%5Csqrt%7B2%7D%7D+%7C+0+%5Crangle+%2B+%5Cfrac%7B1%7D%7B%5Csqrt%7B2%7D%7D+%7C1+%5Crangle&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='\\displaystyle H | 0 \\rangle = \\frac{1}{\\sqrt{2}} | 0 \\rangle + \\frac{1}{\\sqrt{2}} |1 \\rangle' title='\\displaystyle H | 0 \\rangle = \\frac{1}{\\sqrt{2}} | 0 \\rangle + \\frac{1}{\\sqrt{2}} |1 \\rangle' class='latex' \/><\/li>\n<li><img src='https:\/\/s0.wp.com\/latex.php?latex=%5Cdisplaystyle+H+%7C+1+%5Crangle+%3D+%5Cfrac%7B1%7D%7B%5Csqrt%7B2%7D%7D+%7C+0+%5Crangle+-+%5Cfrac%7B1%7D%7B%5Csqrt%7B2%7D%7D+%7C1+%5Crangle&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='\\displaystyle H | 1 \\rangle = \\frac{1}{\\sqrt{2}} | 0 \\rangle - \\frac{1}{\\sqrt{2}} |1 \\rangle' title='\\displaystyle H | 1 \\rangle = \\frac{1}{\\sqrt{2}} | 0 \\rangle - \\frac{1}{\\sqrt{2}} |1 \\rangle' class='latex' \/><\/li>\n<li><img src='https:\/\/s0.wp.com\/latex.php?latex=%5Cdisplaystyle+H+%5CBig%28+%5Cfrac%7B1%7D%7B%5Csqrt%7B2%7D%7D+%7C+0+%5Crangle+%2B+%5Cfrac%7B1%7D%7B%5Csqrt%7B2%7D%7D+%7C+1+%5Crangle+%5CBig%29+%3D+%7C+0+%5Crangle&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='\\displaystyle H \\Big( \\frac{1}{\\sqrt{2}} | 0 \\rangle + \\frac{1}{\\sqrt{2}} | 1 \\rangle \\Big) = | 0 \\rangle' title='\\displaystyle H \\Big( \\frac{1}{\\sqrt{2}} | 0 \\rangle + \\frac{1}{\\sqrt{2}} | 1 \\rangle \\Big) = | 0 \\rangle' class='latex' \/><\/li>\n<li><img src='https:\/\/s0.wp.com\/latex.php?latex=%5Cdisplaystyle+H+%5CBig%28+%5Cfrac%7B1%7D%7B%5Csqrt%7B2%7D%7D+%7C+0+%5Crangle+-+%5Cfrac%7B1%7D%7B%5Csqrt%7B2%7D%7D+%7C+1+%5Crangle+%5CBig%29+%3D+%7C+1+%5Crangle&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='\\displaystyle H \\Big( \\frac{1}{\\sqrt{2}} | 0 \\rangle - \\frac{1}{\\sqrt{2}} | 1 \\rangle \\Big) = | 1 \\rangle' title='\\displaystyle H \\Big( \\frac{1}{\\sqrt{2}} | 0 \\rangle - \\frac{1}{\\sqrt{2}} | 1 \\rangle \\Big) = | 1 \\rangle' class='latex' \/><\/li>\n<\/ul>\n<p>or, using <img src='https:\/\/s0.wp.com\/latex.php?latex=%7C+0+%5Crangle&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='| 0 \\rangle' title='| 0 \\rangle' class='latex' \/> and <img src='https:\/\/s0.wp.com\/latex.php?latex=%7C+1+%5Crangle&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='| 1 \\rangle' title='| 1 \\rangle' class='latex' \/> as a representation basis:<\/p>\n<p style=\"text-align: center;\"><img src='https:\/\/s0.wp.com\/latex.php?latex=%5Cdisplaystyle+H+%3D+%5Cfrac%7B1%7D%7B%5Csqrt%7B2%7D%7D+%5Cbegin%7Bbmatrix%7D+1+%26+1+%5C%5C+1+%26+-1+%5Cend%7Bbmatrix%7D&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='\\displaystyle H = \\frac{1}{\\sqrt{2}} \\begin{bmatrix} 1 &amp; 1 \\\\ 1 &amp; -1 \\end{bmatrix}' title='\\displaystyle H = \\frac{1}{\\sqrt{2}} \\begin{bmatrix} 1 &amp; 1 \\\\ 1 &amp; -1 \\end{bmatrix}' class='latex' \/><\/p>\n<p>One application of the Hadamard gate to either a 0 or 1 qubit will produce a quantum state that, if observed, will be a 0 or 1 with equal probability (as seen in the first two operations). This is exactly like flipping a fair coin in the standard probabilistic model of computation.<\/p>\n<p>However, if the Hadamard gate is applied twice in succession (as is effectively being done in the last two operations), then the final state is always the same as the initial state. This would be like taking a fair coin that is showing heads, flipping it twice, and it always landing on heads after the second flip.<\/p>\n<p>It is a crucial part of <a title=\"Grover's algorithm\" href=\"https:\/\/en.wikipedia.org\/wiki\/Grover%27s_algorithm\" target=\"_blank\" rel=\"noopener\">Grover&#8217;s algorithm<\/a> and <a title=\"Shor's algorithm\" href=\"https:\/\/en.wikipedia.org\/wiki\/Shor%27s_algorithm\" target=\"_blank\" rel=\"noopener\">Shor&#8217;s algorithm<\/a> in quantum computing.<\/p>\n<p>There are many other quantum gates that can be defined, such as :<\/p>\n<table width=\"450\" cellspacing=\"0\" cellpadding=\"0\" border=\"1\">\n<tbody>\n<tr>\n<td>Hadamar H gate<\/td>\n<td style=\"text-align: left; vertical-align: middle;\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-1750 aligncenter\" src=\"https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/qHadamard_gate..png\" alt=\"\" width=\"59\" height=\"25\"><\/td>\n<td><a href=\"https:\/\/en.wikipedia.org\/wiki\/Quantum_gate#Hadamard_(H)_gate\" target=\"_blank\" rel=\"noopener\">Definition<\/a> (wikipedia)<\/td>\n<\/tr>\n<tr>\n<td>Pauli-X gate (NOT gate)<\/td>\n<td style=\"text-align: left; vertical-align: middle;\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter wp-image-1749\" src=\"https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/Qcircuit_NOT.png\" alt=\"\" width=\"83\" height=\"25\"><\/td>\n<td><a href=\"https:\/\/en.wikipedia.org\/wiki\/Quantum_gate#Pauli-X_gate_(=_NOT_gate)\" target=\"_blank\" rel=\"noopener\">Definition<\/a> (wikipedia)<\/td>\n<\/tr>\n<tr>\n<td>Square root of NOT gate<\/td>\n<td style=\"text-align: left; vertical-align: middle;\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter wp-image-1749\" src=\"https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/Qcircuit_SqrtNot.png\" alt=\"\" width=\"83\" height=\"25\"><\/td>\n<td><a href=\"https:\/\/en.wikipedia.org\/wiki\/Quantum_gate#Square_root_of_NOT_gate_(%E2%88%9ANOT)\" target=\"_blank\" rel=\"noopener\">Definition<\/a> (wikipedia)<\/td>\n<\/tr>\n<tr>\n<td style=\"vertical-align: middle;\">Swap (S) gate<\/td>\n<td style=\"text-align: left; vertical-align: middle;\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter wp-image-1749\" src=\"https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/qSwap_gate.png\" alt=\"\" width=\"83\" height=\"25\"><\/td>\n<td><a href=\"https:\/\/en.wikipedia.org\/wiki\/Quantum_gate#Swap_(S)_gate\" target=\"_blank\" rel=\"noopener\">Definition<\/a> (wikipedia)<\/td>\n<\/tr>\n<tr>\n<td style=\"vertical-align: middle;\">Square root of Swap gate (\u221aS)<\/td>\n<td style=\"text-align: left; vertical-align: middle;\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter wp-image-1749\" src=\"https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/qSqrtSwap.png\" alt=\"\" width=\"83\" height=\"25\"><\/td>\n<td><a href=\"https:\/\/en.wikipedia.org\/wiki\/Quantum_gate#Square_root_of_Swap_gate_(%E2%88%9AS)\" target=\"_blank\" rel=\"noopener\">Definition<\/a> (wikipedia)<\/td>\n<\/tr>\n<tr>\n<td style=\"vertical-align: middle;\">Controlled gates (here, a C-NOT gate)<\/td>\n<td style=\"text-align: left; vertical-align: middle;\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter wp-image-1749\" src=\"https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/qCNOT_gate.png\" alt=\"\" width=\"83\" height=\"25\"><\/td>\n<td><a href=\"https:\/\/en.wikipedia.org\/wiki\/Controlled_NOT_gate\" target=\"_blank\" rel=\"noopener\">Definition<\/a> (wikipedia)<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Note: this list is not exhaustive.<\/p>\n<p>In quantum information theory, a <b>quantum circuit<\/b> is a model&nbsp; in which a computation is a sequence of quantum gates.<\/p>\n<p>The following diagram is a typical quantum circuit, built on Hadamar gates and controlled gates, used for Quantum Fourier Transforms (QFT):<\/p>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-full wp-image-1767\" src=\"https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/QFTn.png\" alt=\"\" width=\"3582\" height=\"1194\" srcset=\"https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/QFTn.png 3582w, https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/QFTn-300x100.png 300w, https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/QFTn-768x256.png 768w, https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/QFTn-1024x341.png 1024w\" sizes=\"(max-width: 3582px) 100vw, 3582px\" \/><\/p>\n<div>\n<p>Such quantum logic gate can be implemented via quantum devices, such as C-NOT gates built using trapped ions (see <a href=\"https:\/\/tf.nist.gov\/general\/pdf\/1830.pdf\" target=\"_blank\" rel=\"noopener\">this NIST paper<\/a> for example).<\/p>\n<\/div>\n<p><strong>Deutsch(\u2013Jozsa) algorithm<\/strong><\/p>\n<p>The Deutsch\u2013Jozsa algorithm is a quantum algorithm, proposed by <a href=\"https:\/\/en.wikipedia.org\/wiki\/David_Deutsch\" target=\"_blank\" rel=\"noopener\">David Deutsch<\/a> and Richard Jozsa in 1992 (and generalizing 1985&#8217;s work from David Deutsch).<\/p>\n<p>It is specifically designed to be easy for a quantum algorithm and <strong>hard for any classical algorithm<\/strong>. The motivation is to show a black box problem that can be solved efficiently by a quantum computer with no error, whereas a deterministic classical computer would need <strong>exponentially<\/strong> many queries to the black box to solve the problem.<\/p>\n<p>In the Deutsch-Jozsa problem, we are given a black box quantum computer known as an <a href=\"https:\/\/en.wikipedia.org\/wiki\/Oracle_machine\" target=\"_blank\" rel=\"noopener\">oracle<\/a> that implements a function <img src='https:\/\/s0.wp.com\/latex.php?latex=f%3A%5C%7B0%2C1%5C%7D%5En+%5Cto+%5C%7B0%2C1%5C%7D&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='f:\\{0,1\\}^n \\to \\{0,1\\}' title='f:\\{0,1\\}^n \\to \\{0,1\\}' class='latex' \/> takes n-digit binary values as input and produces either a 0 or a 1 as output for each such value.<\/p>\n<p>The task is to determine if <img src='https:\/\/s0.wp.com\/latex.php?latex=f&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='f' title='f' class='latex' \/> is constant (0 on all outputs or 1 on all outputs) or balanced (returns 1 for half of the input domain and 0 for the other half) by using the oracle.<\/p>\n<p>For the Deutsch\u2013Jozsa algorithm to work, the oracle computing&nbsp;<img src='https:\/\/s0.wp.com\/latex.php?latex=f%28x%29&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='f(x)' title='f(x)' class='latex' \/> from <img src='https:\/\/s0.wp.com\/latex.php?latex=x&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='x' title='x' class='latex' \/> has to be a quantum oracle which doesn&#8217;t decohere <img src='https:\/\/s0.wp.com\/latex.php?latex=x&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='x' title='x' class='latex' \/>. It also mustn&#8217;t leave any copy of <img src='https:\/\/s0.wp.com\/latex.php?latex=x&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='x' title='x' class='latex' \/> lying around at the end of the oracle call.<\/p>\n<p>The following diagram illustrates Deutsch-Jozsa algorithm&#8217;s quantum circuit, using Hadamar quantum gates:<\/p>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter wp-image-1764\" src=\"https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/deutsch-algo.png\" alt=\"\" width=\"350\" height=\"99\" srcset=\"https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/deutsch-algo.png 1239w, https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/deutsch-algo-300x85.png 300w, https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/deutsch-algo-768x217.png 768w, https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/deutsch-algo-1024x289.png 1024w\" sizes=\"(max-width: 350px) 100vw, 350px\" \/><\/p>\n<p><strong>Shor&#8217;s Algorithm<\/strong><\/p>\n<p>Shor&#8217;s algorithm, named after mathematician <a title=\"Peter Shor\" href=\"https:\/\/en.wikipedia.org\/wiki\/Peter_Shor\" target=\"_blank\" rel=\"noopener\">Peter Shor<\/a>, is a quantum algorithm formulated in 1994. Unlike Deutsch&#8217;s, which is of great historical importance but without practical applications, Shor&#8217;s algorithm solves a practical problem: given an integer N, find its prime factors.<\/p>\n<p>The following diagram illustrates the quantum subroutine of Shor&#8217;s algorithm:<\/p>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter wp-image-1769\" src=\"https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/shor-algo.png\" alt=\"\" width=\"450\" height=\"160\" srcset=\"https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/shor-algo.png 1338w, https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/shor-algo-300x107.png 300w, https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/shor-algo-768x274.png 768w, https:\/\/www.quantum-bits.org\/wp-content\/uploads\/2018\/03\/shor-algo-1024x365.png 1024w\" sizes=\"(max-width: 450px) 100vw, 450px\" \/><\/p>\n<p>It is based on Hadamar gates and QFT&#8217;s. On a quantum computer, to factor an integer <i>N<\/i>, Shor&#8217;s algorithm runs in <a class=\"mw-redirect\" title=\"Polynomial time\" href=\"https:\/\/en.wikipedia.org\/wiki\/Polynomial_time\" target=\"_blank\" rel=\"noopener\">polynomial time<\/a>. This is substantially faster than the most efficient known classical factoring algorithm (the <a title=\"General number field sieve\" href=\"https:\/\/en.wikipedia.org\/wiki\/General_number_field_sieve\" target=\"_blank\" rel=\"noopener\">general number field sieve)<\/a>, which works in <a class=\"mw-redirect\" title=\"Sub-exponential time\" href=\"https:\/\/en.wikipedia.org\/wiki\/Sub-exponential_time\">sub-exponential time<\/a>.<\/p>\n<p>If a quantum computer with a sufficient number of qubits could operate without succumbing to <a title=\"Quantum noise\" href=\"https:\/\/en.wikipedia.org\/wiki\/Quantum_noise\" target=\"_blank\" rel=\"noopener\">quantum noise<\/a> and quantum decoherence phenomena, Shor&#8217;s algorithm could be used to break <a title=\"Public-key cryptography\" href=\"https:\/\/en.wikipedia.org\/wiki\/Public-key_cryptography\">public-key cryptography<\/a> schemes (such as the widely used <a title=\"RSA (cryptosystem)\" href=\"https:\/\/en.wikipedia.org\/wiki\/RSA_(cryptosystem)\">RSA<\/a> scheme).<\/p>\n<p>RSA is based on the assumption that factoring large numbers is computationally intractable. So far as is known, this assumption is valid for classical (i.e. non-quantum) computers. No classical algorithm is known that can factor in polynomial time.<\/p>\n<p>However, Shor&#8217;s algorithm shows that factoring is efficient on an ideal quantum computer, so it may be feasible to defeat RSA by constructing a large quantum computer. It was also a powerful motivator for the design and construction of quantum computers and for the study of new quantum computer algorithms.<\/p>\n<p>It has also facilitated research on new cryptosystems that are secure from quantum computers, collectively called <a title=\"Post-quantum cryptography\" href=\"https:\/\/en.wikipedia.org\/wiki\/Post-quantum_cryptography\" target=\"_blank\" rel=\"noopener\">post-quantum cryptography<\/a>.<\/p>\n<p><strong>Quantum supremacy<\/strong><\/p>\n<p>Based on ideas from <a href=\"https:\/\/en.wikipedia.org\/wiki\/Richard_Feynman\" target=\"_blank\" rel=\"noopener\">Richard Feynman<\/a> (and other&#8217;s), renown physisit <a href=\"https:\/\/en.wikipedia.org\/wiki\/John_Preskill\" target=\"_blank\" rel=\"noopener\">John Preskill<\/a> popularized the term &#8220;quantum supremacy&#8221; to refer to the hypothetical speedup advantage that a quantum computer would have over a classical computer in a given field.<\/p>\n<p>And actually, Shor&#8217;s algorithm for factoring integers provides a superpolynomial speedup over the best known classical algorithm.<\/p>\n<p>However, practically speaking, quantum computers are much more susceptible to errors than classical computers due to decoherence and to quantum noise. It is not known (yet) how the resources needed for <a href=\"https:\/\/en.wikipedia.org\/wiki\/Quantum_error_correction\" target=\"_blank\" rel=\"noopener\">quantum error correction<\/a> will scale with the number of qubits.<\/p>\n<p>One of the greatest challenges is controlling or removing quantum decoherence. This means isolating the system from its environment as interactions with the external world cause the system to decohere. However, other sources of decoherence also exist. Examples include the quantum gates, and the lattice vibrations and background thermonuclear spin of the physical system used to implement the qubits.<\/p>\n<p>Decoherence is irreversible, as it is effectively non-unitary, and is usually something that should be highly controlled, if not avoided. Currently, some quantum computers require their qubits to be cooled to 20 millikelvins in order to prevent significant decoherence.<\/p>\n<p>It was also pointed out that a 400-qubit computer would even come into conflict with the cosmological information bound implied by the <a href=\"https:\/\/en.wikipedia.org\/wiki\/Holographic_principle\" target=\"_blank\" rel=\"noopener\">holographic principle<\/a> (which could be a property of <a href=\"https:\/\/en.wikipedia.org\/wiki\/Quantum_gravity\" target=\"_blank\" rel=\"noopener\">quantum gravity<\/a>).<\/p>\n<p>Like the &#8220;AI singularity&#8221;, &#8220;Quantum supremacy&#8221; is not that well defined: reaching &#8220;supremacy&#8221; is always linked to a given field.<\/p>\n<p>This is actually not a surprise since we are dealing with subjects on the fringe of our knowledge. Since the term is often misused for clickbait articles, I refrain myself as much as possible from using this term: quantum computational advantage seems (for me) better suited and more objective.<\/p>\n<p>Sometimes, it is extremely hard to even prove that a given device has achieved quantum speedup.<\/p>\n<p>But it might be practically reached on particular subjects, such as cryptography, namely because of the effectiveness of Shor&#8217;s algorithm (on ideal quantum computers) and because it seems were are close to reach availability of devices able to manage large qubits registers.<\/p>\n<p>On this particular field, risks are important enough for security and privacy to strongly promote and evaluate <a title=\"Post-quantum cryptography\" href=\"https:\/\/en.wikipedia.org\/wiki\/Post-quantum_cryptography\" target=\"_blank\" rel=\"noopener\">post-quantum cryptography<\/a> (like <a href=\"https:\/\/en.wikipedia.org\/wiki\/Lattice-based_cryptography\" target=\"_blank\" rel=\"noopener\">lattice-based<\/a> cryptography).<\/p>\n<p><strong>Quantum information science<\/strong><\/p>\n<p>As a conclusion, let&#8217;s enlarge our vision. Quantum information, as a science, is an area of study based on the idea that information science depends on quantum effects in physics. It includes theoretical issues in computational models as well as more experimental topics in quantum physics (including what can and cannot be done with quantum information).<\/p>\n<p>It is a large field of research, which of course includes quantum computing, but also include<\/p>\n<ul>\n<li><a title=\"Quantum error correction\" href=\"https:\/\/en.wikipedia.org\/wiki\/Quantum_error_correction\" target=\"_blank\" rel=\"noopener\">Quantum error correction<\/a><\/li>\n<li><a class=\"mw-redirect\" title=\"Quantum information theory\" href=\"https:\/\/en.wikipedia.org\/wiki\/Quantum_information_theory\" target=\"_blank\" rel=\"noopener\">Quantum information theory<\/a><\/li>\n<li><a title=\"Quantum complexity theory\" href=\"https:\/\/en.wikipedia.org\/wiki\/Quantum_complexity_theory\" target=\"_blank\" rel=\"noopener\">Quantum complexity theory<\/a><\/li>\n<li><a title=\"Quantum cryptography\" href=\"https:\/\/en.wikipedia.org\/wiki\/Quantum_cryptography\" target=\"_blank\" rel=\"noopener\">Quantum cryptography<\/a> and its generalization to quantum communication<\/li>\n<li><a class=\"mw-redirect\" title=\"Quantum communication complexity\" href=\"https:\/\/en.wikipedia.org\/wiki\/Quantum_communication_complexity\" target=\"_blank\" rel=\"noopener\">Quantum communication complexity<\/a><\/li>\n<li><a title=\"Quantum entanglement\" href=\"https:\/\/en.wikipedia.org\/wiki\/Quantum_entanglement\" target=\"_blank\" rel=\"noopener\">Quantum entanglement<\/a>, as seen from an information-theoretic point of view<\/li>\n<li><a class=\"mw-redirect\" title=\"Quantum dense coding\" href=\"https:\/\/en.wikipedia.org\/wiki\/Quantum_dense_coding\" target=\"_blank\" rel=\"noopener\">Quantum dense coding<\/a><\/li>\n<li><a title=\"Quantum teleportation\" href=\"https:\/\/en.wikipedia.org\/wiki\/Quantum_teleportation\" target=\"_blank\" rel=\"noopener\">Quantum teleportation<\/a><\/li>\n<li>Quantum simulation<\/li>\n<li>&#8230;<\/li>\n<\/ul>\n<p>Hopefully, I&#8217;ll get some times (soon ?) to write a few notes on these tremendously interesting subjects \ud83d\ude09<\/p>\n<p><span style=\"font-size: 8pt;\">Note: to speedup the writing of this long long long overdue post, a few paragraphs and illustrations are based on wikipedia&#8217;s entries on quantum computing, which are well written, though sometimes a bit technical for an introduction post.<br \/>\n<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Quantum computing as made the headlines recently. At IBM&#8217;s inaugural Index Developer Conference held in San Francisco, the company showed off its latest prototype: a quantum computing rig housing 50 &#8230;<\/p>\n","protected":false},"author":1,"featured_media":3846,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0},"categories":[6],"tags":[],"_links":{"self":[{"href":"https:\/\/www.quantum-bits.org\/index.php?rest_route=\/wp\/v2\/posts\/1611"}],"collection":[{"href":"https:\/\/www.quantum-bits.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.quantum-bits.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.quantum-bits.org\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.quantum-bits.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1611"}],"version-history":[{"count":0,"href":"https:\/\/www.quantum-bits.org\/index.php?rest_route=\/wp\/v2\/posts\/1611\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.quantum-bits.org\/index.php?rest_route=\/wp\/v2\/media\/3846"}],"wp:attachment":[{"href":"https:\/\/www.quantum-bits.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1611"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.quantum-bits.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1611"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.quantum-bits.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1611"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}