qiskit.aqua.components.uncertainty_models.UniformDistribution
class UniformDistribution(num_target_qubits, low=0, high=1)
The Univariate Uniform Distribution.
Uniform distribution is defined by the number of qubits that should be used to represent the distribution, as well as the lower bound and upper bound of the considered interval.
Parameters
- num_target_qubits (
int
) – Number of qubits it acts on, has a minimum value of 1. - low (
float
) – Lower bound, i.e., the value corresponding to |0…0> (assuming an equidistant grid) - high (
float
) – Upper bound, i.e., the value corresponding to |1…1> (assuming an equidistant grid)
__init__
__init__(num_target_qubits, low=0, high=1)
Parameters
- num_target_qubits (
int
) – Number of qubits it acts on, has a minimum value of 1. - low (
float
) – Lower bound, i.e., the value corresponding to |0…0> (assuming an equidistant grid) - high (
float
) – Upper bound, i.e., the value corresponding to |1…1> (assuming an equidistant grid)
Methods
__init__ (num_target_qubits[, low, high]) | type num_target_qubitsint |
build (qc, q[, q_ancillas, params]) | |
build_controlled (qc, q, q_control[, …]) | Adds corresponding controlled sub-circuit to given circuit |
build_controlled_inverse (qc, q, q_control[, …]) | Adds controlled inverse of corresponding sub-circuit to given circuit |
build_controlled_inverse_power (qc, q, …[, …]) | Adds controlled, inverse, power of corresponding circuit. |
build_controlled_power (qc, q, q_control, power) | Adds controlled power of corresponding circuit. |
build_inverse (qc, q[, q_ancillas]) | Adds inverse of corresponding sub-circuit to given circuit |
build_inverse_power (qc, q, power[, q_ancillas]) | Adds inverse power of corresponding circuit. |
build_power (qc, q, power[, q_ancillas]) | Adds power of corresponding circuit. |
get_num_qubits () | returns number of qubits |
get_num_qubits_controlled () | returns number of qubits controlled |
pdf_to_probabilities (pdf, low, high, num_values) | Takes a probability density function (pdf), and returns a truncated and discretized array of probabilities corresponding to it |
required_ancillas () | returns required ancillas |
required_ancillas_controlled () | returns required ancillas controlled |
Attributes
high | returns high |
low | returns low |
num_target_qubits | Returns the number of target qubits |
num_values | returns number of values |
probabilities | returns probabilities |
values | returns values |
build
build(qc, q, q_ancillas=None, params=None)
build_controlled
build_controlled(qc, q, q_control, q_ancillas=None, use_basis_gates=True)
Adds corresponding controlled sub-circuit to given circuit
Parameters
- qc (QuantumCircuit) – quantum circuit
- q (list) – list of qubits (has to be same length as self._num_qubits)
- q_control (Qubit) – control qubit
- q_ancillas (list) – list of ancilla qubits (or None if none needed)
- use_basis_gates (bool) – use basis gates for expansion of controlled circuit
build_controlled_inverse
build_controlled_inverse(qc, q, q_control, q_ancillas=None, use_basis_gates=True)
Adds controlled inverse of corresponding sub-circuit to given circuit
Parameters
- qc (QuantumCircuit) – quantum circuit
- q (list) – list of qubits (has to be same length as self._num_qubits)
- q_control (Qubit) – control qubit
- q_ancillas (list) – list of ancilla qubits (or None if none needed)
- use_basis_gates (bool) – use basis gates for expansion of controlled circuit
build_controlled_inverse_power
build_controlled_inverse_power(qc, q, q_control, power, q_ancillas=None, use_basis_gates=True)
Adds controlled, inverse, power of corresponding circuit. May be overridden if a more efficient implementation is possible
build_controlled_power
build_controlled_power(qc, q, q_control, power, q_ancillas=None, use_basis_gates=True)
Adds controlled power of corresponding circuit. May be overridden if a more efficient implementation is possible
build_inverse
build_inverse(qc, q, q_ancillas=None)
Adds inverse of corresponding sub-circuit to given circuit
Parameters
- qc (QuantumCircuit) – quantum circuit
- q (list) – list of qubits (has to be same length as self._num_qubits)
- q_ancillas (list) – list of ancilla qubits (or None if none needed)
build_inverse_power
build_inverse_power(qc, q, power, q_ancillas=None)
Adds inverse power of corresponding circuit. May be overridden if a more efficient implementation is possible
build_power
build_power(qc, q, power, q_ancillas=None)
Adds power of corresponding circuit. May be overridden if a more efficient implementation is possible
get_num_qubits
get_num_qubits()
returns number of qubits
get_num_qubits_controlled
get_num_qubits_controlled()
returns number of qubits controlled
high
returns high
low
returns low
num_target_qubits
Returns the number of target qubits
num_values
returns number of values
pdf_to_probabilities
static pdf_to_probabilities(pdf, low, high, num_values)
Takes a probability density function (pdf), and returns a truncated and discretized array of probabilities corresponding to it
Parameters
- pdf (function) – probability density function
- low (float) – lower bound of equidistant grid
- high (float) – upper bound of equidistant grid
- num_values (int) – number of grid points
Returns
array of probabilities
Return type
list
probabilities
returns probabilities
required_ancillas
required_ancillas()
returns required ancillas
required_ancillas_controlled
required_ancillas_controlled()
returns required ancillas controlled
values
returns values