Skip to content

Simultaneous 2Q iRB errors, and should be forbidden #218

@mhodson-rigetti

Description

@mhodson-rigetti

Tell us the versions of your environment (ensure you are running the latest):

  • forest benchmarking version: 0.8.0 (pre-release branch)
  • pyQuil version: 3.0.0
  • qvm version: latest
  • quilc version: 1.23.0

The documentation for randomized benchmarking mentions capabilities for RB, simultaneous RB, and interleaved RB. All experiments are generated via generate_rb_experiments(). Simultaneous RB takes in multiple groups; interleaved RB takes in an interleaved gate.

As it turns out, you cannot do simultaneous, interleaved RB. If you try, e.g. providing an interleaved gate program with several 2Q gates and matching groups, you will get an error. Such a use case it a little nonsensical given the restriction for serial 2Q execution on QPU.

To reproduce:

benchmarker = BenchmarkConnection()  # from pyquil v3
program = Program()
program += CZ(30, 31)
program += CZ(32, 33)
generate_rb_experiments(benchmarker, [(30, 31), (32, 33)], [2, 10], interleaved_gate=program)

Recommend a consistency check be added to fail gracefully.

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