Skip to content

Conversation

@masa10-f
Copy link
Collaborator

@masa10-f masa10-f commented Nov 17, 2025

Before submitting, please check the following:

  • Make sure you have tests for the new code and that test passes (run pytest)
  • If applicable, add a line to the [unreleased] part of CHANGELOG.md, following keep-a-changelog.
  • Format added code by ruff
  • Type checking by mypy and pyright
  • Make sure the checks (github actions) pass.
  • Check that the docs compile without errors (run make html in ./docs/ - you may need to install dependency for sphinx docs, see docs/requirements.txt.)

Then, please fill in below:

Description of the change:

This PR significantly enhances the MBQC pattern scheduling functionality
and adds feedforward optimization capabilities.

  • Greedy Scheduler Implementation: Fast heuristic schedulers as
    alternatives to CP-SAT solver (updated the previous algorithms I have implemented in Graphix)
    • greedy_minimize_time: Greedy scheduler prioritizing minimal execution time
    • greedy_minimize_space: Greedy scheduler prioritizing minimal qubit usage
    • Useful for large-scale graphs or when optimality is not critical
    • Added max_qubit_count constraint support to schedulers
  • Feedforward Optimization: Pauli simplification for
    feedforward optimization
    • pauli_simplification: Removes redundant Pauli corrections (originally proposed in the measurement calculus, and I have reimplemented it in the pure feedforward layer)
  • New Pattern Properties: Additional metrics for pattern evaluation
    • volume: Sum of space across all timeslices
    • max_volume: Maximum volume (max_space × depth)
    • idle_times: Idle time for each qubit
    • throughput: Number of measurements per TICK

Related issue:

@masa10-f masa10-f self-assigned this Nov 17, 2025
@masa10-f masa10-f added the enhancement New feature or request label Nov 17, 2025
@codecov
Copy link

codecov bot commented Nov 17, 2025

Codecov Report

❌ Patch coverage is 67.93478% with 59 lines in your changes missing coverage. Please review.
✅ Project coverage is 75.32%. Comparing base (4c26208) to head (cebc457).

❌ Your patch check has failed because the patch coverage (67.93%) is below the target coverage (75.00%). You can increase the patch coverage or adjust the target coverage.

Additional details and impacted files
@@            Coverage Diff             @@
##           master     #131      +/-   ##
==========================================
- Coverage   76.00%   75.32%   -0.69%     
==========================================
  Files          21       22       +1     
  Lines        2209     2391     +182     
  Branches      378      428      +50     
==========================================
+ Hits         1679     1801     +122     
- Misses        456      510      +54     
- Partials       74       80       +6     
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants