Skip to content

MQT SyReC Synthesizer 2.0.0 Release

Latest

Choose a tag to compare

@github-actions github-actions released this 16 Oct 16:07
Immutable release. Only release title and notes can be modified.
8584675

πŸ‘€ What Changed

πŸš€ Features and Enhancements

  • ✨ Support for hexadecimal and binary literals (#409) (@TooMuchDakka)
  • ✨ Support for non-compile time constant expression indices in dimension access component of variable access (#369) (@TooMuchDakka)
  • ✨ Unification of search for main module between SyReC parser and synthesis algorithms (#341) (@TooMuchDakka)
  • Load simulation test case data from .json with unified format (#274) (@TooMuchDakka)
  • ♻️ Replacement of boost::fusion and boost::spirit with ANTLR4 components for SyReC grammar and parser (#220) (@TooMuchDakka)
  • ✨ Support for unary expressions in IR and synthesis algorithm (#259) (@TooMuchDakka)
  • Transition to MQT Core (#252) (@TooMuchDakka)
  • ♻️ Removal of boost dependency from synthesis and simulation part of library (#240) (@TooMuchDakka)

πŸ› Bug Fixes

  • πŸ› OpenQASM 3.0 compatible quantum register labels for generated qubits (#398) (@TooMuchDakka)
  • Evaluation of comile time constant expressions and truncation of integer constant values (#404) (@TooMuchDakka)
  • πŸ“ Fix rendering of documentation (#371) (@denialhaag)
  • 🎨 Fix things forgotten in #317 (#368) (@denialhaag)
  • πŸ› Fix of variable qubits lookup during synthesis of VariableAccess in recursive/repeated Call-/UncallStatements (#347) (@TooMuchDakka)
  • πŸ› Fix of duplicate qubit label generation during synthesis (#327) (@TooMuchDakka)
  • πŸ› Addition of missing statement inverse implementations + various UncallStatement synthesis bugfixes (#336) (@TooMuchDakka)
  • Local module variables used as parameters in Call-/UncallStatements now synthesizable (#324) (@TooMuchDakka)
  • Use ancillary qubit to store result of synthesis of variable expression used as guard condition in IfStatement (#311) (@TooMuchDakka)
  • Synthesis of shift expressions with shift amount larger or equal to bitwidth of to be shift expression. (#297) (@TooMuchDakka)
  • Refactoring of synthesis of division and modulo operations (#305) (@TooMuchDakka)
  • Parser error newline (#303) (@TooMuchDakka)
  • Fix of implementation of SyrecSynthesis::increase operation (#286) (@TooMuchDakka)
  • Checking for repeating qubit indices in operands of expression no longer throws index-out-of-range error (#281) (@TooMuchDakka)
  • Syrec editor can now load SyReC programs from a file (#289) (@TooMuchDakka)

πŸ“„ Documentation

πŸ€– CI

🧹 Code Quality

  • Further synthesis tests using simulation for verification (#351) (@TooMuchDakka)
  • ♻️ Replacement of boost::fusion and boost::spirit with ANTLR4 components for SyReC grammar and parser (#220) (@TooMuchDakka)
  • ♻️ Removal of boost dependency from synthesis and simulation part of library (#240) (@TooMuchDakka)

⬆️ Dependencies

112 changes

Full Changelog: v1.2.1...v2.0.0