Skip to content
This repository has been archived by the owner on Jan 12, 2024. It is now read-only.

Initial work on Broombridge v.0.3 #533

Draft
wants to merge 70 commits into
base: feature/broombridge-v0.3
Choose a base branch
from

Conversation

cgranade
Copy link
Contributor

This draft PR starts work on parsing and serialization logic for a new version of the Broombridge spec, primarily including the ability to specify what symmetries are used to expand lists of two-electron fermionic terms, allowing for the specification of fermionic Hamiltonians that violate eightfold symmetry.

This draft PR includes:

  • A new V0_3 class for serializing and deserializing draft Broombridge 0.3 documents.
  • A new subcommand export-jw for the qdk-chem tool that allows for exporting a Jordan–Wigner representation of a given input electronic structure problem, without the need to write a C# or Python host.

This draft PR does not yet include:

  • Unit or integration tests
  • Perf improvements for new serialization / deserialization features
  • Deduplication of new code where appropriate

@cgranade cgranade changed the base branch from main to feature/broombridge-v0.3 February 28, 2022 17:38
@cgranade
Copy link
Contributor Author

If you would like to locally test the chemistry command-line tool with these changes:

cd Chemistry/src/Tools
# Convert Broombridge 0.2 to 0.3.
dotnet run -- normalize --format Broombridge path/to/0_2.yaml
# Export JW representation of a fermionic Hamiltonian.
dotnet run -- export-jw --format Broombridge path/to/broombridge.yaml

cgranade and others added 24 commits February 28, 2022 10:41
* Fix formulas in PurifiedMixedState(WithData)

This fixes #485.

* Update NuGet version.

Co-authored-by: Mathias Soeken <mathias.soeken@outlook.com>
* Optimization and formatting.

* Use array API.

* Fix errors and add comments with refs to paper.

* Add corner case in conversion of rotation phases.

* Add test case.
Co-authored-by: Chris Granade <chgranad@microsoft.com>
Co-authored-by: Mathias Soeken <mathias.soeken@microsoft.com>
* Fixes #444.

* Add other test.

* Update Standard/tests/QcvvTests.qs

Co-authored-by: Mariia Mykhailova <mamykhai@microsoft.com>

Co-authored-by: Mariia Mykhailova <mamykhai@microsoft.com>
With this change, we're migrating the main release train of the QDK to the most recent Long Time Support version of the .NET framework. For details about this change, refer to the original issue microsoft/qsharp-compiler#1224.

As part of this change, we're:

- Re-targeting all .NetCoreApp3.1 binaries to .NET6.0
- Updating Docker images, samples and templates.
- Libraries using .NetStandard2.1 are not affected by this change.
- The minimum supported .NET version in the QDK will also be updated from 3.1 to 6.0
- The Visual Studio extension will now target Visual Studio 2022.
* Fixes #367.

* Apply suggestions from code review

Co-authored-by: Mariia Mykhailova <mamykhai@microsoft.com>

* Addressing Mariia's comments.

Co-authored-by: Mariia Mykhailova <mamykhai@microsoft.com>
* Improve code quality.

* Update MachineLearning/tests/StructureTests.qs

Co-authored-by: Cassandra Granade <chgranad@microsoft.com>

Co-authored-by: Cassandra Granade <chgranad@microsoft.com>
* Build 0.24.201332.
* Fixing QDK version in Notice.txt
Co-authored-by: Mathias Soeken <mathias.soeken@microsoft.com>
* API review meeting notes.

* Update Design/meetings/2022/api-design-2022-03.md

Co-authored-by: Mariia Mykhailova <mamykhai@microsoft.com>

* Apply suggestions from code review

* Update consensus.

Co-authored-by: Mariia Mykhailova <mamykhai@microsoft.com>
* Implements #442.

* Address reviewer feedback.
* Fixes #560.

* Apply suggestions from code review

Co-authored-by: Cassandra Granade <chgranad@microsoft.com>

Co-authored-by: Cassandra Granade <chgranad@microsoft.com>
Co-authored-by: Mariia Mykhailova <mamykhai@microsoft.com>
msoeken and others added 27 commits June 6, 2022 07:23
* API review May 2022

* Apply suggestions from code review

Co-authored-by: Cassandra Granade <chgranad@microsoft.com>

* Apply suggestions from code review

* Update api-design-2022-05.md

Co-authored-by: Cassandra Granade <chgranad@microsoft.com>
* Resource estimation tests.

* Improved implementation.

* Ergonomic changes.
* API review June 2022

* Apply suggestions from code review

Co-authored-by: Mariia Mykhailova <mamykhai@microsoft.com>

* Apply suggestions from code review

Co-authored-by: Cassandra Granade <chgranad@microsoft.com>

* Apply suggestions from code review

Co-authored-by: Mariia Mykhailova <mamykhai@microsoft.com>
Co-authored-by: Cassandra Granade <chgranad@microsoft.com>
* Add functions for smallest and largest representable fixed point

Implements #594

* New line.

* Apply suggestions from code review

Co-authored-by: Mariia Mykhailova <mamykhai@microsoft.com>

Co-authored-by: Mariia Mykhailova <mamykhai@microsoft.com>
* Add ApplyWindowed operation

Applies an operation windowing over input but with const target qubits

* Simplify ApplyWindowed

* Update ApplyWindowed to be more idiomatic

See comment on #602 by @cgranade

* Fix documentation style issues for ApplyWindowed

* Improve ApplyWindowed documentation and add example

* Change name of ApplyWindowed to ApplyToEachWindow

* Fix example being in code block

Co-authored-by: Mariia Mykhailova <michaylova@gmail.com>

Co-authored-by: Mathias Soeken <mathias.soeken@microsoft.com>
Co-authored-by: Mariia Mykhailova <michaylova@gmail.com>
* API review July 2022

* Apply suggestions from code review

Co-authored-by: Mariia Mykhailova <mamykhai@microsoft.com>

* Apply suggestions from code review

* Apply suggestions from code review

* Update api-design-2022-07.md

* Update api-design-2022-07.md

Co-authored-by: Mariia Mykhailova <mamykhai@microsoft.com>
* lookup table code

* Update Numerics/tests/LookupTableTests.qs

Co-authored-by: Mathias Soeken <mathias.soeken@gmail.com>

* Update Numerics/src/FixedPoint/LookupTable.qs

Co-authored-by: Mathias Soeken <mathias.soeken@gmail.com>

* Update Numerics/src/FixedPoint/LookupTable.qs

Co-authored-by: Mathias Soeken <mathias.soeken@gmail.com>

* Update Numerics/src/FixedPoint/LookupTable.qs

Co-authored-by: Mathias Soeken <mathias.soeken@gmail.com>

* Update Numerics/tests/LookupTableTests.qs

Co-authored-by: Mathias Soeken <mathias.soeken@gmail.com>

* Update Numerics/tests/LookupTableTests.qs

Co-authored-by: Mathias Soeken <mathias.soeken@gmail.com>

* Update Numerics/tests/LookupTableTests.qs

Co-authored-by: Mathias Soeken <mathias.soeken@gmail.com>

* Update Numerics/src/FixedPoint/LookupTable.qs

Co-authored-by: Mathias Soeken <mathias.soeken@gmail.com>

* Update Numerics/src/FixedPoint/LookupTable.qs

Co-authored-by: Mathias Soeken <mathias.soeken@gmail.com>

* Update Numerics/src/FixedPoint/LookupTable.qs

Co-authored-by: Mathias Soeken <mathias.soeken@gmail.com>

* Update Numerics/tests/LookupTableTests.qs

Co-authored-by: Mathias Soeken <mathias.soeken@gmail.com>

* Moved potential efficiency comments

Moved potential efficiency comments of fanning out control qubits from summary to inside the code

* Split summary into summary and remarks

Split original summary to summary and remarks

* Added latex formatting

* Update Numerics/src/FixedPoint/LookupTable.qs

* Update Numerics/tests/LookupTableTests.qs

Co-authored-by: Krishnakumar, Rajiv [Engineering] <rajiv.krishnakumar@ny.email.gs.com>
Co-authored-by: Mathias Soeken <mathias.soeken@gmail.com>
Co-authored-by: Mathias Soeken <mathias.soeken@microsoft.com>
* Fix documentation

* Temporarily disable test not compatible with 0.3.

Co-authored-by: Cassandra Granade <chgranad@microsoft.com>
Co-authored-by: Mathias Soeken <mathias.soeken@microsoft.com>
* Add `$schema` to `cgmanifest.json`

* Temporarily disable test not compatible with 0.3.

Co-authored-by: Jamie Magee <jamie.magee@microsoft.com>
Co-authored-by: Cassandra Granade <chgranad@microsoft.com>
Co-authored-by: Mathias Soeken <mathias.soeken@microsoft.com>
Co-authored-by: Dmitry Vasilevsky <dmitryv@microsoft.com>
* Added example how to use PrepareArbitraryStateCP

* Update Standard/src/Preparation/Arbitrary.qs

Co-authored-by: Mathias Soeken <mathias.soeken@gmail.com>

Co-authored-by: Mathias Soeken <mathias.soeken@gmail.com>
* Fix fourfold symmetry bugs

* Add unit test

* Update datamodel tests for v0.3
@anpaz
Copy link
Member

anpaz commented Oct 21, 2022

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 2 pipeline(s).

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet