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

[labs.dla 5] All Cartan involutions + Cartan subalgebra #6396

Merged
merged 468 commits into from
Dec 11, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
468 commits
Select commit Hold shift + click to select a range
0599554
Merge branch 'lie_closure_dense' of https://github.com/PennyLaneAI/pe…
Qottmann Nov 11, 2024
f5371d7
Merge branch 'dense_util' of https://github.com/PennyLaneAI/pennylane…
Qottmann Nov 11, 2024
6bcdb25
Merge branch 'structure_constants_dense' of https://github.com/PennyL…
Qottmann Nov 13, 2024
3c9399c
merge
Qottmann Nov 13, 2024
eb6f5a4
merge
Qottmann Nov 13, 2024
c81d561
Merge branch 'involutions' of https://github.com/PennyLaneAI/pennylan…
Qottmann Nov 13, 2024
acbd34e
remove project
Qottmann Nov 13, 2024
3e4c62f
black
Qottmann Nov 13, 2024
c34614b
black
Qottmann Nov 13, 2024
2f69449
formatting
Qottmann Nov 13, 2024
aa367a6
merge
Qottmann Nov 13, 2024
93b2810
changelog
Qottmann Nov 14, 2024
75e5e14
subbasis_length
Qottmann Nov 14, 2024
a2af092
mathfrak g
Qottmann Nov 14, 2024
05b3e5b
typing
Qottmann Nov 14, 2024
dbe4c4e
Apply suggestions from code review
Qottmann Nov 14, 2024
bf97ba2
Merge branch 'lie_closure_dense' of https://github.com/PennyLaneAI/pe…
Qottmann Nov 14, 2024
1fabfc7
non-orthogonal stuff and basis changes
dwierichs Nov 14, 2024
b5d84f6
comment contract
Qottmann Nov 14, 2024
b336010
Merge branch 'lie_closure_dense' of https://github.com/PennyLaneAI/pe…
Qottmann Nov 14, 2024
b92163d
Merge branch 'dense_util' of https://github.com/PennyLaneAI/pennylane…
Qottmann Nov 14, 2024
a88db10
Apply suggestions from code review
Qottmann Nov 14, 2024
633589f
Merge branch 'structure_constants_dense' of https://github.com/PennyL…
Qottmann Nov 14, 2024
6132e51
update normalization
Qottmann Nov 14, 2024
50b7a93
orthonormalize function
Qottmann Nov 14, 2024
b5f4137
orthonormalize
Qottmann Nov 14, 2024
6903eff
add example from code review
Qottmann Nov 14, 2024
c03afe1
trace inner product
Qottmann Nov 14, 2024
b3bf572
consistency checks
Qottmann Nov 14, 2024
cf92b3c
trace inner product in test
Qottmann Nov 14, 2024
7ee273a
attempt at orthonormalizing op_to_adjvec
dwierichs Nov 14, 2024
235acdc
Merge branch 'master' into lie_closure_dense
dwierichs Nov 14, 2024
ad9cbdd
Merge branch 'lie_closure_dense' into dense_util
dwierichs Nov 14, 2024
d5d9add
Merge branch 'dense_util' into structure_constants_dense
dwierichs Nov 14, 2024
90f62c8
merge
dwierichs Nov 14, 2024
a9dc94b
merge
dwierichs Nov 14, 2024
3b72982
merge
dwierichs Nov 14, 2024
61309e2
is_orthogonal in qml.structure_constants. tests. changelog
dwierichs Nov 14, 2024
c7006f7
indent
dwierichs Nov 14, 2024
2b60e0b
Merge branch 'dense_util' into structure_constants_dense
dwierichs Nov 14, 2024
9bbe666
Merge branch 'structure_constants_dense' into cartan
dwierichs Nov 14, 2024
710c6e3
Merge branch 'cartan' into involutions
dwierichs Nov 14, 2024
6f4202d
Merge branch 'involutions' into csa
dwierichs Nov 14, 2024
04b6780
extend tests, slight polish of methods
dwierichs Nov 14, 2024
6d7662c
fix normalization in `structure_constants_dense` and its tests
dwierichs Nov 14, 2024
c8714b5
Merge branch 'structure_constants_dense' into cartan
dwierichs Nov 14, 2024
71ff7c4
merge
dwierichs Nov 14, 2024
a3d9afd
merge
dwierichs Nov 14, 2024
2c67f6b
move adjvec_to_op op_to_adjvec basis_change_ad_rep to dense_util
dwierichs Nov 15, 2024
35a786c
adjvec_to_op, op_to_adjvec, tests for both
dwierichs Nov 15, 2024
fd19da5
add change_basis_ad_rep. tmp!
dwierichs Nov 15, 2024
bebb44f
addition completed
dwierichs Nov 15, 2024
1f69a90
Merge branch 'structure_constants_dense' into cartan
dwierichs Nov 15, 2024
e342326
merge
dwierichs Nov 15, 2024
1742df5
merge
dwierichs Nov 15, 2024
0b886ad
fix validation
dwierichs Nov 15, 2024
ee1cbfe
Merge branch 'dense_util' into structure_constants_dense
dwierichs Nov 15, 2024
2e6ece7
Merge branch 'structure_constants_dense' into cartan
dwierichs Nov 15, 2024
16c6099
Merge branch 'cartan' into involutions
dwierichs Nov 15, 2024
040a4b7
Merge branch 'involutions' into csa
dwierichs Nov 15, 2024
191c7b6
merge
Qottmann Nov 15, 2024
258c607
merge
Qottmann Nov 15, 2024
a602170
merge
Qottmann Nov 15, 2024
f8b2183
merge
Qottmann Nov 15, 2024
133de36
is_orthogonal -> cartan_subalgebra
dwierichs Nov 18, 2024
d5edcc5
bugfixes
dwierichs Nov 18, 2024
86f114d
Merge branch 'master' of https://github.com/PennyLaneAI/pennylane int…
Qottmann Nov 18, 2024
0334aa5
Merge branch 'dense_util' of https://github.com/PennyLaneAI/pennylane…
Qottmann Nov 18, 2024
3a9e62a
merge
Qottmann Nov 18, 2024
95a9c6c
Merge branch 'cartan' of https://github.com/PennyLaneAI/pennylane int…
Qottmann Nov 18, 2024
013c365
merge
Qottmann Nov 18, 2024
ba6a932
merge
Qottmann Nov 18, 2024
8e5d91b
merge
Qottmann Nov 18, 2024
1dc3bf0
update normalization strategy and tests
dwierichs Nov 18, 2024
92e0bf7
Merge branch 'dense_util' of github.com:PennyLaneAI/pennylane into de…
dwierichs Nov 18, 2024
6655565
merge
dwierichs Nov 18, 2024
7113c51
trace inner product
dwierichs Nov 18, 2024
75bb9eb
use tip
dwierichs Nov 18, 2024
5f783d9
merge
dwierichs Nov 18, 2024
6e7c550
Merge branch 'structure_constants_dense' into cartan
dwierichs Nov 18, 2024
f078b44
merge
dwierichs Nov 18, 2024
f27f922
move changes from atop down
Qottmann Nov 18, 2024
cde24bf
move downwards
Qottmann Nov 18, 2024
fecadb0
move down
Qottmann Nov 18, 2024
dcfe8f6
Merge branch 'master' of https://github.com/PennyLaneAI/pennylane int…
Qottmann Nov 18, 2024
0100842
update init
Qottmann Nov 18, 2024
8c956d8
merge
Qottmann Nov 18, 2024
1870c86
Merge branch 'structure_constants_dense' of https://github.com/PennyL…
Qottmann Nov 18, 2024
7c1b1ad
merge
Qottmann Nov 18, 2024
860a1a2
merge
Qottmann Nov 18, 2024
70cdd0a
pylint
Qottmann Nov 18, 2024
e24fcec
move test down
Qottmann Nov 18, 2024
1077845
Merge branch 'structure_constants_dense' of https://github.com/PennyL…
Qottmann Nov 18, 2024
95b53c6
Merge branch 'cartan' of https://github.com/PennyLaneAI/pennylane int…
Qottmann Nov 18, 2024
653e073
Merge branch 'cartan' of github.com:PennyLaneAI/pennylane into cartan
dwierichs Nov 18, 2024
03b2339
Merge branch 'cartan' into involutions
dwierichs Nov 18, 2024
5844740
pauli coefficients docs
Qottmann Nov 20, 2024
eef3ab7
docs trace inner product
Qottmann Nov 20, 2024
0e4972d
adjvec docs
Qottmann Nov 20, 2024
eec1ba2
real outputs.
dwierichs Nov 20, 2024
c155ae8
Merge branch 'dense_util' of github.com:PennyLaneAI/pennylane into de…
dwierichs Nov 20, 2024
418b6e2
Merge branch 'dense_util' into structure_constants_dense
dwierichs Nov 20, 2024
2a4a607
Merge branch 'structure_constants_dense' into cartan
dwierichs Nov 20, 2024
ebed846
Merge branch 'cartan' into involutions
dwierichs Nov 20, 2024
9a6de29
update doc
Qottmann Nov 22, 2024
3085335
Merge branch 'master' of https://github.com/PennyLaneAI/pennylane int…
Qottmann Nov 22, 2024
c07d3b0
Merge branch 'dense_util' of https://github.com/PennyLaneAI/pennylane…
Qottmann Nov 22, 2024
5464d66
docs typo
Qottmann Nov 22, 2024
eb5dd29
Apply suggestions from code review
Qottmann Nov 24, 2024
65fd3d2
Merge branch 'master' into dense_util
Qottmann Nov 24, 2024
14773a8
changelog cleanup
Qottmann Nov 25, 2024
8f9dcc6
Apply suggestions from code review
Qottmann Nov 25, 2024
2313c50
Merge branch 'structure_constants_dense' of https://github.com/PennyL…
Qottmann Nov 25, 2024
d9246a9
Merge branch 'master' of https://github.com/PennyLaneAI/pennylane int…
Qottmann Nov 25, 2024
f43b29e
revert change
Qottmann Nov 25, 2024
46ba1fa
fix bug
Qottmann Nov 25, 2024
c2c393c
docs
Qottmann Nov 25, 2024
0986eb0
broadcasting example
Qottmann Nov 25, 2024
d2d6cc1
Merge branch 'dense_util' of https://github.com/PennyLaneAI/pennylane…
Qottmann Nov 25, 2024
aee02f1
bugfix
Qottmann Nov 25, 2024
91ed6ff
changelog
Qottmann Nov 25, 2024
7b7666b
changelog
Qottmann Nov 25, 2024
385bbe7
Merge branch 'dense_util' of https://github.com/PennyLaneAI/pennylane…
Qottmann Nov 25, 2024
f8a5362
changelog
Qottmann Nov 25, 2024
c7e609b
improve and comment test cases
dwierichs Nov 25, 2024
b3bca16
trace inner product
Qottmann Nov 25, 2024
ff32011
lexicographic ordering
Qottmann Nov 25, 2024
6178002
Merge branch 'dense_util' of https://github.com/PennyLaneAI/pennylane…
Qottmann Nov 25, 2024
2e02997
Merge branch 'master' of https://github.com/PennyLaneAI/pennylane int…
Qottmann Nov 25, 2024
ab43fdd
batched_pauli_decompose
Qottmann Nov 25, 2024
f8f5aab
batched_pauli_decompose
Qottmann Nov 25, 2024
f7e0ece
merge
Qottmann Nov 25, 2024
6e9f829
merge
Qottmann Nov 25, 2024
1a2d9a4
merge
Qottmann Nov 25, 2024
4b9827e
Merge branch 'cartan' of https://github.com/PennyLaneAI/pennylane int…
Qottmann Nov 25, 2024
83453b2
Merge branch 'structure_constants_dense' of https://github.com/PennyL…
Qottmann Nov 25, 2024
c0ef7b5
merge
Qottmann Nov 25, 2024
f781a2e
Merge branch 'involutions' of https://github.com/PennyLaneAI/pennylan…
Qottmann Nov 25, 2024
4b59086
Merge branch 'master' of https://github.com/PennyLaneAI/pennylane int…
Qottmann Nov 26, 2024
425ea80
Apply suggestions from code review
Qottmann Nov 26, 2024
97faf7e
Merge branch 'dense_util' of https://github.com/PennyLaneAI/pennylane…
Qottmann Nov 26, 2024
97aab77
batched search and replace fix
Qottmann Nov 26, 2024
24c20de
merge
Qottmann Nov 26, 2024
796c7b1
Apply suggestions from code review
Qottmann Nov 26, 2024
c7e0952
Merge branch 'structure_constants_dense' of https://github.com/PennyL…
Qottmann Nov 26, 2024
8db9fa0
Update pennylane/labs/dla/dense_util.py
Qottmann Nov 26, 2024
afa6d1e
revert change
Qottmann Nov 26, 2024
c95cdf7
developer comments
Qottmann Nov 26, 2024
7d2ebdb
change basis ad rep doc
Qottmann Nov 26, 2024
c8e2945
trigger
Qottmann Nov 26, 2024
4d850a9
Merge branch 'dense_util' of https://github.com/PennyLaneAI/pennylane…
Qottmann Nov 26, 2024
ce17212
merge
Qottmann Nov 26, 2024
9212a4e
Merge branch 'structure_constants_dense' of https://github.com/PennyL…
Qottmann Nov 26, 2024
33cff82
examples
Qottmann Nov 26, 2024
817d641
examples
Qottmann Nov 26, 2024
aa8db33
Merge branch 'structure_constants_dense' of https://github.com/PennyL…
Qottmann Nov 26, 2024
aae5ebd
Merge branch 'master' into structure_constants_dense
dwierichs Nov 26, 2024
7cdc9e7
Merge branch 'master' of https://github.com/PennyLaneAI/pennylane int…
Qottmann Nov 28, 2024
27e9095
merge fix: remove 2nd utility functions section
Qottmann Nov 28, 2024
c3b054d
Merge branch 'structure_constants_dense' of https://github.com/PennyL…
Qottmann Nov 28, 2024
47d77d0
merge
Qottmann Nov 28, 2024
ed2da27
merge
Qottmann Nov 28, 2024
2a9bfa3
changelog
Qottmann Nov 28, 2024
8adad1e
docstrings
Qottmann Nov 28, 2024
371ea4c
examples
Qottmann Nov 28, 2024
c806255
examples
Qottmann Nov 28, 2024
bf7a0d3
examples
Qottmann Nov 28, 2024
fafff4c
check cartan tools
Qottmann Nov 28, 2024
bac343a
examples
Qottmann Nov 28, 2024
74126ff
init
Qottmann Nov 28, 2024
f354062
examples
Qottmann Nov 28, 2024
d5c2deb
examples
Qottmann Nov 28, 2024
ef1d6fe
examples
Qottmann Nov 28, 2024
fd7e6f5
changelog
Qottmann Nov 28, 2024
17da10a
sphinx
Qottmann Nov 28, 2024
1cd3c79
trailing whitespaces
Qottmann Nov 28, 2024
bb73946
Apply suggestions from code review
Qottmann Nov 29, 2024
33c0bb9
Merge branch 'master' of https://github.com/PennyLaneAI/pennylane int…
Qottmann Nov 29, 2024
bc6103e
fix test
Qottmann Nov 29, 2024
545dbc2
cartan_decompisition -> cartan_decomp
Qottmann Nov 29, 2024
7a9b58a
changelog
Qottmann Nov 29, 2024
acb2ea5
doc
Qottmann Nov 29, 2024
3db0324
early exit check_commutation
Qottmann Nov 29, 2024
6cc9b2b
add test for check_cartan_decomp
Qottmann Nov 29, 2024
4adbd64
remove simple Lie algebra
Qottmann Nov 29, 2024
ec35567
remove align
Qottmann Nov 29, 2024
1fe256b
Update pennylane/labs/dla/cartan.py
Qottmann Nov 29, 2024
3173061
Merge branch 'cartan' of https://github.com/PennyLaneAI/pennylane int…
Qottmann Nov 29, 2024
49b4c0c
Merge branch 'master' of https://github.com/PennyLaneAI/pennylane int…
Qottmann Nov 29, 2024
eb8ea9e
fix latex
Qottmann Nov 29, 2024
5afd23c
Apply suggestions from code review
Qottmann Nov 29, 2024
69c6e59
[ci skip]
Qottmann Nov 29, 2024
68aff6c
doc
Qottmann Nov 29, 2024
98f09ca
type hints
Qottmann Nov 29, 2024
2e9c9a2
type hints
Qottmann Nov 29, 2024
28436fe
type hints
Qottmann Nov 29, 2024
8e7b901
docs warnings
Qottmann Nov 29, 2024
3893336
merge and rename cartan_decomp
Qottmann Nov 29, 2024
a897914
type hints
Qottmann Nov 29, 2024
185afbd
merge
Qottmann Nov 29, 2024
13545de
Merge branch 'master' into cartan
Qottmann Dec 4, 2024
2f9bc9a
Merge branch 'master' of https://github.com/PennyLaneAI/pennylane int…
Qottmann Dec 4, 2024
40150ee
fix sphinx
Qottmann Dec 4, 2024
62f249c
Merge branch 'cartan' of https://github.com/PennyLaneAI/pennylane int…
Qottmann Dec 4, 2024
b3a5337
Merge branch 'master' of https://github.com/PennyLaneAI/pennylane int…
Qottmann Dec 5, 2024
b0cbfa4
return doc cartan_decomp
Qottmann Dec 5, 2024
bdb6175
Merge branch 'cartan' of https://github.com/PennyLaneAI/pennylane int…
Qottmann Dec 5, 2024
a2f2cf5
docs
Qottmann Dec 5, 2024
e8e0555
Merge branch 'cartan' of https://github.com/PennyLaneAI/pennylane int…
Qottmann Dec 5, 2024
e7d25de
[ci skip]
Qottmann Dec 5, 2024
4a35daf
merge
Qottmann Dec 5, 2024
562dafd
merge
Qottmann Dec 5, 2024
a416baa
docs
Qottmann Dec 5, 2024
09408ec
re-order
Qottmann Dec 5, 2024
733324f
init
Qottmann Dec 5, 2024
3b5a1fa
fix sphinx
Qottmann Dec 5, 2024
4533c63
small theta
Qottmann Dec 5, 2024
4827286
brief description optimized for involutions
Qottmann Dec 5, 2024
86a4388
clean up changelog
Qottmann Dec 5, 2024
fc9d596
changelog
Qottmann Dec 5, 2024
c634f4a
merge
Qottmann Dec 6, 2024
eea559c
changelog reordering
Qottmann Dec 6, 2024
4fb9a69
Update pennylane/labs/dla/__init__.py
Qottmann Dec 6, 2024
5f2eada
Merge branch 'involutions' of https://github.com/PennyLaneAI/pennylan…
Qottmann Dec 6, 2024
6e88a5d
[ci skip]
Qottmann Dec 6, 2024
094ae3a
add link to canonical classification on wiki
Qottmann Dec 6, 2024
edcc04d
move concurrence and evenodd to involutions.py
Qottmann Dec 6, 2024
0306592
Apply suggestions from code review
Qottmann Dec 6, 2024
2792637
Merge branch 'involutions' of https://github.com/PennyLaneAI/pennylan…
Qottmann Dec 6, 2024
40ab0ed
black formatting
Qottmann Dec 6, 2024
e11fca4
some suggestions
dwierichs Dec 6, 2024
480b50d
khanej-glaser involution docstring
dwierichs Dec 9, 2024
0597e29
import
dwierichs Dec 9, 2024
8d39084
Apply suggestions from code review
dwierichs Dec 9, 2024
121d1c1
merge
Qottmann Dec 9, 2024
162e13a
merge
Qottmann Dec 9, 2024
98a709b
doc cartan_subalgebra
Qottmann Dec 9, 2024
0519a8c
fix link
Qottmann Dec 9, 2024
df5bec4
typo
Qottmann Dec 9, 2024
87f3010
Merge branch 'master' of https://github.com/PennyLaneAI/pennylane int…
Qottmann Dec 11, 2024
eab7192
fix return statements in docs
Qottmann Dec 11, 2024
23f7543
cartan subalgebra docs updated outputs
Qottmann Dec 11, 2024
8b35cb5
fix latex
Qottmann Dec 11, 2024
b4099b8
Update pennylane/labs/dla/cartan_subalgebra.py
Qottmann Dec 11, 2024
3a2238c
changelog
Qottmann Dec 11, 2024
9c2732d
format messed up changelog
Qottmann Dec 11, 2024
876bbbc
Merge branch 'master' of https://github.com/PennyLaneAI/pennylane int…
Qottmann Dec 11, 2024
75ea70e
apply_basis_change
dwierichs Dec 11, 2024
b545033
minor doc updates
dwierichs Dec 11, 2024
ab61ee6
Merge branch 'master' into involutions
Qottmann Dec 11, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
87 changes: 48 additions & 39 deletions doc/releases/changelog-dev.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,41 +17,41 @@
* Developers of plugin devices now have the option of providing a TOML-formatted configuration file
to declare the capabilities of the device. See [Device Capabilities](https://docs.pennylane.ai/en/latest/development/plugins.html#device-capabilities) for details.

* An internal module `pennylane.devices.capabilities` is added that defines a new `DeviceCapabilites`
data class, as well as functions that load and parse the TOML-formatted configuration files.
[(#6407)](https://github.com/PennyLaneAI/pennylane/pull/6407)
* An internal module `pennylane.devices.capabilities` is added that defines a new `DeviceCapabilites`
data class, as well as functions that load and parse the TOML-formatted configuration files.
[(#6407)](https://github.com/PennyLaneAI/pennylane/pull/6407)

```pycon
>>> from pennylane.devices.capabilities import DeviceCapabilities
>>> capabilities = DeviceCapabilities.from_toml_file("my_device.toml")
>>> isinstance(capabilities, DeviceCapabilities)
True
```
```pycon
>>> from pennylane.devices.capabilities import DeviceCapabilities
>>> capabilities = DeviceCapabilities.from_toml_file("my_device.toml")
>>> isinstance(capabilities, DeviceCapabilities)
True
```

* Devices that extends `qml.devices.Device` now has an optional class attribute `capabilities`
that is an instance of the `DeviceCapabilities` data class, constructed from the configuration
file if it exists. Otherwise, it is set to `None`.
[(#6433)](https://github.com/PennyLaneAI/pennylane/pull/6433)
* Devices that extends `qml.devices.Device` now has an optional class attribute `capabilities`
that is an instance of the `DeviceCapabilities` data class, constructed from the configuration
file if it exists. Otherwise, it is set to `None`.
[(#6433)](https://github.com/PennyLaneAI/pennylane/pull/6433)

```python
from pennylane.devices import Device
```python
from pennylane.devices import Device

class MyDevice(Device):
class MyDevice(Device):

config_filepath = "path/to/config.toml"
config_filepath = "path/to/config.toml"

...
```
```pycon
>>> isinstance(MyDevice.capabilities, DeviceCapabilities)
True
```
...
```
```pycon
>>> isinstance(MyDevice.capabilities, DeviceCapabilities)
True
```

* Default implementations of `Device.setup_execution_config` and `Device.preprocess_transforms`
are added to the device API for devices that provides a TOML configuration file and thus have
a `capabilities` property.
[(#6632)](https://github.com/PennyLaneAI/pennylane/pull/6632)
[(#6653)](https://github.com/PennyLaneAI/pennylane/pull/6653)
* Default implementations of `Device.setup_execution_config` and `Device.preprocess_transforms`
are added to the device API for devices that provides a TOML configuration file and thus have
a `capabilities` property.
[(#6632)](https://github.com/PennyLaneAI/pennylane/pull/6632)
[(#6653)](https://github.com/PennyLaneAI/pennylane/pull/6653)

* Support is added for `if`/`else` statements and `for` and `while` loops in circuits executed with `qml.capture.enabled`, via Autograph.
Autograph conversion is now used by default in `make_plxpr`, but can be skipped with the keyword arg `autograph=False`.
Expand All @@ -60,10 +60,20 @@
[(#6426)](https://github.com/PennyLaneAI/pennylane/pull/6426)
[(#6645)](https://github.com/PennyLaneAI/pennylane/pull/6645)

* New `qml.GQSP` template has been added to perform Generalized Quantum Signal Processing (GQSP).
* New `qml.GQSP` template has been added to perform Generalized Quantum Signal Processing (GQSP).
The functionality `qml.poly_to_angles` has been also extended to support GQSP.
[(#6565)](https://github.com/PennyLaneAI/pennylane/pull/6565)

* Added `unary_mapping()` function to map `BoseWord` and `BoseSentence` to qubit operators, using unary mapping.
[(#6576)](https://github.com/PennyLaneAI/pennylane/pull/6576)

* Added `binary_mapping()` function to map `BoseWord` and `BoseSentence` to qubit operators, using standard-binary mapping.
[(#6564)](https://github.com/PennyLaneAI/pennylane/pull/6564)

* New functionality to calculate angles for QSP and QSVT has been added. This includes the function `qml.poly_to_angles`
to obtain angles directly and the function `qml.transform_angles` to convert angles from one subroutine to another.
[(#6483)](https://github.com/PennyLaneAI/pennylane/pull/6483)

* Added a function `qml.trotterize` to generalize the Suzuki-Trotter product to arbitrary quantum functions.
[(#6627)](https://github.com/PennyLaneAI/pennylane/pull/6627)

Expand Down Expand Up @@ -96,32 +106,31 @@
b: ──RY(-0.17)─╰X─╰X──RY(-0.17)─┤ State
```

<h4>New `labs` module `dla` for handling dynamical Lie algebras (DLAs)</h4>
<h4>New `pennylane.labs.dla` module for handling (dynamical) Lie algebras (DLAs)</h4>

* Added a dense implementation of computing the Lie closure in a new function
`lie_closure_dense` in `pennylane.labs.dla`.
[(#6371)](https://github.com/PennyLaneAI/pennylane/pull/6371)
[(#6695)](https://github.com/PennyLaneAI/pennylane/pull/6695)

* New functionality to calculate angles for QSP and QSVT has been added. This includes the function `qml.poly_to_angles`
to obtain angles directly and the function `qml.transform_angles` to convert angles from one subroutine to another.
[(#6483)](https://github.com/PennyLaneAI/pennylane/pull/6483)

* Added a dense implementation of computing the structure constants in a new function
`structure_constants_dense` in `pennylane.labs.dla`.
[(#6376)](https://github.com/PennyLaneAI/pennylane/pull/6376)

* Added utility functions for handling dense matrices in the Lie theory context.
* Added utility functions for handling dense matrices and advanced functionality in the Lie theory context.
[(#6563)](https://github.com/PennyLaneAI/pennylane/pull/6563)
[(#6392)](https://github.com/PennyLaneAI/pennylane/pull/6392)
[(#6396)](https://github.com/PennyLaneAI/pennylane/pull/6396)

* Added a ``cartan_decomp`` function along with two standard involutions ``even_odd_involution`` and ``concurrence_involution``.
[(#6392)](https://github.com/PennyLaneAI/pennylane/pull/6392)

* Added `unary_mapping()` function to map `BoseWord` and `BoseSentence` to qubit operators, using unary mapping
[(#6576)](https://github.com/PennyLaneAI/pennylane/pull/6576);
added `binary_mapping()` function to map `BoseWord` and `BoseSentence` to qubit operators, using standard-binary mapping.
[(#6564)](https://github.com/PennyLaneAI/pennylane/pull/6564)
* Added a `recursive_cartan_decomp` function and all canonical Cartan involutions.
[(#6396)](https://github.com/PennyLaneAI/pennylane/pull/6396)
dwierichs marked this conversation as resolved.
Show resolved Hide resolved

* Added a `cartan_subalgebra` function to compute the (horizontal) Cartan subalgebra of a Cartan decomposition.
[(#6403)](https://github.com/PennyLaneAI/pennylane/pull/6403)
[(#6396)](https://github.com/PennyLaneAI/pennylane/pull/6396)


<h4>New API for Qubit Mixed</h4>
Expand Down
64 changes: 51 additions & 13 deletions pennylane/labs/dla/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,8 @@
~lie_closure_dense
~structure_constants_dense
~cartan_decomp
~recursive_cartan_decomp
~cartan_subalgebra


Utility functions
Expand All @@ -34,44 +36,80 @@
:toctree: api

~adjvec_to_op
~change_basis_ad_rep
~check_orthonormal
~check_commutation
~check_all_commuting
~check_cartan_decomp
~op_to_adjvec
~trace_inner_product
~orthonormalize
~pauli_coefficients
~batched_pauli_decompose
~trace_inner_product
~check_orthonormal
~check_commutation
~check_all_commuting
~check_cartan_decomp
~change_basis_ad_rep

Involutions
~~~~~~~~~~~

A map :math:`\theta: \mathfrak{g} \rightarrow \mathfrak{g}` from the Lie algebra :math:`\mathfrak{g}` to itself is called an involution
when it fulfills :math:`\theta(\theta(g)) = g \ \forall g \in \mathfrak{g}` and is compatible with commutators,
:math:`[\theta(g), \theta(g')]=\theta([g, g']).` Involutions are used to construct a :func:`~cartan_decomp`. There are seven canonical
Cartan involutions of real simple Lie algebras (``AI, AII, AIII, BDI, CI, CII, DIII``),
see `Wikipedia <https://en.wikipedia.org/wiki/Symmetric_space#Classification_result>`__.
In addition, there is a canonical Cartan involution for real semisimple algebras that consist of
two isomorphic simple components (``ClassB``), see `here <https://en.wikipedia.org/wiki/Symmetric_space#Classification_scheme>`__.

.. currentmodule:: pennylane.labs.dla

.. autosummary::
:toctree: api

~even_odd_involution
~concurrence_involution
~khaneja_glaser_involution
~AI
~AII
~AIII
~BDI
~CI
~CII
~DIII
~ClassB


"""

from .lie_closure_dense import lie_closure_dense
from .structure_constants_dense import structure_constants_dense
from .cartan import cartan_decomp, even_odd_involution, concurrence_involution
from .cartan import (
cartan_decomp,
recursive_cartan_decomp,
)
from .dense_util import (
adjvec_to_op,
change_basis_ad_rep,
check_all_commuting,
check_cartan_decomp,
check_commutation,
check_orthonormal,
pauli_coefficients,
batched_pauli_decompose,
orthonormalize,
check_orthonormal,
trace_inner_product,
adjvec_to_op,
op_to_adjvec,
check_commutation,
check_all_commuting,
check_cartan_decomp,
orthonormalize,
)

from .involutions import (
khaneja_glaser_involution,
even_odd_involution,
concurrence_involution,
AI,
AII,
AIII,
BDI,
CI,
CII,
DIII,
ClassB,
)

from .cartan_subalgebra import cartan_subalgebra
Loading
Loading