FastCNOTUnitObjective

class qiskit.transpiler.synthesis.aqc.FastCNOTUnitObjective(num_qubits, cnots)[source]

Bases: CNOTUnitObjective

Implementation of objective function and gradient calculator, which is similar to DefaultCNOTUnitObjective but several times faster.

Parameters:
  • num_qubits (int) – number of qubits.

  • cnots (ndarray) – a CNOT structure to be used in the optimization procedure.

Attributes

num_cnots

Returns: A number of CNOT units to be used by the approximate circuit.

num_thetas

Returns: Number of parameters (angles) of rotation gates in this circuit.

target_matrix

Returns: a matrix being approximated

Methods

gradient(param_values)[source]

Computes the gradient of objective function. See description of the base class method.

Return type:

ndarray

objective(param_values)[source]

Computes the objective function and some intermediate data for the subsequent gradient computation. See description of the base class method.

Return type:

float