Pattern converter
graphix_perceval.converter module
- graphix_perceval.converter.fusion_circuit(ph1: Photon, ph2: Photon) Circuit[source]
Create a Perceval Circuit for fusing two photons.
- Parameters
ph1 (Photon) – First photon.
ph2 (Photon) – Second photon.
- Returns
Perceval Circuit for fusing two photons.
- Return type
perceval.Circuit
- graphix_perceval.converter.ghz_circuit(num_photons: int, name: str = '') Circuit[source]
Create a Perceval Circuit for a GHZ ResourceGraph.
- Parameters
num_photons (int) – Number of photons.
- Returns
Perceval Circuit for a GHZ ResourceGraph.
- Return type
perceval.Circuit
- graphix_perceval.converter.linear_circuit(num_photons: int, name: str = '') Circuit[source]
Create a Perceval Circuit for a linear ResourceGraph.
- Parameters
num_photons (int) – Number of photons.
- Returns
Perceval Circuit for a linear ResourceGraph.
- Return type
perceval.Circuit
- graphix_perceval.converter.local_clifford_circuit(clifford_id: int) Circuit[source]
Create a Perceval Circuit for a local clifford.
- Parameters
mode_id (int) – Mode id.
clifford_id (int) – Clifford id.
- Returns
Perceval Circuit for a local clifford.
- Return type
perceval.Circuit
- graphix_perceval.converter.pattern2graphstate(pattern: Pattern) tuple[graphix.graphsim.GraphState, dict[int, float], list[int]][source]
Create a graph state from a MBQC pattern.
- Parameters
pattern (
graphix.Patternobject) – MBQC pattern to be run on the device- Returns
graph_state (
graphix.GraphStateobject) – Graph state corresponding to the pattern.phasedict (dict) – Dictionary of phases for each node.
output_nodes (list) – List of output nodes.
- graphix_perceval.converter.to_perceval(pattern: Pattern) PercevalExperiment[source]
Convert a graphix.Pattern to a perceval.Circuit.
- Parameters
pattern (graphix.Pattern) – GraphState to be converted to a perceval.Circuit
- Returns
experiment –
graphix_perceval.experiment.PercevalExperimentobject- Return type