Skip to content
This repository has been archived by the owner on Dec 7, 2021. It is now read-only.

Qiskit Aqua 0.6.0

Compare
Choose a tag to compare
@manoelmarques manoelmarques released this 22 Aug 17:16
f752859

Changelog

Added

  • Relative-Phase Toffoli gates rccx (with 2 controls) and rcccx
    (with 3 controls).
  • Variational form RYCRX
  • A new 'basic-no-ancilla' mode to mct.
  • Multi-controlled rotation gates mcrx, mcry, and mcrz as a general
    u3 gate is not supported by graycode implementation
  • Chemistry: ROHF open-shell support
    • Supported for all drivers: Gaussian16, PyQuante, PySCF and PSI4
    • HartreeFock initial state, UCCSD variational form and two qubit reduction for
      parity mapping now support different alpha and beta particle numbers for open
      shell support
  • Chemistry: UHF open-shell support
    • Supported for all drivers: Gaussian16, PyQuante, PySCF and PSI4
    • QMolecule extended to include integrals, coeffiecients etc for separate beta
  • Chemistry: QMolecule extended with integrals in atomic orbital basis to facilitate common access
    to these for experimentation
    • Supported for all drivers: Gaussian16, PyQuante, PySCF and PSI4
  • Chemistry: Additional PyQuante and PySCF driver configuration
    • Convergence tolerance and max convergence iteration controls.
    • For PySCF initial guess choice
  • Chemistry: Processing output added to debug log from PyQuante and PySCF computations (Gaussian16
    and PSI4 outputs were already added to debug log)
  • Chemistry: Merged qiskit-chemistry to this repo. The old chemistry changelog is at
    OLD_CHEMISTRY_CHANGELOG.md
  • Add MatrixOperator, WeightedPauliOperator and TPBGroupedPauliOperator class. (#593)
  • Add evolution_instruction function to get registerless instruction of time evolution. (#593)
  • Add op_converter module to unified the place in charge of converting different types of operators. (#593)
  • Add Z2Symmetries class to encapsulate the Z2 symmetries info and has helper methods for tapering an
    Operator. (#593).
  • Amplitude Estimation: added maximum likelihood postprocessing and confidence interval computation.
  • Maximum Likelihood Amplitude Estimation (MLAE): Implemented new algorithm for amplitude estimation based on
    maximum likelihood estimation, which reduces number of required qubits and circuit depth.
  • Added (piecewise) linearly and polynomially controlled Pauli-rotation circuits.
  • Add q_equation_of_motion to study excited state of a molecule, and add two algorithms to prepare the reference
    state. (#655)

Changed

  • Improve mct's 'basic' mode by using relative-phase Toffoli gates to build intermediate results.
  • Adapt to Qiskit Terra's newly introduced Qubit class.
  • Prevent QPE/IQPE from modifying input Operators.
  • The PyEDA dependency was removed;
    corresponding oracles' underlying logic operations are now handled by SymPy.
  • Refactor the Operator class, each representation has its own class MatrixOperator,
    WeightedPauliOperator and TPBGroupedPauliOperator. (#593)
  • The power in evolution_instruction was applied on the theta on the CRZ gate directly,
    the new version repeats the circuits to implement power. (#593)
  • CircuitCache is OFF by default, and it can be set via environment variable now
    QISKIT_AQUA_CIRCUIT_CACHE. (#630)

Fixed

  • A bug where TruthTableOracle would build incorrect circuits for truth tables with only a single 1 value.
  • A bug caused by PyEDA's indeterminism.
  • A bug with QPE/IQPE's translation and stretch computation.
  • Chemistry: Bravyi-Kitaev mapping fixed when num qubits was not a power of 2
  • Setup initial_layout in QuantumInstance via a list. (#630)

Removed

  • General multi-controlled rotation gate mcu3 is removed and replaced by
    multi-controlled rotation gates mcrx, mcry, and mcrz

Deprecated

  • The Operator class is deprecated, in favor of using MatrixOperator,
    WeightedPauliOperator and TPBGroupedPauliOperator. (#593)