<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Introduction to Quantum Development</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Jose Luis Hevia Oliver</string-name>
          <email>Jluis.hevia@a-e.es</email>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Alhambra</institution>
          ,
          <addr-line>Madrid, 28037</addr-line>
          ,
          <country country="ES">Spain</country>
        </aff>
      </contrib-group>
      <fpage>31</fpage>
      <lpage>37</lpage>
      <abstract>
        <p>Brief presentation to introduce to the Quantum basics needed to understand the Quantum Computing Principles. Quantum Computing introduction We live an amazing moment of the history, again: we are living the raise of the quantum computers. We have been spectators of the birth and evolution of exciting technologies related to digital information and it's process: from oldest x86 first IBM 16bits to the most powerful i7 x64 multicore processors; from the first gross mobile phone to the most advanced smartphones; from modem and copper communications cable to 5g internet or optical fiber and true high speed; and a lot of discovers we cannot talk about in one paper. All these technologies working together has made possible an incredible world of opportunities, thanks in large measure to the features that bring us the software and the computers. But in the era in which we live, there are still challenges that not even the most modern computers can help us solve in a reasonable time. All this challenges must be attended in order to solve a lot of uses cases that could make the human raise, move forward a new step in its own evolution: discover news ways to create energy sources that reduces drastically the climate change, discover new materials, discover new molecular combinations to create better drugs or treatments to ill people…and much more. We have a lot of process force to analyze business data… but we don´t have enough power to analyze the nature. In this context is where quantum computers appear to the rescue. Quantum Computers that make possible the usage of the fundamental part of the nature, to know more about the nature; that can give us a power of computation never seen before; and that require us a new way to address the problems.</p>
      </abstract>
      <kwd-group>
        <kwd>Quantum Computer</kwd>
        <kwd>Quantum Mechanics</kwd>
        <kwd>Qubits</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>The principles of a Quantum computer are based on Quantum Mechanics! And these
principles are like magic. For a long time, brilliant physicist had been trying to explain
the marvel behavior of the light particles. And most of the main theories and
experiments have these principles in common: Matter at Quantum level can be found
simultaneously in multiple and different configurations (states). That is known as
superposition. Also, these states could interfere with others like waves in a pond. And some of
these states could be connected with others, in such a way that if one changes its state,
the other also. Giving to us the entanglement’s principle. But not everything is as
beautiful as it seems. These states can be observed but –and this is a big problem- the
observation alters reality (collapse). A good starting point to know more about that is the
experiment of the Schrodinger’s cat and the Heisenberg‘s uncertainty principle. We
have all the possible realities in our hands, but in the moment we need to access it, it
collapses into a single reality.</p>
      <p>Thanks to these principles, quantum computers provides to us the
qubits. These “magical artifacts”, makes possible the access a power of
computation never seen before. Qubits makes possible the use of a power
that is not simply but exponential (see Fig. 1). When a classical bit can
store one value (0 or 1) at a time, the qubit can handle 0,1 or both at same
time. So, a quantum computer with N cubits can process at least 2n states
at the same time.</p>
      <p>So, for example –applying a reduce version of the travels man
problem-, if we have N=1,000,000 possible routes from Bogotá, Colombia to
Lima, where Peru is the fastest one. To find the optimum route, a
computer must start by digitalizing 1,000,000 options. While Classical
computer need to analyze the routes one by one, the quantum computer can
consider all the routes at the same time. Classical computer needs n/2
steps (500.00 attempts) while Quantum computer can perform entire
operation in only √N steps (1.000 attempts).</p>
      <p>But, in this magic world, there exists challenges that must be solve in
order to make real the use of all this power. Not everything is “easy”.
Due to the inherent properties of the hardware and the kind of matter that
must be controlled, the Quantum Decoherence Obstacle represent the
loose of the Quantum properties when an experiment is run in a specific
period of time. At the same time, and again due to the properties of the
quantum world, we need to fight with Quantum errors. Energy,
temperature, noise, gates, magnetic fields…even the inherent entropy of
quantum world have a direct impact on Qubits behavior, its quality and its
usefulness. The Error rate represents the operating time versus
decoherence time. If it is small enough it’s possible to correct the errors.
A lot of work must be done in this particular field.</p>
      <p>The quantum computers can be implemented in different ways
depending on subjacent technologies to obtain the qubits
(Superconducting, Trapped ION, Optical Lattices, Majorana Fermion particles),
purpose (general purpose, specific solutions) and types (topological,
adiabatic, one way…).</p>
      <p>The state of the art: quantum race to obtain a topological computer
