Skip to content

Secure pattern generation #193

@masa10-f

Description

@masa10-f

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is.

Graphix does not guarantee the runnability and deterministic properties of a pattern when it is passed to a simulator or QPU. It would be beneficial if these fundamanetal properties are ensured during the pattern generation process.

Describe the feature you'd like
A clear and concise description of what you want to happen.

One possible way to do this is to generate a pattern from the underlying graph and flowlike objects(including causal flow, gflow, and pauli flow). Flows can be understood as a feedforward protocol that ensures deterministic property of MBQC.

  1. Generalize the graph-based pattern generator(generator.generate_from_graph) with an arbitrary flowlike object(related to Add optional argument to pass gflow in generate_from_graph() #120 )
  2. Generate every pattern through the above generator
  3. Implement flags in the pattern class such as pattern.is_deterministic and pattern.is_runnable.

I plan to refactor some methods in the pattern class to clarify which operations preserve the properties. For example, standardize and shift_signals preserve the properties, but add does not. I will implement a property-preserving pattern concatenation method for those who want to directly edit the pattern.

Additional context
Add any other context or screenshots about the feature request here.

Metadata

Metadata

Assignees

Labels

new featureNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions