Skip to content

v0.2.0

Choose a tag to compare

@github-actions github-actions released this 08 Jan 15:03
· 55 commits to master since this release
20b0ad4

Added

  • TICK Command: Time slice boundary marker for temporal scheduling in MBQC patterns

    • Added TICK command type to mark boundaries between time slices
    • Integrated TICK command handling in PatternSimulator
    • Integrated TICK command processing in Stim compiler
  • Edge Scheduler: Automatic entanglement operation scheduling based on node preparation times (#99)

    • Added entangle_time attribute to Scheduler for tracking entanglement operation timing
    • Added auto_schedule_entanglement() method to automatically schedule CZ gates when both nodes are prepared
    • Extended the timeline property to include entanglement operations
    • Added entanglement time validation in schedule validation
    • Added compress_schedule() function to support entanglement time compression
  • Pattern: Added the depth attribute into Pattern, which represents the depth of parallel execution.

  • Pattern: Added pattern resource/throughput metrics (active_volume, volume, idle_times, throughput).

  • Scheduler Integration: Enhanced qompile() to support temporal scheduling with TICK commands

    • Added scheduler parameter to qompile() for custom scheduling
    • Automatically inserts TICK commands between time slices
  • Examples: Added entanglement_scheduling_demo.py demonstrating edge scheduler features

  • Feedforward Optimization: Added a signal_shifting method as a feedforward optimization.

    • This optimization is equivalent to the operation of the same name in the measurement calculus, and makes the measurement pattern as parallel as possible.
    • The optimization is now self-contained within the feedforward module.
  • Feedforward Optimization: Added pauli_simplification() to remove redundant Pauli corrections in correction maps when measuring in Pauli bases.

Changed

  • Pattern: Updated command sequence generation to support TICK commands
  • Command: Extended Command type alias to include TICK
  • The default strategy of Scheduler.solve_schedule is now MINIMIZE_TIME instead of MINIMIZE_SPACE for the compilation performance.

Fixed

  • Scheduler: Accept entangle_time edges in either order in Scheduler.manual_schedule().

Tests

  • Stim Compiler: Add coverage that manual entangle_time determines CZ time slices in both Pattern and Stim output.