with lots of qubits and, of course, most of them quality qubits.</p>
      <p>Complex quantum computers, known as topological quantum
computers, uses the concept of Quantum Gates. A collection of basic operations
used to interact with the features of the qubits. In this kind of computers,
quantum gates make possible the design, process and execution of
circuits. These gates are a black box that encapsulate the complexity of the
underground mathematics. The names of the gates: Identity, Hadamard
(H Gate), Pauli-X, Pauli-Y, Pauli-Z, Square root of NOT (NOT), Phase
Shift, SWAP, Square root of SWAP, Controlled (cX, cY, cZ), Toffoli
(CCNOT) and CSWAP.</p>
      <p>Using combinations of these gates, it’s possible to have the quantum
principles in our hands, for example:
• Hadamard gate give us the superposition effect
• And hadamard in combination with the CNOT using two qubits,
give us the entanglement effect.</p>
      <p>To explore the magic and power of the quantum computers, some
brilliant companies offers to the engineers, distributed quantum platforms
and tools that let them interact with the top quantum computers or
powerful simulators available today. Examples of this amazing companies
are IBM –with Quantum Experience-, Microsoft –with Quantum SDK
and Azure- and Dwave –with ocean SDK-.</p>
      <p>These amazing technologies give us the possibility to create quantum
circuits or quantum programs -high level code using programming
languages- that interacts with real machines or simulators through the
software stack. Examples of that:
1) Using the quantum SDK of Microsoft to test the superposition:
operation BellTest (count : Int, initial: Result) : (Int, Int)
{
mutable numOnes = 0;
using (qubit = Qubit()) {
for (test in 1..count) {</p>
      <p>Set (initial, qubit);
H(qubit);
let res = M (qubit);
// Count the number of ones we saw:
if (res == One) {</p>
      <p>set numOnes += 1;
}
}
}</p>
      <p>Set(Zero, qubit);
// Return number of times we saw a |0&gt; and number of
times we saw a |1&gt;</p>
      <p>return (count-numOnes, numOnes);
}
2) Using the Q Composer of IBM or its Python alternative to test the
entanglement:</p>
      <p>In both cases, we have the opportunity to create, compile, execute and
debug the code. And experiment all the amazing possibilities this
incredible technology can bring us in the future… today.</p>
      <p>Welcome to the Quantum new era.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1. Jose Luis Hevia: Quantum Computing Fundamentals,
          <string-name>
            <given-names>Course</given-names>
            <surname>Materials</surname>
          </string-name>
          .
          <source>Alhambra Systems &amp; M2i Formacion</source>
          . URL: https://www.m2iformacion.com/Cursos/DetalleCurso.aspx?idcurso=M2iESPQ001
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Feynman</surname>
            ,
            <given-names>R. P.</given-names>
          </string-name>
          "
          <source>Simulating Physics with Computers" International Journal of Theoretical Physics</source>
          , Vol.
          <volume>21</volume>
          (
          <issue>1982</issue>
          ) pp.
          <fpage>467</fpage>
          -
          <lpage>488</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Nielsen</surname>
            , M. y Chuang,
            <given-names>I. "Quantum</given-names>
          </string-name>
          <string-name>
            <surname>Computation and Quantum Information</surname>
          </string-name>
          " Cambridge University Press (September,
          <year>2000</year>
          ),
          <source>ISBN 0-521-63503-9</source>
          .Author,
          <string-name>
            <surname>F.</surname>
          </string-name>
          :
          <article-title>Contribution title</article-title>
          .
          <source>In: 9th International Proceedings on Proceedings</source>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>2</lpage>
          . Publisher,
          <string-name>
            <surname>Location</surname>
          </string-name>
          (
          <year>2010</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>Simon</given-names>
            <surname>Benjamin</surname>
          </string-name>
          :
          <source>The Dawn of Quantum Technology. Oxford Quantum</source>
          for Oxford University. URL: https://www.youtube.com/watch?v=7wThe1Q95Ro from http://oxfordquantum.org.
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Vladimir-Silva</surname>
          </string-name>
          :
          <article-title>Practical Quantum Computing for Developers (Apress-2019)</article-title>
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>Eleanor</given-names>
            <surname>Rieffel</surname>
          </string-name>
          :
          <article-title>An Introduction to Quantum Computing for Non-Physicists (FX Palo Alto Labs</article-title>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>O</given-names>
            <surname>'Reilly: Programming Quantum Computers Essential Algorithms</surname>
          </string-name>
          and Code Samples
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>