Plaquettes#

class tqec.plaquette.Plaquettes(collection)[source]#

Bases: object

Represent a collection of plaquettes that might be applied to a Template instance.

The goal of this class is to abstract away how a “collection of plaquettes” is represented and to provide a unique interface in order to retrieve plaquettes when building a quantum circuit from a template and plaquettes.

It also checks that the represented collection is valid, which means that it does not include any plaquette associated with index 0 (that is internally and conventionally reserved for the empty plaquette).

Methods

__init__(collection)

from_dict(data[, plaquettes])

Return a collection of plaquettes from its dictionary representation.

items()

map_indices(callable)

to_dict([plaquettes_to_indices])

Return a dictionary representation of the plaquettes.

to_name_dict()

with_updated_plaquettes(plaquettes_to_update)

without_plaquettes(indices)

Attributes

collection

Detailed methods

Parameters:

collection (FrozenDefaultDict[int, Plaquette])

__init__(collection)#
Parameters:

collection (FrozenDefaultDict[int, Plaquette])

Return type:

None

static from_dict(data, plaquettes=None)[source]#

Return a collection of plaquettes from its dictionary representation.

Parameters:
  • data (dict[str, Any]) – dictionary with the keys plaquettes and default.

  • plaquettes (Sequence[Plaquette] | None)

Returns:

a new instance of Plaquettes with the provided plaquettes and default.

Return type:

Plaquettes

items()[source]#
Return type:

Iterable[tuple[int, Plaquette]]

map_indices(callable)[source]#
Parameters:

callable (Callable[[int], int])

Return type:

Plaquettes

to_dict(plaquettes_to_indices=None)[source]#

Return a dictionary representation of the plaquettes.

Parameters:

plaquettes_to_indices (dict[Plaquette, int] | None) – a dictionary mapping plaquettes to their indices. If provided, a plaquette will be represented by its index

Return type:

dict[str, Any]

to_name_dict()[source]#
Return type:

dict[int | Literal[‘default’], str]

with_updated_plaquettes(plaquettes_to_update)[source]#
Parameters:

plaquettes_to_update (Mapping[int, Plaquette])

Return type:

Plaquettes

without_plaquettes(indices)[source]#
Parameters:

indices (Collection[int])

Return type:

Plaquettes