Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FrameSimulator is implementing MY as if it were MRY #90

Closed
Strilanc opened this issue Jul 13, 2021 · 0 comments · Fixed by #91
Closed

FrameSimulator is implementing MY as if it were MRY #90

Strilanc opened this issue Jul 13, 2021 · 0 comments · Fixed by #91

Comments

@Strilanc
Copy link
Collaborator

    auto r = FrameSimulator::sample_flipped_measurements(Circuit(R"CIRCUIT(
        RY 0
        MY 0
        MY 0
        Z_ERROR(1) 0
        MY 0
        MY 0
        Z_ERROR(1) 0
        MY 0
        MY 0
    )CIRCUIT"), 10000, SHARED_TEST_RNG());
    ASSERT_EQ(r[0].popcnt(), 0);
    ASSERT_EQ(r[1].popcnt(), 0);
    ASSERT_EQ(r[2].popcnt(), 10000);
    ASSERT_EQ(r[3].popcnt(), 10000);
    ASSERT_EQ(r[4].popcnt(), 0);
    ASSERT_EQ(r[5].popcnt(), 0);

fails

Strilanc added a commit that referenced this issue Jul 13, 2021
- Fix MY acting like MRY in frame simulator
- Add popcnt to simd_bits
- Add reserve_space_for_results, reserve_noisy_space_for_results, xor_record_reserved_result to MeasureRecordBatch
- Rename ARG_COUNT_VARIABLE to ARG_COUNT_SYGIL_ANY
- Introduce ARG_COUNT_SYGIL_ZERO_OR_ONE and use it on measurement gates
- Rename GATE_PRODUCES_RESULTS to GATE_PRODUCES_NOISY_RESULTS
- Swap argument order to TableauSimulator so num qubits can default to 0
- Add noisify_new_measurements to TableauSimulator
- Add expand_do_circuit to TableauSimulator
- Remove argument count validation logic from inside circuit parsing code
- Fixes #85
- Fixes #84
- Fixes #90
Strilanc added a commit that referenced this issue Jul 13, 2021
- Fix MY acting like MRY in frame simulator
- Add popcnt to simd_bits
- Add reserve_space_for_results, reserve_noisy_space_for_results, xor_record_reserved_result to MeasureRecordBatch
- Rename ARG_COUNT_VARIABLE to ARG_COUNT_SYGIL_ANY
- Introduce ARG_COUNT_SYGIL_ZERO_OR_ONE and use it on measurement gates
- Rename GATE_PRODUCES_RESULTS to GATE_PRODUCES_NOISY_RESULTS
- Swap argument order to TableauSimulator so num qubits can default to 0
- Add noisify_new_measurements to TableauSimulator
- Add expand_do_circuit to TableauSimulator
- Remove argument count validation logic from inside circuit parsing code
- Update stimcirq to be able to round trip probabilistic measurements
- Update stimcirq to use coordinate data for round tripping line qubits and grid qubits
- Fixes #85
- Fixes #84
- Fixes #90
- Fixes #71
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant