WalshDiagonalSynthesisPass

class WalshDiagonalSynthesisPass(parameter_precision=1e-08)[source]

Bases: SynthesisPass

A pass that synthesizes diagonal unitaries into Walsh functions.

Based on: https://arxiv.org/abs/1306.3991

__init__(parameter_precision=1e-08)[source]

Constructor for WalshDiagonalSynthesisPass.

Parameters:

parameter_precision (float) – Pauli strings with parameter values less than this are rounded to zero. (Default: 1e-8)

Attributes

name

The name of the pass.

Methods

execute(*args, **kwargs)

Map a function over iterable arguments in parallel.

get_connectivity(_, data)

Retrieve the current connectivity of the circuit.

get_model(_, data)

Retrieve the machine model from the data dictionary.

get_placement(_, data)

Retrieve the logical to physical qubit map from the data dictionary.

get_target(_, data)

Retrieve the target from the data dictionary.

gray_code(number)

Convert a number to its Gray code representation.

in_parallel(data)

Return true if pass is being executed in a parallel.

pauli_to_subcircuit(string_id, angle, num_qubits)

run(circuit, data)

Perform the pass's operation, see BasePass for more.

synthesize(utry, data)

Synthesize utry, see SynthesisPass for more.