Qiskit Aqua — A Library of Quantum Algorithms and Applications

Aqua has been designed from the outset to accept input files in the language of any classical computational package it interfaces, thus not requiring users experienced in a particular domain to learn a new quantum-specific language for the same task.FunctionalityWhile other quantum software libraries impose an intermediate programming layer or API between the classical and quantum parts of a hybrid program, Aqua is unique in its ability to directly interface with classical computational software, thus allowing for the computation of the intermediate data needed to construct the quantum-algorithm input to be performed at its highest level of precision, all without losing any functionality inherent in the underlying classical software.To better illustrate this point, let us consider some popular computational chemistry software packages such as Gaussian™ 16, PSI4 and PySCF, all integrated into Aqua Chemistry..These classical chemistry drivers allow a user to select different basis sets for each atom in a molecule, as opposed to forcing a single basis set on all atoms..As an example, the following code snippet, written in the PSI4 language, configures the basis sets for a molecule of benzene, whose chemical formula is C6H6:basis { assign DZ assign C 3–21G assign H1 STO-3G assign C1 STO-3G}In the first assignment, the chemist has chosen to apply basis DZ to all atoms..The second assignment then overwrites this basis selection for all six carbon atoms with the 3-21G basis set..The third statement assigns basis set STO-3G to the Hydrogen atom labeled with index 1, while all the other five Hydrogen atoms are still represented in the originally assigned DZ basis..Finally, the last statement selects basis set STO-3G for the Carbon atom with index 1, leaving the remaining five carbon atoms with basis set 3-21G as defined by the second assignment..Aqua Chemistry readily supports this atom-dependent basis specification as there is no additional software layer between Aqua and the classical software used for computing inputs..Conversely, systems that have chosen to interpose an API in front of the computational drivers currently do not support atom-dependent basis-set assignment, even though the drivers they interface would enable such feature.Atom-dependent basis selection is only one of many examples of how directly exposing classical computational software input parameters maximizes the functionality available to the underlying quantum algorithms..Another, perhaps more important, example deals with the Hartree-Fock wave function that is computed by the underlying classical software..This wave function is used in the computation of the one- and two-body molecular-orbital integrals that are needed for the calculation of the full Configuration Interaction (CI) and/or the Unitary Coupled Cluster Singles and Doubles (UCCSD) energies on the quantum computer..Classical chemistry software drivers expose their own unique configuration parameters to make the computation of the Hartree-Fock wave function converge should the default parameter values fail..Aqua has no problem supporting such advanced configuration parameters, which can be passed directly into the configuration file as an input to the classical computational chemistry software package.. More details

Leave a Reply