20,343 research outputs found
Quantum Algorithm Implementations for Beginners
As quantum computers become available to the general public, the need has
arisen to train a cohort of quantum programmers, many of whom have been
developing classical computer programs for most of their careers. While
currently available quantum computers have less than 100 qubits, quantum
computing hardware is widely expected to grow in terms of qubit count, quality,
and connectivity. This review aims to explain the principles of quantum
programming, which are quite different from classical programming, with
straightforward algebra that makes understanding of the underlying fascinating
quantum mechanical principles optional. We give an introduction to quantum
computing algorithms and their implementation on real quantum hardware. We
survey 20 different quantum algorithms, attempting to describe each in a
succinct and self-contained fashion. We show how these algorithms can be
implemented on IBM's quantum computer, and in each case, we discuss the results
of the implementation with respect to differences between the simulator and the
actual hardware runs. This article introduces computer scientists, physicists,
and engineers to quantum algorithms and provides a blueprint for their
implementations
qTorch: The Quantum Tensor Contraction Handler
Classical simulation of quantum computation is necessary for studying the
numerical behavior of quantum algorithms, as there does not yet exist a large
viable quantum computer on which to perform numerical tests. Tensor network
(TN) contraction is an algorithmic method that can efficiently simulate some
quantum circuits, often greatly reducing the computational cost over methods
that simulate the full Hilbert space. In this study we implement a tensor
network contraction program for simulating quantum circuits using multi-core
compute nodes. We show simulation results for the Max-Cut problem on 3- through
7-regular graphs using the quantum approximate optimization algorithm (QAOA),
successfully simulating up to 100 qubits. We test two different methods for
generating the ordering of tensor index contractions: one is based on the tree
decomposition of the line graph, while the other generates ordering using a
straight-forward stochastic scheme. Through studying instances of QAOA
circuits, we show the expected result that as the treewidth of the quantum
circuit's line graph decreases, TN contraction becomes significantly more
efficient than simulating the whole Hilbert space. The results in this work
suggest that tensor contraction methods are superior only when simulating
Max-Cut/QAOA with graphs of regularities approximately five and below. Insight
into this point of equal computational cost helps one determine which
simulation method will be more efficient for a given quantum circuit. The
stochastic contraction method outperforms the line graph based method only when
the time to calculate a reasonable tree decomposition is prohibitively
expensive. Finally, we release our software package, qTorch (Quantum TensOR
Contraction Handler), intended for general quantum circuit simulation.Comment: 21 pages, 8 figure
Simulating quantum computation by contracting tensor networks
The treewidth of a graph is a useful combinatorial measure of how close the
graph is to a tree. We prove that a quantum circuit with gates whose
underlying graph has treewidth can be simulated deterministically in
time, which, in particular, is polynomial in if
. Among many implications, we show efficient simulations for
log-depth circuits whose gates apply to nearby qubits only, a natural
constraint satisfied by most physical implementations. We also show that
one-way quantum computation of Raussendorf and Briegel (Physical Review
Letters, 86:5188--5191, 2001), a universal quantum computation scheme with
promising physical implementations, can be efficiently simulated by a
randomized algorithm if its quantum resource is derived from a small-treewidth
graph.Comment: 7 figure
Physical consequences of PNP and the DMRG-annealing conjecture
Computational complexity theory contains a corpus of theorems and conjectures
regarding the time a Turing machine will need to solve certain types of
problems as a function of the input size. Nature {\em need not} be a Turing
machine and, thus, these theorems do not apply directly to it. But {\em
classical simulations} of physical processes are programs running on Turing
machines and, as such, are subject to them. In this work, computational
complexity theory is applied to classical simulations of systems performing an
adiabatic quantum computation (AQC), based on an annealed extension of the
density matrix renormalization group (DMRG). We conjecture that the
computational time required for those classical simulations is controlled
solely by the {\em maximal entanglement} found during the process. Thus, lower
bounds on the growth of entanglement with the system size can be provided. In
some cases, quantum phase transitions can be predicted to take place in certain
inhomogeneous systems. Concretely, physical conclusions are drawn from the
assumption that the complexity classes {\bf P} and {\bf NP} differ. As a
by-product, an alternative measure of entanglement is proposed which, via
Chebyshev's inequality, allows to establish strict bounds on the required
computational time.Comment: Accepted for publication in JSTA
- …