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

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions