Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release 0.2.3 #21

Merged
merged 17 commits into from Oct 27, 2023
Merged

Release 0.2.3 #21

merged 17 commits into from Oct 27, 2023

Conversation

a-barlow
Copy link
Owner

See CHANGELOG.md for details.

A product state struct can now be converted to a superposition struct
simply by calling it's method `to_super_position()`.

This allows for easier manipulation in constructing custom functions.
For example, if a product state is altered by flipping a binary digit,
then the custom function needs to return a superposition. This now makes
it far easier to do.

Signed-off-by: Andrew Barlow <a.barlow.dev@gmail.com>
Adds a method to `ProductState` that inverts a qubit given the position,
where the 0 position is the left most qubit and increments from left to
right.

This allows for easier manipulations of ProductStates for custom
functions.

Signed-off-by: Andrew Barlow <a.barlow.dev@gmail.com>
Added the new features to the CHANGELOG.md.

Signed-off-by: Andrew Barlow <a.barlow.dev@gmail.com>
It used to have the 'To' label, but now replaced with the more natural
'X', for the Not gate. The 'Swap' gate was also shortened to 'Sw'.

Signed-off-by: Andrew Barlow <a.barlow.dev@gmail.com>
For multi-controlled gates which have vertical wires passing over
horizontal, instead of giving the illusion of them passing under, they
are now 'connected'. This is less harsh to the eyes for big circuit
diagrams.

Signed-off-by: Andrew Barlow <a.barlow.dev@gmail.com>
This is more in keeping with Rust standard library. Will have to change
other functions, however that will be a breaking change and not quite
ready to do that yet.

Signed-off-by: Andrew Barlow <a.barlow.dev@gmail.com>
Bumped Rust version from 1.72.1 to 1.73.0.

Signed-off-by: Andrew Barlow <a.barlow.dev@gmail.com>
Adds an external test. This test is an algorithm for confirming a row of
3x3 sudoku. For the testing practicality, it is a 10 qubit circuit with
two custom functions and several hadamard gates. This should also
compile and run quickly enough, in addition to having enough complexity,
to be regarded as a good practical test of quantr.

Signed-off-by: Andrew Barlow <a.barlow.dev@gmail.com>
Signed-off-by: Andrew Barlow <a.barlow.dev@gmail.com>
Added many examples to the methods documentation in Printer and Circuit
structs.

Chose to deprecate flush as there's no way to use it due to Rust
lifetimes. For now, this will be removed next major update.

Signed-off-by: Andrew Barlow <a.barlow.dev@gmail.com>
Added the complete grovers code in the quantr-book into the examples
folder. Plan is to add more examples later.

Edited the changelog to reflect this change too.

Signed-off-by: Andrew Barlow <a.barlow.dev@gmail.com>
Signed-off-by: Andrew Barlow <a.barlow.dev@gmail.com>
Signed-off-by: Andrew Barlow <a.barlow.dev@gmail.com>
Added the addition of S and T gates to the changelog.md.

Signed-off-by: Andrew Barlow <a.barlow.dev@gmail.com>
@a-barlow a-barlow merged commit efd285b into master Oct 27, 2023
1 check passed
@a-barlow a-barlow deleted the release-0.2.3 branch October 27, 2023 13:06
@a-barlow a-barlow mentioned this pull request Oct 27, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant