# qiskit.result.QuasiDistribution¶

class QuasiDistribution(data, shots=None)[código fonte]

A dict-like class for representing qasi-probabilities.

Builds a quasiprobability distribution object.

Parâmetros
• data (dict) –

Input quasiprobability data. Where the keys represent a measured classical value and the value is a float for the quasiprobability of that result. The keys can be one of several formats:

• A hexadecimal string of the form "0x4a"

• A bit string e.g. '0b1011' or "01011"

• An integer

• shots (int) – Number of shots the distribution was derived from.

Levanta
• TypeError – If the input keys are not a string or int

• ValueError – If the string format of the keys is incorrect

__init__(data, shots=None)[código fonte]

Builds a quasiprobability distribution object.

Parâmetros
• data (dict) –

Input quasiprobability data. Where the keys represent a measured classical value and the value is a float for the quasiprobability of that result. The keys can be one of several formats:

• A hexadecimal string of the form "0x4a"

• A bit string e.g. '0b1011' or "01011"

• An integer

• shots (int) – Number of shots the distribution was derived from.

Levanta
• TypeError – If the input keys are not a string or int

• ValueError – If the string format of the keys is incorrect

Methods

 __init__(data[, shots]) Builds a quasiprobability distribution object. binary_probabilities([num_bits]) Build a quasi-probabilities dictionary with binary string keys fromkeys([value]) Create a new dictionary with keys from iterable and values set to value. get(key[, default]) Return the value for key if key is in the dictionary, else default. Build a quasi-probabilities dictionary with hexadecimal string keys Takes a quasiprobability distribution and maps it to the closest probability distribution as defined by the L2-norm. pop(k[,d]) If key is not found, d is returned if given, otherwise KeyError is raised Remove and return a (key, value) pair as a 2-tuple. setdefault(key[, default]) Insert key with a value of default if key is not in the dictionary. update([E, ]**F) If E is present and has a .keys() method, then does: for k in E: D[k] = E[k] If E is present and lacks a .keys() method, then does: for k, v in E: D[k] = v In either case, this is followed by: for k in F: D[k] = F[k]
binary_probabilities(num_bits=None)[código fonte]

Build a quasi-probabilities dictionary with binary string keys

Parâmetros

num_bits (int) – number of bits in the binary bitstrings (leading zeros will be padded). If None, the length will be derived from the largest key present.

Retorna

A dictionary where the keys are binary strings in the format

"0110"

Tipo de retorno

dict

clear() → None. Remove all items from D.
copy() → a shallow copy of D
fromkeys(value=None, /)

Create a new dictionary with keys from iterable and values set to value.

get(key, default=None, /)

Return the value for key if key is in the dictionary, else default.

hex_probabilities()[código fonte]

Build a quasi-probabilities dictionary with hexadecimal string keys

Retorna

A dictionary where the keys are hexadecimal strings in the

format "0x1a"

Tipo de retorno

dict

items() → a set-like object providing a view on D’s items
keys() → a set-like object providing a view on D’s keys
nearest_probability_distribution(return_distance=False)[código fonte]

Takes a quasiprobability distribution and maps it to the closest probability distribution as defined by the L2-norm.

Parâmetros

return_distance (bool) – Return the L2 distance between distributions.

Retorna

Nearest probability distribution. float: Euclidean (L2) distance of distributions.

Tipo de retorno

ProbDistribution

Notas

Method from Smolin et al., Phys. Rev. Lett. 108, 070502 (2012).

pop(k[, d]) → v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised

popitem()

Remove and return a (key, value) pair as a 2-tuple.

Pairs are returned in LIFO (last-in, first-out) order. Raises KeyError if the dict is empty.

setdefault(key, default=None, /)

Insert key with a value of default if key is not in the dictionary.

Return the value for key if key is in the dictionary, else default.

update([E, ]**F) → None. Update D from dict/iterable E and F.

If E is present and has a .keys() method, then does: for k in E: D[k] = E[k] If E is present and lacks a .keys() method, then does: for k, v in E: D[k] = v In either case, this is followed by: for k in F: D[k] = F[k]

values() → an object providing a view on D’s values