Skip to content

Lazy evaluator for Bloq execution #1895

Description

@vtomole

Qualtran represents quantum programs hierarchically as Bloqs. However, executing a large program through Cirq generally requires decomposing it and constructing a complete circuit before simulation.

For very large or repetitive algorithms, the fully expanded circuit may be impractical to store even though the Qualtran representation is compact. It would be useful to evaluate a Bloq incrementally, decomposing only the current subgraph and forwarding executable leaf operations to a simulator or hardware.

Qualtran already evaluates individual Bloq decompositions lazily. But I don't think this extends to execution: recursively decompose and execute only the currently demanded portion of the graph without first constructing a fully flattened circuit.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions