Граф коммитов

535 Коммитов

Автор SHA1 Сообщение Дата
Chris Granade b56b649250
Merge branch 'master' into mariia/delete-old-issue-template 2020-01-28 10:36:15 -08:00
Chris Granade 35497c79b1
Merge pull request #215 from microsoft/mariia/api-docs-controlledonbitstring
Improve API documentation for ControlledOnBitString
2020-01-28 10:24:37 -08:00
Mariia Mykhailova cafca84d30
Remove outdated version of issue template
We don't redirect users to UserVoice any longer
2020-01-28 09:21:29 -08:00
Christopher Granade 1c44e337dc Ensure all code paths return. 2020-01-27 17:55:55 -08:00
Christopher Granade 57d518a6c6 Incorporating discussion w/ @anpaz-msft. 2020-01-27 15:22:44 -08:00
Mariia Mykhailova dc932c1ebc Add formula to describe the effect of controlled version 2020-01-27 15:00:17 -08:00
Christopher Granade d27d41f0c6 Fix #199. 2020-01-27 14:48:42 -08:00
Christopher Granade f27ff7bdb7 Use same delay-signing technique as standard. 2020-01-27 13:43:49 -08:00
Mariia Mykhailova 7294b04b8e Apply review comments 2020-01-27 12:20:34 -08:00
Mariia Mykhailova 6e4ae53785 Improve API documentation for ControlledOnBitString
This change adds description, remarks and examples sections.
2020-01-27 11:20:28 -08:00
Christopher Granade baf40d8d61 Sign Microsoft.Quantum.Numerics.dll 2020-01-23 17:47:15 -08:00
Chris Granade 99ddbae7b8
Merge pull request #213 from microsoft/cgranade/fix-qml-key
Fix path to pubkey for QML signing.
2020-01-23 17:37:36 -08:00
Christopher Granade d8c437194a Fix path to pubkey for QML signing. 2020-01-23 14:56:11 -08:00
Chris Granade d38bc75bb7
Merge pull request #210 from microsoft/cgranade/jupyter-core-1.2.29857
Jupyter Core → 1.2.29857
2020-01-22 16:22:31 -08:00
Christopher Granade 146dbb60f0 Update to 1.2.29939. 2020-01-22 14:25:34 -08:00
Christopher Granade 0c37527566 Jupyter Core → 1.2.29857 2020-01-22 07:56:25 -08:00
Chris Granade ffb4749f49
Merge pull request #207 from microsoft/cgranade/fix-206
Fix #206 and improve Trotter–Suzuki code quality.
2020-01-21 21:28:43 -08:00
Chris Granade 680c52eccf
Merge pull request #208 from microsoft/cgranade/master→qml
Merge master into QML feature
2020-01-17 18:19:12 -08:00
Christopher Granade 0ba232721b Merge branch 'master' into cgranade/master→qml 2020-01-17 17:42:31 -08:00
Christopher Granade 36943b8135 Expanded and corrected ///. 2020-01-16 17:14:20 -08:00
Chris Granade a35aa5fe50
Final prep for QML review (#205)
* Begin preparing for API review.

* A bit more refactoring.

* A bit more refactoring, more /// comments.

* Progress on ///, code quality.
2020-01-16 13:40:52 -08:00
Christopher Granade e90beb5fec Code quality, added remark about � vs 2�. Renamed to adjective phrase. 2020-01-15 16:45:31 -08:00
Guang Hao Low a23e3eafb2
Fix high-order Trotter bug (#178)
Co-authored-by: Chris Granade <cgranade@gmail.com>
2020-01-15 13:05:52 -08:00
Chris Granade 4bec1d5701
Code quality improvements (#203)
* Improve code quality with experimental linter.

* Fixed a couple mistakes in previous cleanup.

* More fixes to resolve linting issues.

* Remove extraneous comment.

* Applied feedback from #198.

* Applying more documentation fixes suggested by linter.

* Fix to deprecation stub.

* Whitespace fix noted by @ScottCarda-MS.

* Fixed minor mistake introduced with previous code quality fix.

* Incorporated more feedback from @ScottCarda-MS.

* Update Standard/src/Arrays/Map.qs

Co-Authored-By: Alan Geller <alan.geller@microsoft.com>

* Update Standard/src/Canon/Combinators/ApplyIf.qs

Co-Authored-By: Alan Geller <alan.geller@microsoft.com>

* Update Standard/src/Canon/Combinators/ApplyIf.qs

Co-Authored-By: Alan Geller <alan.geller@microsoft.com>

* Update Standard/src/Canon/Combinators/ApplyIf.qs

Co-Authored-By: Alan Geller <alan.geller@microsoft.com>

* Update Standard/src/Arithmetic/Integer.qs

Co-Authored-By: Alan Geller <alan.geller@microsoft.com>

* Update Standard/src/Arithmetic/Integer.qs

Co-Authored-By: Alan Geller <alan.geller@microsoft.com>

* Update Standard/src/Canon/Combinators/ApplyIf.qs

Co-Authored-By: Alan Geller <alan.geller@microsoft.com>

* Update Standard/src/Arithmetic/Integer.qs

Co-Authored-By: Alan Geller <alan.geller@microsoft.com>

* Update Standard/src/Arithmetic/Integer.qs

Co-Authored-By: Alan Geller <alan.geller@microsoft.com>

* Update Standard/src/Arithmetic/Integer.qs

Co-Authored-By: Alan Geller <alan.geller@microsoft.com>

* Update Standard/src/Arithmetic/Integer.qs

Co-Authored-By: Alan Geller <alan.geller@microsoft.com>

* Addressing feedback, lots of indentation fixes.

* Deprecate the stack data structure.

* Slight improvements to phase est operations.

* Add missing characteristics to CNOTChainTarget.

* CCNOTChainTarget → ApplyCNOTChainWithTarget

* Workaround for kata oracle counting.

Co-authored-by: Alan Geller <alan.geller@microsoft.com>
2020-01-15 12:14:02 -08:00
Chris Granade 3e1e4619e6
Simplify gradient estimation and classifier structure generation (#200)
* Clarify the restriction on the number of bits for IntAsBoolArray (#171)

* Clarify the restriction on the number of bits for IntAsBoolArray

This should fix #166 by providing a more specific error message.

* Update Standard/src/Convert/Convert.qs

Co-Authored-By: Chris Granade <chgranad@microsoft.com>

* Allow to have bits = 0

Looks like our tests assume that number = 0 with bits = 0 is a valid scenario; updating the change to account for that

* Package updates (#188)

* Quantum AND gates (a.k.a. CCNOT with constant target) (#186)

* Two AND gate implementations.

* Added test case.

* Formatting.

* Code formatting.

* Update Standard/src/Canon/And.qs

Co-Authored-By: Chris Granade <chgranad@microsoft.com>

* Assertion for 0-target.

* Added DOI to references.

* Named application for CCNOTop.

* Rename operations.

* Add Test attribute.

* Add links to arXiv.

* Rename operations.

* Better assertion for 0-target.

* Fix bug in LowDepthAnd.

* Docs.

* Doc string convention.

* Controlled variant for `ApplyAnd`.

* Controlled AndLowDepth.

* Adjoint Controlled LowDepthAnd.

* References.

* Simplify code.

* Apply suggestions from code review

Co-Authored-By: Chris Granade <chgranad@microsoft.com>

* Integrate comment.

* Removed comment ref to IncrementByIntegerPhaseLE (#189)

There appears to be no function IncrementByIntegerPhaseLE, and I guess it is covered by ApplyLEOperationOnPhaseLE.

Co-authored-by: Chris Granade <cgranade@gmail.com>

* New Hadamard and SWAP test operations. (#196)

* First work on Hadamard and SWAP test operations.

* (c) header and typo fix.

* Fixed typo with placement of phase shift.

* Put public operations above private.

* Added tests for new operations.

* Added API documentation comments.

* Newline at end of file.

* Refactor AA namespace to use Q# style guide (#197)

* Began simplifying AA interface.

* Expose traditional AA as new public operation.

* Removed rest of "AmpAmp" prefix.

* Resolve deprecation warning.

* Begin moving classifier structure creation to Q#.

* Moving example datasets into new namespace.

* Fix datasets used in layered structure demo.

* Fixed bug with cyclic entangling layer.

* Use new Hadamard test operation to simplify grad est.

* Simplify input encoder logic.

* Removed layer construction methods moved out to Q#.

* Revised name of approximate input encoder.

* Removed unused interop library.

* Update pack script for new layout.

* Addressing feedback.

Co-authored-by: Mariia Mykhailova <michaylova@gmail.com>
Co-authored-by: bettinaheim <34236215+bettinaheim@users.noreply.github.com>
Co-authored-by: Mathias Soeken <mathias.soeken@gmail.com>
Co-authored-by: numpde <21158052+numpde@users.noreply.github.com>
2020-01-13 11:39:44 -08:00
Andres Paz 866f2905cc
Build pipeline tweaks (#202) 2020-01-08 23:15:16 -08:00
Chris Granade 67cd36914e
Update QML feature to master. (#198)
* Clarify the restriction on the number of bits for IntAsBoolArray (#171)

* Clarify the restriction on the number of bits for IntAsBoolArray

This should fix #166 by providing a more specific error message.

* Update Standard/src/Convert/Convert.qs

Co-Authored-By: Chris Granade <chgranad@microsoft.com>

* Allow to have bits = 0

Looks like our tests assume that number = 0 with bits = 0 is a valid scenario; updating the change to account for that

* Package updates (#188)

* Quantum AND gates (a.k.a. CCNOT with constant target) (#186)

* Two AND gate implementations.

* Added test case.

* Formatting.

* Code formatting.

* Update Standard/src/Canon/And.qs

Co-Authored-By: Chris Granade <chgranad@microsoft.com>

* Assertion for 0-target.

* Added DOI to references.

* Named application for CCNOTop.

* Rename operations.

* Add Test attribute.

* Add links to arXiv.

* Rename operations.

* Better assertion for 0-target.

* Fix bug in LowDepthAnd.

* Docs.

* Doc string convention.

* Controlled variant for `ApplyAnd`.

* Controlled AndLowDepth.

* Adjoint Controlled LowDepthAnd.

* References.

* Simplify code.

* Apply suggestions from code review

Co-Authored-By: Chris Granade <chgranad@microsoft.com>

* Integrate comment.

* Removed comment ref to IncrementByIntegerPhaseLE (#189)

There appears to be no function IncrementByIntegerPhaseLE, and I guess it is covered by ApplyLEOperationOnPhaseLE.

Co-authored-by: Chris Granade <cgranade@gmail.com>

* New Hadamard and SWAP test operations. (#196)

* First work on Hadamard and SWAP test operations.

* (c) header and typo fix.

* Fixed typo with placement of phase shift.

* Put public operations above private.

* Added tests for new operations.

* Added API documentation comments.

* Newline at end of file.

* Refactor AA namespace to use Q# style guide (#197)

* Began simplifying AA interface.

* Expose traditional AA as new public operation.

* Removed rest of "AmpAmp" prefix.

* Resolve deprecation warning.

* Switching to using the new Sdk (#194)

* Minor doc fixes (#190)

* Minor doc fixes

* Minor doc cleanup

There are probably still some unstated assumptions on the algorithms.

* Add "# Description" for MultiplyByModularInteger

...because there is inline math.

Co-Authored-By: Chris Granade <cgranade@gmail.com>

* "unitary operation" instead of "unitary operator"

Co-Authored-By: Chris Granade <cgranade@gmail.com>

* Add "# Description", remove refs in "# Summary"

Co-authored-by: Chris Granade <cgranade@gmail.com>

* Fix build by updating QML projects to use SDK.

Co-authored-by: Mariia Mykhailova <michaylova@gmail.com>
Co-authored-by: bettinaheim <34236215+bettinaheim@users.noreply.github.com>
Co-authored-by: Mathias Soeken <mathias.soeken@gmail.com>
Co-authored-by: numpde <21158052+numpde@users.noreply.github.com>
2020-01-08 13:56:24 -08:00
numpde f2bb611105 Minor doc fixes (#190)
* Minor doc fixes

* Minor doc cleanup

There are probably still some unstated assumptions on the algorithms.

* Add "# Description" for MultiplyByModularInteger

...because there is inline math.

Co-Authored-By: Chris Granade <cgranade@gmail.com>

* "unitary operation" instead of "unitary operator"

Co-Authored-By: Chris Granade <cgranade@gmail.com>

* Add "# Description", remove refs in "# Summary"

Co-authored-by: Chris Granade <cgranade@gmail.com>
2020-01-06 16:44:57 -08:00
bettinaheim 1e645cc7ed
Switching to using the new Sdk (#194) 2020-01-03 22:28:16 -08:00
Chris Granade f1bd9d272d
Refactor AA namespace to use Q# style guide (#197)
* Began simplifying AA interface.

* Expose traditional AA as new public operation.

* Removed rest of "AmpAmp" prefix.

* Resolve deprecation warning.
2020-01-02 13:38:14 -08:00
Chris Granade 38120f20de Use new UDTs to consolidate and simplify training / validation API. (#187)
* Begin simplifying training API.

* Fix for TrainQcccSequential.

* Simplify OneStochasticTrainingEpoch.

* Simplified training API a little more.

* Remove unused operation.

* Started Chunks function.

* Began removing ExtractMiniBatch.

* Simplify training API with new SequentialModel UDT.

* Further consolidate APIs.

* Consolidated training and classification APIs further.

* Fixed bug in Chunks.

* Regression test for prev commit.

* Make internal implementation of sequential model trainer private.

* Make APIs more uniform.

* Added new array function to simplify Misclassifications.

* Remove ExtractMiniBatch.

* Removed deprecated operations.

* Fix type in Examples.

* More progress removing private fns and ops from public API.

* Further consolidated API surface.

* Addressing feedback.
2020-01-02 12:36:35 -08:00
Chris Granade 39358f70b7
New Hadamard and SWAP test operations. (#196)
* First work on Hadamard and SWAP test operations.

* (c) header and typo fix.

* Fixed typo with placement of phase shift.

* Put public operations above private.

* Added tests for new operations.

* Added API documentation comments.

* Newline at end of file.
2020-01-02 12:23:36 -08:00
numpde a01973adf9 Removed comment ref to IncrementByIntegerPhaseLE (#189)
There appears to be no function IncrementByIntegerPhaseLE, and I guess it is covered by ApplyLEOperationOnPhaseLE.

Co-authored-by: Chris Granade <cgranade@gmail.com>
2019-12-30 16:59:42 -08:00
Mathias Soeken 6c9561ac81 Quantum AND gates (a.k.a. CCNOT with constant target) (#186)
* Two AND gate implementations.

* Added test case.

* Formatting.

* Code formatting.

* Update Standard/src/Canon/And.qs

Co-Authored-By: Chris Granade <chgranad@microsoft.com>

* Assertion for 0-target.

* Added DOI to references.

* Named application for CCNOTop.

* Rename operations.

* Add Test attribute.

* Add links to arXiv.

* Rename operations.

* Better assertion for 0-target.

* Fix bug in LowDepthAnd.

* Docs.

* Doc string convention.

* Controlled variant for `ApplyAnd`.

* Controlled AndLowDepth.

* Adjoint Controlled LowDepthAnd.

* References.

* Simplify code.

* Apply suggestions from code review

Co-Authored-By: Chris Granade <chgranad@microsoft.com>

* Integrate comment.
2019-12-18 17:47:55 -08:00
Chris Granade f7be904516
Update QML feature branch with latest master. (#191)
* Clarify the restriction on the number of bits for IntAsBoolArray (#171)

* Clarify the restriction on the number of bits for IntAsBoolArray

This should fix #166 by providing a more specific error message.

* Update Standard/src/Convert/Convert.qs

Co-Authored-By: Chris Granade <chgranad@microsoft.com>

* Allow to have bits = 0

Looks like our tests assume that number = 0 with bits = 0 is a valid scenario; updating the change to account for that

* Package updates (#188)

* Updated sourcelink on QML to match new version.
2019-12-17 13:48:26 -08:00
bettinaheim d746df20ce
Package updates (#188) 2019-12-12 20:27:22 -08:00
Chris Granade c10eea4216
Consolidate exact and approximate multiplexing logic. (#184)
* Consolidated exact and approximate MultiplexZ.

* Consolidate exact and approx ApplyDiagonalUnitary

* Finished consolidating multiplexers.

* Code cleanup, inclusive language.

* Whitespace fix and name clarification.

* Consolidated arbitrary state preparation.

* Slight cleanup.

* API documentation comments.
2019-12-09 15:39:55 -08:00
Chris Granade 0e3b5f9eee
Add placeholder for QML unit tests. (#185)
* Add placeholder for QML unit tests.

* Add copyright header.

* Trigger build on feature work.
2019-12-06 17:43:23 -08:00
Chris Granade cae0050a86
Bounded univariate minimization (#183)
* Added comments

* Test case for new univariate optimizer.

* Update to latest alpha.

* Fix order of interval edges.

* Fix parabola test.

* Use new minimization to simplify training logic.

* Used new optimization function to simplify bias search.

* Revert to public alphas.

* Temporarily revert use of Test attribute.
2019-12-04 10:41:03 -08:00
Mariia Mykhailova 551acb8c6c Clarify the restriction on the number of bits for IntAsBoolArray (#171)
* Clarify the restriction on the number of bits for IntAsBoolArray

This should fix #166 by providing a more specific error message.

* Update Standard/src/Convert/Convert.qs

Co-Authored-By: Chris Granade <chgranad@microsoft.com>

* Allow to have bits = 0

Looks like our tests assume that number = 0 with bits = 0 is a valid scenario; updating the change to account for that
2019-12-03 12:04:10 -06:00
Chris Granade 1423acaf84
Simplify classification API. (#179)
* Removed unused "adapter" operations.

* Removed unused operation.

* Consolidated two APIs for estimating classification probabilities.

* Removed old version of CircuitResult operation.

* Simplified classification operation slightly.

* Eliminated unused operation.

* Clarified InferredLabel, updated argument order to respect currying.

* Moved bias update into training, fixed bug.

* Renamed operations to estimate classification probabilities.

* Simplify TallyHitsMisses.

* Trivial commit.

* Addressing @bettinaheim's feedback.
2019-11-26 15:51:33 -05:00
Christopher Granade 22a3dd59e5 Fix merge conflict. 2019-11-22 15:25:15 -08:00
Christopher Granade 7e4440a92b Merge branch 'feature/qml' of github.com:Microsoft/QuantumLibraries into feature/qml 2019-11-22 13:38:10 -08:00
Chris Granade 929478b921
Add repeated operation (#153) (#180)
* Drafted new apply ops

* Fixed docs

* Fixed minor bugs

* Added Permutation function + helper Arrays + Claim functions

* Added Adj + Ctl and set csproj back to generating docs

* Added tests

* Fixed test errors

* Updated code from comments; moved PermuteQubits to CommonGates

* Fixed minor bugs

* Apply suggestions from code review

Co-Authored-By: Chris Granade <cgranade@gmail.com>

* Added some fixes from changes

* Added most recommendations from Mathias

* Added example to ApplySeriesOfOps

* Added new examples

* Added PermuteQubits example

* Changed Swap Order to be appending to an array, added test for it

* Updated ApplyOpRepeatedlyOver Docs

* Added Mathias' comments

* Reverted csproj file

* Renamed TupleArrayAsNestedArray
2019-11-22 13:35:59 -08:00
Christopher Granade 3201cde63d Merge branch 'master' into feature/qml 2019-11-22 11:25:20 -08:00
Christopher Kang 8ff71150ed Add repeated operation (#153)
* Drafted new apply ops

* Fixed docs

* Fixed minor bugs

* Added Permutation function + helper Arrays + Claim functions

* Added Adj + Ctl and set csproj back to generating docs

* Added tests

* Fixed test errors

* Updated code from comments; moved PermuteQubits to CommonGates

* Fixed minor bugs

* Apply suggestions from code review

Co-Authored-By: Chris Granade <cgranade@gmail.com>

* Added some fixes from changes

* Added most recommendations from Mathias

* Added example to ApplySeriesOfOps

* Added new examples

* Added PermuteQubits example

* Changed Swap Order to be appending to an array, added test for it

* Updated ApplyOpRepeatedlyOver Docs

* Added Mathias' comments

* Reverted csproj file

* Renamed TupleArrayAsNestedArray
2019-11-22 10:29:39 -08:00
Chris Granade 3e0517d6e2
Merge branch 'master' into feature/qml 2019-11-22 10:28:14 -08:00
Chris Granade 837c896844 Added initial pre-commit settings. (#92) 2019-11-21 16:24:31 -08:00
Chris Granade 20529cfce2
Merge branch 'master' into feature/qml 2019-11-20 15:23:24 -08:00
Chris Granade 6d23ce3b47
Unit tests for new operations and functions in M.Q.Standard used to support QML (#177)
* Started writing unit tests for new standard library functionality.

* Testing new array fn.

* Fixes to Runtime project.

* Added more tests.

* Added tesets for rest of functionality added to M.Q.Std.
2019-11-20 15:21:13 -08:00