BernoulliDistribution

class BernoulliDistribution(p, low=0, high=1)[source]

The Univariate Bernoulli Distribution.

Distribution with only two values (low, high) and the corresponding probabilities represented by a single qubit.

Parameters
  • p (float) – Probability

  • low (float) – Low value

  • high (float) – High value

Attributes

BernoulliDistribution.high

returns high

BernoulliDistribution.low

returns low

BernoulliDistribution.num_target_qubits

Returns the number of target qubits

BernoulliDistribution.num_values

returns number of values

BernoulliDistribution.p

BernoulliDistribution.probabilities

returns probabilities

BernoulliDistribution.values

returns values

Methods

BernoulliDistribution.build(qc, q[, …])

BernoulliDistribution.build_controlled(qc, …)

Adds corresponding controlled sub-circuit to given circuit

BernoulliDistribution.build_controlled_inverse(qc, …)

Adds controlled inverse of corresponding sub-circuit to given circuit

BernoulliDistribution.build_controlled_inverse_power(qc, …)

Adds controlled, inverse, power of corresponding circuit.

BernoulliDistribution.build_controlled_power(qc, …)

Adds controlled power of corresponding circuit.

BernoulliDistribution.build_inverse(qc, q[, …])

Adds inverse of corresponding sub-circuit to given circuit

BernoulliDistribution.build_inverse_power(qc, …)

Adds inverse power of corresponding circuit.

BernoulliDistribution.build_power(qc, q, power)

Adds power of corresponding circuit.

BernoulliDistribution.get_num_qubits()

returns number of qubits

BernoulliDistribution.get_num_qubits_controlled()

returns number of qubits controlled

BernoulliDistribution.pdf_to_probabilities(…)

Takes a probability density function (pdf), and returns a truncated and discretized array of probabilities corresponding to it

BernoulliDistribution.required_ancillas()

returns required ancillas

BernoulliDistribution.required_ancillas_controlled()

returns required ancillas controlled