Skip to content

Parallelise fanout/fanin #81

@acl-cqc

Description

@acl-cqc

Fanout/fanin are checkable currently so the places they can be used is limited, but we could guess at the expected size using the nat-solving framework, they'd be much more useful!
e.g.

f(Vec(Qubit, 2)) -o Bit
f = ...

g(Qubit, Qubit) -o Bit
g = [\/]; f

h(Qubit, Qubit) -o Bit
h = [\/]; ..; f

g succeeds but h fails. I think we could do better!

At the moment we are not using the nat-solving framework, fanout/fanin expects the vector type to have already been solved, so this needs parallisation. Instead we should guess a vector type (of variables), and then yield until the length is solved to a constant.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions