Quantum machine learning constructors
Besides the arbitrary Hamiltonian constructors , Qadence also provides a complete set of
program constructors useful for digital-analog quantum machine learning programs.
Feature maps
The feature_map
function can easily create several types of data-encoding blocks. The
two main types of feature maps use a Fourier basis or a Chebyshev basis.
from qadence import feature_map , BasisSet , chain
from qadence.draw import display
n_qubits = 3
fourier_fm = feature_map ( n_qubits , fm_type = BasisSet . FOURIER )
chebyshev_fm = feature_map ( n_qubits , fm_type = BasisSet . CHEBYSHEV )
block = chain ( fourier_fm , chebyshev_fm )
%3
cluster_1e9a08cc6ade4f3eb1908f37963b72f8
Constant Chebyshev FM
cluster_51af759c4bde4f978c666f421b0220cf
Constant Fourier FM
82eb0ea0a7ee4bfcab9235aef4796b8e
0
7f5599e5e2274dd6aa849ad73ea897a8
RX(phi)
82eb0ea0a7ee4bfcab9235aef4796b8e--7f5599e5e2274dd6aa849ad73ea897a8
a0aea83ca182433dbf7d092af02fdd16
1
4fb57c4d8a7545d7bcacf0267020ff40
RX(acos(phi))
7f5599e5e2274dd6aa849ad73ea897a8--4fb57c4d8a7545d7bcacf0267020ff40
da8cb7b97b6046d8a50ea9501e2845a6
4fb57c4d8a7545d7bcacf0267020ff40--da8cb7b97b6046d8a50ea9501e2845a6
f7be71f5614b44ef86522e6e709aca13
ec099600b0e44fcf968af9ced30c6c7c
RX(phi)
a0aea83ca182433dbf7d092af02fdd16--ec099600b0e44fcf968af9ced30c6c7c
37a4556d0b0841168874455fac2484ae
2
c1d73895d66848b3b533767dd361665a
RX(acos(phi))
ec099600b0e44fcf968af9ced30c6c7c--c1d73895d66848b3b533767dd361665a
c1d73895d66848b3b533767dd361665a--f7be71f5614b44ef86522e6e709aca13
5da37886d64f41d1b9c78dbf0aab85ef
d5db96e9700b4e8d8f7fc4cacc3dacca
RX(phi)
37a4556d0b0841168874455fac2484ae--d5db96e9700b4e8d8f7fc4cacc3dacca
ee914920d40c41f39ec5e46da07486f7
RX(acos(phi))
d5db96e9700b4e8d8f7fc4cacc3dacca--ee914920d40c41f39ec5e46da07486f7
ee914920d40c41f39ec5e46da07486f7--5da37886d64f41d1b9c78dbf0aab85ef
A custom encoding function can also be passed with sympy
from sympy import asin , Function
n_qubits = 3
# Using a pre-defined sympy Function
custom_fm_0 = feature_map ( n_qubits , fm_type = asin )
# Creating a custom sub-class of Function
class custom_func ( Function ):
@classmethod
def eval ( cls , x ):
return asin ( x ) + x ** 2
custom_fm_1 = feature_map ( n_qubits , fm_type = custom_func )
block = chain ( custom_fm_0 , custom_fm_1 )
%3
cluster_03ca21a4b9c6417eb0e60343c9b27f82
Constant custom_func FM
cluster_794066e5196541ff84f71703a7aecc4a
Constant asin FM
6d49b54ac3a14034bd8f63c0fe0a1033
0
46fe25048a744c7d90afe94901be06b4
RX(asin(phi))
6d49b54ac3a14034bd8f63c0fe0a1033--46fe25048a744c7d90afe94901be06b4
691fc37846784c13828eb9e9431811ad
1
3a3cbfe86b074a8da208733ccb147c07
RX(phi**2 + asin(phi))
46fe25048a744c7d90afe94901be06b4--3a3cbfe86b074a8da208733ccb147c07
22b6a590aadd49efaddbab7445eda566
3a3cbfe86b074a8da208733ccb147c07--22b6a590aadd49efaddbab7445eda566
b2d4ff3b1aeb4f7cb47ad1f5b8b007c1
91a8ce6e8cb64938a8e2333a20bae0db
RX(asin(phi))
691fc37846784c13828eb9e9431811ad--91a8ce6e8cb64938a8e2333a20bae0db
a97d625b52904d98b492d7b9c8eb0876
2
182f89f0cfc749ee8c725f700b2bf458
RX(phi**2 + asin(phi))
91a8ce6e8cb64938a8e2333a20bae0db--182f89f0cfc749ee8c725f700b2bf458
182f89f0cfc749ee8c725f700b2bf458--b2d4ff3b1aeb4f7cb47ad1f5b8b007c1
634eb84c73e14ef0b1865e03697e5911
4a9b5341a58144c8bccc120e5f9bca93
RX(asin(phi))
a97d625b52904d98b492d7b9c8eb0876--4a9b5341a58144c8bccc120e5f9bca93
cd70217c36264990966a5e91977d9996
RX(phi**2 + asin(phi))
4a9b5341a58144c8bccc120e5f9bca93--cd70217c36264990966a5e91977d9996
cd70217c36264990966a5e91977d9996--634eb84c73e14ef0b1865e03697e5911
Furthermore, the reupload_scaling
argument can be used to change the scaling applied to each qubit
in the support of the feature map. The default scalings can be chosen from the ReuploadScaling
enumeration.
from qadence import ReuploadScaling
from qadence.draw import display
n_qubits = 5
# Default constant value
fm_constant = feature_map ( n_qubits , fm_type = BasisSet . FOURIER , reupload_scaling = ReuploadScaling . CONSTANT )
# Linearly increasing scaling
fm_tower = feature_map ( n_qubits , fm_type = BasisSet . FOURIER , reupload_scaling = ReuploadScaling . TOWER )
# Exponentially increasing scaling
fm_exp = feature_map ( n_qubits , fm_type = BasisSet . FOURIER , reupload_scaling = ReuploadScaling . EXP )
block = chain ( fm_constant , fm_tower , fm_exp )
%3
cluster_6d8d67a86bcf404e8b476cecc56a7dd3
Exponential Fourier FM
cluster_5b6193daf9f44d66b677d08727709d17
Constant Fourier FM
cluster_b759ec7036cb41a4a7849588ebe8626a
Tower Fourier FM
b57aa53fd45f4e9082b85bd476f51a51
0
daa73389890b4c85a62c45d028360d6c
RX(phi)
b57aa53fd45f4e9082b85bd476f51a51--daa73389890b4c85a62c45d028360d6c
9975ca337475416cacf517dd20f894bd
1
428ac8e624ab4a60a9ab5ff2a384ce76
RX(1.0*phi)
daa73389890b4c85a62c45d028360d6c--428ac8e624ab4a60a9ab5ff2a384ce76
991b9c6140a44f7fb4ede358927c312f
RX(1.0*phi)
428ac8e624ab4a60a9ab5ff2a384ce76--991b9c6140a44f7fb4ede358927c312f
39fb62f7b64444b18b525fe6c37ee1a2
991b9c6140a44f7fb4ede358927c312f--39fb62f7b64444b18b525fe6c37ee1a2
d964fc97d7e24ee294815f90e5b35f79
118def6b3c18499cb41df42e7d2c0991
RX(phi)
9975ca337475416cacf517dd20f894bd--118def6b3c18499cb41df42e7d2c0991
630e0a651c6243c989532dac70f9f146
2
9c39cab71e9d450bb6c854dd63fe3576
RX(2.0*phi)
118def6b3c18499cb41df42e7d2c0991--9c39cab71e9d450bb6c854dd63fe3576
e67998ee98d248129b22232ac75e32ba
RX(2.0*phi)
9c39cab71e9d450bb6c854dd63fe3576--e67998ee98d248129b22232ac75e32ba
e67998ee98d248129b22232ac75e32ba--d964fc97d7e24ee294815f90e5b35f79
0e959467b2c844018d2fc0b3bdec546b
725805004ae04d74bf716d2012d2b80a
RX(phi)
630e0a651c6243c989532dac70f9f146--725805004ae04d74bf716d2012d2b80a
e90b50e58abf464ebe556c8c11caf55c
3
f1b4cecb33e34a1b94de5b5b703e41a8
RX(3.0*phi)
725805004ae04d74bf716d2012d2b80a--f1b4cecb33e34a1b94de5b5b703e41a8
1a99d7bf0e4d468881245eec7545a396
RX(4.0*phi)
f1b4cecb33e34a1b94de5b5b703e41a8--1a99d7bf0e4d468881245eec7545a396
1a99d7bf0e4d468881245eec7545a396--0e959467b2c844018d2fc0b3bdec546b
42b757d04d504ee583d5b954fa46d5b6
f499ce5dcfad4cebb63953140ca79980
RX(phi)
e90b50e58abf464ebe556c8c11caf55c--f499ce5dcfad4cebb63953140ca79980
ca5db714c9bb46ddac32dff9c4a6b627
4
c3f7286dd3fe415388f5d8ded1fcfeeb
RX(4.0*phi)
f499ce5dcfad4cebb63953140ca79980--c3f7286dd3fe415388f5d8ded1fcfeeb
6100b2cdafa1455ebf18d0d879422684
RX(8.0*phi)
c3f7286dd3fe415388f5d8ded1fcfeeb--6100b2cdafa1455ebf18d0d879422684
6100b2cdafa1455ebf18d0d879422684--42b757d04d504ee583d5b954fa46d5b6
b60506cc3dcd40eeb5a5f8c91082ad18
87ee4bc14b404d13876d958d1e099834
RX(phi)
ca5db714c9bb46ddac32dff9c4a6b627--87ee4bc14b404d13876d958d1e099834
f3197cced51d476abe7f96afb2c66ce4
RX(5.0*phi)
87ee4bc14b404d13876d958d1e099834--f3197cced51d476abe7f96afb2c66ce4
6c19caad99cd48f9880b852d8d0d7417
RX(16.0*phi)
f3197cced51d476abe7f96afb2c66ce4--6c19caad99cd48f9880b852d8d0d7417
6c19caad99cd48f9880b852d8d0d7417--b60506cc3dcd40eeb5a5f8c91082ad18
A custom scaling can also be defined with a function with an int
input and int
or float
output.
n_qubits = 5
def custom_scaling ( i : int ) -> int | float :
"""Sqrt(i+1)"""
return ( i + 1 ) ** ( 0.5 )
# Custom scaling function
fm_custom = feature_map ( n_qubits , fm_type = BasisSet . CHEBYSHEV , reupload_scaling = custom_scaling )
%3
6b5ffc8ac59b4fa68b87ff22195c477b
0
e8599dcbec1f40dfa37aa7ba0cc06dc4
RX(1.0*acos(phi))
6b5ffc8ac59b4fa68b87ff22195c477b--e8599dcbec1f40dfa37aa7ba0cc06dc4
3e921829f9994c7e9b13233ef118303c
1
1364f456f4ce4f97aa2e39fbbb1122c0
e8599dcbec1f40dfa37aa7ba0cc06dc4--1364f456f4ce4f97aa2e39fbbb1122c0
ac95e39b4c6747f68777bfa7db97ca69
087ae46a8a2d497c87983e768e7daa82
RX(1.414*acos(phi))
3e921829f9994c7e9b13233ef118303c--087ae46a8a2d497c87983e768e7daa82
a8224d9c689b4715a8ce63bc593f5c82
2
087ae46a8a2d497c87983e768e7daa82--ac95e39b4c6747f68777bfa7db97ca69
856cd770878d44738f8679a3a5094b44
244f68a72d40473cae12179dadf1362c
RX(1.732*acos(phi))
a8224d9c689b4715a8ce63bc593f5c82--244f68a72d40473cae12179dadf1362c
5d76a23baec44fd8a0fd02665d6b2120
3
244f68a72d40473cae12179dadf1362c--856cd770878d44738f8679a3a5094b44
9a6f098950be48a8a216400cdb1380c2
4ccbc8e9c91c4fef9c7f3c9503f74d64
RX(2.0*acos(phi))
5d76a23baec44fd8a0fd02665d6b2120--4ccbc8e9c91c4fef9c7f3c9503f74d64
0c15e0e2606e4f19809b74ffd30a09fd
4
4ccbc8e9c91c4fef9c7f3c9503f74d64--9a6f098950be48a8a216400cdb1380c2
b61278cdf44e45a99faf5c68b1da9ca4
e9beb791cfc846e8a2821a0c795f36d6
RX(2.236*acos(phi))
0c15e0e2606e4f19809b74ffd30a09fd--e9beb791cfc846e8a2821a0c795f36d6
e9beb791cfc846e8a2821a0c795f36d6--b61278cdf44e45a99faf5c68b1da9ca4
A full description of the remaining arguments can be found in the feature_map
API reference . We provide an example below.
from qadence import RY
n_qubits = 5
# Custom scaling function
fm_full = feature_map (
n_qubits = n_qubits ,
support = tuple ( reversed ( range ( n_qubits ))), # Reverse the qubit support to run the scaling from bottom to top
param = "x" , # Change the name of the parameter
op = RY , # Change the rotation gate between RX, RY, RZ or PHASE
fm_type = BasisSet . CHEBYSHEV ,
reupload_scaling = ReuploadScaling . EXP ,
feature_range = ( - 1.0 , 2.0 ), # Range from which the input data comes from
target_range = ( 1.0 , 3.0 ), # Range the encoder assumes as the natural range
multiplier = 5.0 # Extra multiplier, which can also be a Parameter
)
%3
c5e79596def64dd38c3cae65f607fffc
0
33670cfb072d41dcbb8574314037c6f3
RY(80.0*acos(0.667*x + 1.667))
c5e79596def64dd38c3cae65f607fffc--33670cfb072d41dcbb8574314037c6f3
4faff9011067408296d8acdd8e0d9028
1
18f7934d39064ac9b97b96841a289725
33670cfb072d41dcbb8574314037c6f3--18f7934d39064ac9b97b96841a289725
6a0b7e0524ac4a4e984c156c462f3a1f
b5e5d6846dc949c795866c67282f91a7
RY(40.0*acos(0.667*x + 1.667))
4faff9011067408296d8acdd8e0d9028--b5e5d6846dc949c795866c67282f91a7
769b25be35fe49c08934f358d4222e64
2
b5e5d6846dc949c795866c67282f91a7--6a0b7e0524ac4a4e984c156c462f3a1f
2656cfa1bf2f4a4ea5f679b21a2f1cdc
7c6024d78cc74279b4f3615a55d6c4f0
RY(20.0*acos(0.667*x + 1.667))
769b25be35fe49c08934f358d4222e64--7c6024d78cc74279b4f3615a55d6c4f0
e004d2cf137f4d9d86436caf867505ea
3
7c6024d78cc74279b4f3615a55d6c4f0--2656cfa1bf2f4a4ea5f679b21a2f1cdc
d40487908b1c4629a49f6f77ae248190
572a43f5b4844f8fb2f92c7c5633cbb0
RY(10.0*acos(0.667*x + 1.667))
e004d2cf137f4d9d86436caf867505ea--572a43f5b4844f8fb2f92c7c5633cbb0
b7a9d9dac33447b590bd8a32de93ff17
4
572a43f5b4844f8fb2f92c7c5633cbb0--d40487908b1c4629a49f6f77ae248190
9c191ac1af5646e8b544a20fe897305a
a6ddfc0b0abc4ad7b1ee8f4db9e83168
RY(5.0*acos(0.667*x + 1.667))
b7a9d9dac33447b590bd8a32de93ff17--a6ddfc0b0abc4ad7b1ee8f4db9e83168
a6ddfc0b0abc4ad7b1ee8f4db9e83168--9c191ac1af5646e8b544a20fe897305a
Hardware-efficient ansatz
Ansatze blocks for quantum machine-learning are typically built following the Hardware-Efficient Ansatz formalism (HEA).
Both fully digital and digital-analog HEAs can easily be built with the hea
function. By default,
the digital version is returned:
from qadence import hea
from qadence.draw import display
n_qubits = 3
depth = 2
ansatz = hea ( n_qubits , depth )
%3
6995d35613fd40d68e46622961a5aa37
0
09380df27f9f4a0bb03f579a89152652
RX(theta₀)
6995d35613fd40d68e46622961a5aa37--09380df27f9f4a0bb03f579a89152652
7e200a57e5884bc7840ac31f81856e0a
1
35c3da000f464346b3424436df3e762b
RY(theta₃)
09380df27f9f4a0bb03f579a89152652--35c3da000f464346b3424436df3e762b
613a727cd0e049269ac7d046403cdbf1
RX(theta₆)
35c3da000f464346b3424436df3e762b--613a727cd0e049269ac7d046403cdbf1
acfb249e09c04dff9d53d184432f16bb
613a727cd0e049269ac7d046403cdbf1--acfb249e09c04dff9d53d184432f16bb
ad427ac56968446882f205e5cececf70
acfb249e09c04dff9d53d184432f16bb--ad427ac56968446882f205e5cececf70
bd5b8bbaad414057918e3fea839c739e
RX(theta₉)
ad427ac56968446882f205e5cececf70--bd5b8bbaad414057918e3fea839c739e
fdf170dba3e64d3cbe84eb869f92f20f
RY(theta₁₂)
bd5b8bbaad414057918e3fea839c739e--fdf170dba3e64d3cbe84eb869f92f20f
5d670825daf7487e9662e99ccee03860
RX(theta₁₅)
fdf170dba3e64d3cbe84eb869f92f20f--5d670825daf7487e9662e99ccee03860
42d4157b832546f4abde37584caf85bd
5d670825daf7487e9662e99ccee03860--42d4157b832546f4abde37584caf85bd
9aa6d6d6a4b94837b76cd642e88b2295
42d4157b832546f4abde37584caf85bd--9aa6d6d6a4b94837b76cd642e88b2295
737add4191a2481b833816a09ace53e1
9aa6d6d6a4b94837b76cd642e88b2295--737add4191a2481b833816a09ace53e1
58e20f193377413cb2e1396b19711b4e
7a41504db7b344faabc4b12d4bb90e8d
RX(theta₁)
7e200a57e5884bc7840ac31f81856e0a--7a41504db7b344faabc4b12d4bb90e8d
66de8a6ee66f4b7d86e6fc10e9ee9f66
2
f49a2f038133463690e3baf443f0d6a9
RY(theta₄)
7a41504db7b344faabc4b12d4bb90e8d--f49a2f038133463690e3baf443f0d6a9
d00a1087787a4091ada35129d22da798
RX(theta₇)
f49a2f038133463690e3baf443f0d6a9--d00a1087787a4091ada35129d22da798
aa74309a43514567bc66588c428f2578
X
d00a1087787a4091ada35129d22da798--aa74309a43514567bc66588c428f2578
aa74309a43514567bc66588c428f2578--acfb249e09c04dff9d53d184432f16bb
07c244c8068d42229b63633f90a11e01
aa74309a43514567bc66588c428f2578--07c244c8068d42229b63633f90a11e01
a66e1ccb31324c828822892b2173156f
RX(theta₁₀)
07c244c8068d42229b63633f90a11e01--a66e1ccb31324c828822892b2173156f
e3b3ce10e73d4bb4aedff7189a448073
RY(theta₁₃)
a66e1ccb31324c828822892b2173156f--e3b3ce10e73d4bb4aedff7189a448073
7ef9bbdcc4204741829d8ed0ac79eb49
RX(theta₁₆)
e3b3ce10e73d4bb4aedff7189a448073--7ef9bbdcc4204741829d8ed0ac79eb49
3b6b443cbca24f8ba14d72d3974c05a5
X
7ef9bbdcc4204741829d8ed0ac79eb49--3b6b443cbca24f8ba14d72d3974c05a5
3b6b443cbca24f8ba14d72d3974c05a5--42d4157b832546f4abde37584caf85bd
80d4ee8ce6a843e5856deb7caa4fbc89
3b6b443cbca24f8ba14d72d3974c05a5--80d4ee8ce6a843e5856deb7caa4fbc89
80d4ee8ce6a843e5856deb7caa4fbc89--58e20f193377413cb2e1396b19711b4e
1d903356e923458fa59fcccf99f5fe26
fddf4d7ea07549259764c55b5e1e1245
RX(theta₂)
66de8a6ee66f4b7d86e6fc10e9ee9f66--fddf4d7ea07549259764c55b5e1e1245
958691b439824c85993ae5613c347f8f
RY(theta₅)
fddf4d7ea07549259764c55b5e1e1245--958691b439824c85993ae5613c347f8f
992a3b59b1e7419986d4d91b1ce6e9e4
RX(theta₈)
958691b439824c85993ae5613c347f8f--992a3b59b1e7419986d4d91b1ce6e9e4
eabc91192c72418d9d9f5c9032936afd
992a3b59b1e7419986d4d91b1ce6e9e4--eabc91192c72418d9d9f5c9032936afd
c48d0b2456704b6eae6465dc5a6796ad
X
eabc91192c72418d9d9f5c9032936afd--c48d0b2456704b6eae6465dc5a6796ad
c48d0b2456704b6eae6465dc5a6796ad--07c244c8068d42229b63633f90a11e01
03dc7abd535f4415aa888635a64aec08
RX(theta₁₁)
c48d0b2456704b6eae6465dc5a6796ad--03dc7abd535f4415aa888635a64aec08
d58e3c529a4242148addab3c3aeebb3a
RY(theta₁₄)
03dc7abd535f4415aa888635a64aec08--d58e3c529a4242148addab3c3aeebb3a
34f2c57c802647ea8a04a638cac9d76e
RX(theta₁₇)
d58e3c529a4242148addab3c3aeebb3a--34f2c57c802647ea8a04a638cac9d76e
b4cd32aed6cd44d9912d4157f9c39d47
34f2c57c802647ea8a04a638cac9d76e--b4cd32aed6cd44d9912d4157f9c39d47
164ec3d61093411f9b5debdc4ce9097e
X
b4cd32aed6cd44d9912d4157f9c39d47--164ec3d61093411f9b5debdc4ce9097e
164ec3d61093411f9b5debdc4ce9097e--80d4ee8ce6a843e5856deb7caa4fbc89
164ec3d61093411f9b5debdc4ce9097e--1d903356e923458fa59fcccf99f5fe26
As seen above, the rotation layers are automatically parameterized, and the prefix "theta"
can be changed with the param_prefix
argument.
Furthermore, both the single-qubit rotations and the two-qubit entangler can be customized with the operations
and entangler
argument. The operations can be passed as a list of single-qubit rotations, while the entangler should be either CNOT
, CZ
, CRX
, CRY
, CRZ
or CPHASE
.
from qadence import RX , RY , CPHASE
ansatz = hea (
n_qubits = n_qubits ,
depth = depth ,
param_prefix = "phi" ,
operations = [ RX , RY , RX ],
entangler = CPHASE
)
%3
cbb8edc6d5ca4b6a8219b22a701092ed
0
7608df2cf4624503898d1a24061ef4a6
RX(phi₀)
cbb8edc6d5ca4b6a8219b22a701092ed--7608df2cf4624503898d1a24061ef4a6
50c812ef29ac402999df3f57f1bd7d6c
1
9ecf9ca93c504d7b80ff2e7f05e47112
RY(phi₃)
7608df2cf4624503898d1a24061ef4a6--9ecf9ca93c504d7b80ff2e7f05e47112
0d17d58c69d34b9db8669bf892f21b89
RX(phi₆)
9ecf9ca93c504d7b80ff2e7f05e47112--0d17d58c69d34b9db8669bf892f21b89
30eed80745d941c08c81aba8f2d7b69a
0d17d58c69d34b9db8669bf892f21b89--30eed80745d941c08c81aba8f2d7b69a
0ebba8d374c54024916c42274da97f86
30eed80745d941c08c81aba8f2d7b69a--0ebba8d374c54024916c42274da97f86
6971b0877fc9452986f747a5da94a269
RX(phi₉)
0ebba8d374c54024916c42274da97f86--6971b0877fc9452986f747a5da94a269
2c30fa01a2fe47bdb36cb4060d352c61
RY(phi₁₂)
6971b0877fc9452986f747a5da94a269--2c30fa01a2fe47bdb36cb4060d352c61
fc2677b0d1934a9ba64489c491ecd00c
RX(phi₁₅)
2c30fa01a2fe47bdb36cb4060d352c61--fc2677b0d1934a9ba64489c491ecd00c
18d544af14fe4c81b73021d711f0ca12
fc2677b0d1934a9ba64489c491ecd00c--18d544af14fe4c81b73021d711f0ca12
31be4714d02e43ce88758dc079bb3812
18d544af14fe4c81b73021d711f0ca12--31be4714d02e43ce88758dc079bb3812
ff6df7a63214444eb7f6f7b04127956a
31be4714d02e43ce88758dc079bb3812--ff6df7a63214444eb7f6f7b04127956a
ccbf78241cdc482a99f3b480fb4b5141
4fc6bf8a3ef649458ec347f0801f095b
RX(phi₁)
50c812ef29ac402999df3f57f1bd7d6c--4fc6bf8a3ef649458ec347f0801f095b
82fa91dd85ab4a3e85916402bd022a18
2
05a90a211ea3499ea2d2d99c82ce3d98
RY(phi₄)
4fc6bf8a3ef649458ec347f0801f095b--05a90a211ea3499ea2d2d99c82ce3d98
121f4281d49b4dff849777ed134c0971
RX(phi₇)
05a90a211ea3499ea2d2d99c82ce3d98--121f4281d49b4dff849777ed134c0971
b4190cdea2f64afaa92ef4e061d757c6
PHASE(phi_ent₀)
121f4281d49b4dff849777ed134c0971--b4190cdea2f64afaa92ef4e061d757c6
b4190cdea2f64afaa92ef4e061d757c6--30eed80745d941c08c81aba8f2d7b69a
713f48b637c24d628b0ab6e676e980db
b4190cdea2f64afaa92ef4e061d757c6--713f48b637c24d628b0ab6e676e980db
9f41cbc4349d471a97cb7e396a359102
RX(phi₁₀)
713f48b637c24d628b0ab6e676e980db--9f41cbc4349d471a97cb7e396a359102
f1aa1cf697a64307a7b85dc38f64a532
RY(phi₁₃)
9f41cbc4349d471a97cb7e396a359102--f1aa1cf697a64307a7b85dc38f64a532
234e4c8ea6f241b5a9319b54b52fc9ec
RX(phi₁₆)
f1aa1cf697a64307a7b85dc38f64a532--234e4c8ea6f241b5a9319b54b52fc9ec
fa9eab96e009404687fa92550cd2982d
PHASE(phi_ent₂)
234e4c8ea6f241b5a9319b54b52fc9ec--fa9eab96e009404687fa92550cd2982d
fa9eab96e009404687fa92550cd2982d--18d544af14fe4c81b73021d711f0ca12
6bb7d7466ae4402d82b2e89b1d7169e2
fa9eab96e009404687fa92550cd2982d--6bb7d7466ae4402d82b2e89b1d7169e2
6bb7d7466ae4402d82b2e89b1d7169e2--ccbf78241cdc482a99f3b480fb4b5141
cf1812b3210a4518b3dc247655a89058
69b250b2e7ca45cea1d86ccb00cdd252
RX(phi₂)
82fa91dd85ab4a3e85916402bd022a18--69b250b2e7ca45cea1d86ccb00cdd252
4d261f3eb40043589dea111d7f7d6f22
RY(phi₅)
69b250b2e7ca45cea1d86ccb00cdd252--4d261f3eb40043589dea111d7f7d6f22
641f849ccfc547d494b2b9e2712febbf
RX(phi₈)
4d261f3eb40043589dea111d7f7d6f22--641f849ccfc547d494b2b9e2712febbf
c1d3ddc99f9f473b9a22411abaae340c
641f849ccfc547d494b2b9e2712febbf--c1d3ddc99f9f473b9a22411abaae340c
5681796fdf044def9b60953321c5a7d1
PHASE(phi_ent₁)
c1d3ddc99f9f473b9a22411abaae340c--5681796fdf044def9b60953321c5a7d1
5681796fdf044def9b60953321c5a7d1--713f48b637c24d628b0ab6e676e980db
bf00ebecc36241b2ac8eebc4b623cb9e
RX(phi₁₁)
5681796fdf044def9b60953321c5a7d1--bf00ebecc36241b2ac8eebc4b623cb9e
8aa3775a87b74fdf94385e431efcd3f7
RY(phi₁₄)
bf00ebecc36241b2ac8eebc4b623cb9e--8aa3775a87b74fdf94385e431efcd3f7
91fcb2c990a04e96b7191387478efd24
RX(phi₁₇)
8aa3775a87b74fdf94385e431efcd3f7--91fcb2c990a04e96b7191387478efd24
cebb1b317faf4a1b9cac6de5e32249f4
91fcb2c990a04e96b7191387478efd24--cebb1b317faf4a1b9cac6de5e32249f4
a75b33f5624e48deadc6abe4d9b248ab
PHASE(phi_ent₃)
cebb1b317faf4a1b9cac6de5e32249f4--a75b33f5624e48deadc6abe4d9b248ab
a75b33f5624e48deadc6abe4d9b248ab--6bb7d7466ae4402d82b2e89b1d7169e2
a75b33f5624e48deadc6abe4d9b248ab--cf1812b3210a4518b3dc247655a89058
Having a truly hardware-efficient ansatz means that the entangling operation can be chosen according to each device's native interactions. Besides digital operations, in Qadence it is also possible to build digital-analog HEAs with the entanglement produced by the natural evolution of a set of interacting qubits, as natively implemented in neutral atom devices. As with other digital-analog functions, this can be controlled with the strategy
argument which can be chosen from the Strategy
enum type. Currently, only Strategy.DIGITAL
and Strategy.SDAQC
are available. By default, calling strategy = Strategy.SDAQC
will use a global entangling Hamiltonian with Ising-like \(NN\) interactions and constant interaction strength,
from qadence import Strategy
ansatz = hea (
n_qubits ,
depth = depth ,
strategy = Strategy . SDAQC
)
%3
cluster_3c2525660ad64251a2de1933371c8857
cluster_1672897efcd1436a9f2b3f4eb473bd3c
350cc0a27a8343d0b2d26d6a8e42c475
0
e8ad1f20868e47cd93e4eb1c6bdf2389
RX(theta₀)
350cc0a27a8343d0b2d26d6a8e42c475--e8ad1f20868e47cd93e4eb1c6bdf2389
8e251c2eee564831aac347607c5f7735
1
7d1ba564f55340179f22a477b1362000
RY(theta₃)
e8ad1f20868e47cd93e4eb1c6bdf2389--7d1ba564f55340179f22a477b1362000
e103c5ef909c433e8dc35171d118a14f
RX(theta₆)
7d1ba564f55340179f22a477b1362000--e103c5ef909c433e8dc35171d118a14f
cf49252bf71043c5b561ac02f0ef361c
HamEvo
e103c5ef909c433e8dc35171d118a14f--cf49252bf71043c5b561ac02f0ef361c
5333a505211e47b6b4baf0974cef9373
RX(theta₉)
cf49252bf71043c5b561ac02f0ef361c--5333a505211e47b6b4baf0974cef9373
dd77ba4131984f2c84badd98b77c97f8
RY(theta₁₂)
5333a505211e47b6b4baf0974cef9373--dd77ba4131984f2c84badd98b77c97f8
7cd726851f5a465fbdb4e72d92b165df
RX(theta₁₅)
dd77ba4131984f2c84badd98b77c97f8--7cd726851f5a465fbdb4e72d92b165df
aeb5865fcf334776b539999fadc32b5a
HamEvo
7cd726851f5a465fbdb4e72d92b165df--aeb5865fcf334776b539999fadc32b5a
81e60b91988d48448c6bba008503136b
aeb5865fcf334776b539999fadc32b5a--81e60b91988d48448c6bba008503136b
47b2f7aed9334690a9790b15e959186e
d1c1d583312c4997aab57bea8387be1d
RX(theta₁)
8e251c2eee564831aac347607c5f7735--d1c1d583312c4997aab57bea8387be1d
7d8d8ea1ce2844ebbf8ee3874c0c37e5
2
794de0e909e54f60873826fdfe6ca361
RY(theta₄)
d1c1d583312c4997aab57bea8387be1d--794de0e909e54f60873826fdfe6ca361
5a99a466d36e4d0d8341864dd7762139
RX(theta₇)
794de0e909e54f60873826fdfe6ca361--5a99a466d36e4d0d8341864dd7762139
1ef489252c6942e8af743c201e8eb650
t = theta_t₀
5a99a466d36e4d0d8341864dd7762139--1ef489252c6942e8af743c201e8eb650
17b3749a53754bf28310077a72b87be4
RX(theta₁₀)
1ef489252c6942e8af743c201e8eb650--17b3749a53754bf28310077a72b87be4
3b50ad793c9f45f28e6dba49e50e1ed7
RY(theta₁₃)
17b3749a53754bf28310077a72b87be4--3b50ad793c9f45f28e6dba49e50e1ed7
eeba7833fd894874bb92a41d4c329aec
RX(theta₁₆)
3b50ad793c9f45f28e6dba49e50e1ed7--eeba7833fd894874bb92a41d4c329aec
fa74818ead0341adb7c466c4e6280321
t = theta_t₁
eeba7833fd894874bb92a41d4c329aec--fa74818ead0341adb7c466c4e6280321
fa74818ead0341adb7c466c4e6280321--47b2f7aed9334690a9790b15e959186e
e685a0af33d749e6944489f649a044ca
af7fd7f2e0b84876b2b6aac0885701ff
RX(theta₂)
7d8d8ea1ce2844ebbf8ee3874c0c37e5--af7fd7f2e0b84876b2b6aac0885701ff
c0895767e5a2400c99653197ee2218b7
RY(theta₅)
af7fd7f2e0b84876b2b6aac0885701ff--c0895767e5a2400c99653197ee2218b7
b1e3dd138fb3469a95528af07bb469c3
RX(theta₈)
c0895767e5a2400c99653197ee2218b7--b1e3dd138fb3469a95528af07bb469c3
0638ac33e6984bfba8a2231ac75addfe
b1e3dd138fb3469a95528af07bb469c3--0638ac33e6984bfba8a2231ac75addfe
8adddcd06e354b2895cebec8181c85af
RX(theta₁₁)
0638ac33e6984bfba8a2231ac75addfe--8adddcd06e354b2895cebec8181c85af
0f1659fef5974e0fbc4072da3a9b3fe0
RY(theta₁₄)
8adddcd06e354b2895cebec8181c85af--0f1659fef5974e0fbc4072da3a9b3fe0
8ee9d7f5982842aa943e896fac21c5e5
RX(theta₁₇)
0f1659fef5974e0fbc4072da3a9b3fe0--8ee9d7f5982842aa943e896fac21c5e5
a38f4be605f64f4eb62cb75c940e3c57
8ee9d7f5982842aa943e896fac21c5e5--a38f4be605f64f4eb62cb75c940e3c57
a38f4be605f64f4eb62cb75c940e3c57--e685a0af33d749e6944489f649a044ca
Note that, by default, only the time-parameter is automatically parameterized when building a digital-analog HEA. However, as described in the Hamiltonians tutorial , arbitrary interaction Hamiltonians can be easily built with the hamiltonian_factory
function, with both customized or fully parameterized interactions, and these can be directly passed as the entangler
for a customizable digital-analog HEA.
from qadence import hamiltonian_factory , Interaction , N , Register , hea
# Build a parameterized neutral-atom Hamiltonian following a honeycomb_lattice:
register = Register . honeycomb_lattice ( 1 , 1 )
entangler = hamiltonian_factory (
register ,
interaction = Interaction . NN ,
detuning = N ,
interaction_strength = "e" ,
detuning_strength = "n"
)
# Build a fully parameterized Digital-Analog HEA:
n_qubits = register . n_qubits
depth = 2
ansatz = hea (
n_qubits = register . n_qubits ,
depth = depth ,
operations = [ RX , RY , RX ],
entangler = entangler ,
strategy = Strategy . SDAQC
)
%3
cluster_0695bcc5e64f4d6f99475eee8e2b3125
cluster_8be37f0dce5d4c0a956a095b242cc947
c80dfce0709442609bbeb773a5c22020
0
de65721bf809401c86baaf7a77593d80
RX(theta₀)
c80dfce0709442609bbeb773a5c22020--de65721bf809401c86baaf7a77593d80
6048e2241420444784c92ef8b4c28ad7
1
81185a00dd7e4284aecf7e5082e03bdd
RY(theta₆)
de65721bf809401c86baaf7a77593d80--81185a00dd7e4284aecf7e5082e03bdd
bceefe323ab44b9a9fbc2e7007bc0906
RX(theta₁₂)
81185a00dd7e4284aecf7e5082e03bdd--bceefe323ab44b9a9fbc2e7007bc0906
267ca25cc099428db7660f9ad02d79a1
bceefe323ab44b9a9fbc2e7007bc0906--267ca25cc099428db7660f9ad02d79a1
c2385ce1ba2d4524b1aa3f8562b2f60e
RX(theta₁₈)
267ca25cc099428db7660f9ad02d79a1--c2385ce1ba2d4524b1aa3f8562b2f60e
c4c970ea4ae84091bcd4f7570a337fb0
RY(theta₂₄)
c2385ce1ba2d4524b1aa3f8562b2f60e--c4c970ea4ae84091bcd4f7570a337fb0
195929c527b94148bfcb80de5a4ca4a1
RX(theta₃₀)
c4c970ea4ae84091bcd4f7570a337fb0--195929c527b94148bfcb80de5a4ca4a1
a56463ff521a4e809eb1279b9b2cfdbb
195929c527b94148bfcb80de5a4ca4a1--a56463ff521a4e809eb1279b9b2cfdbb
a14d1bb0787d4b7eac449d985596d608
a56463ff521a4e809eb1279b9b2cfdbb--a14d1bb0787d4b7eac449d985596d608
4b08640d78734528b6769405057209fa
1b1b050fb736411ba5fc0c3d7f165b75
RX(theta₁)
6048e2241420444784c92ef8b4c28ad7--1b1b050fb736411ba5fc0c3d7f165b75
db6c9afed54f4e3eb94131bffd00b5d7
2
45e9138961c649469065fde57bddb1bc
RY(theta₇)
1b1b050fb736411ba5fc0c3d7f165b75--45e9138961c649469065fde57bddb1bc
f9215840b5ab4a20b53b3751061617ab
RX(theta₁₃)
45e9138961c649469065fde57bddb1bc--f9215840b5ab4a20b53b3751061617ab
86692a73b7c643208cc70ab05703a498
f9215840b5ab4a20b53b3751061617ab--86692a73b7c643208cc70ab05703a498
3efefa19cff7442b95501a68db9dfbe1
RX(theta₁₉)
86692a73b7c643208cc70ab05703a498--3efefa19cff7442b95501a68db9dfbe1
729cd4f6ff5345049263bdf76b83bdb9
RY(theta₂₅)
3efefa19cff7442b95501a68db9dfbe1--729cd4f6ff5345049263bdf76b83bdb9
8c65c9174dad4f2b8c2ea5d7fd7fe1e7
RX(theta₃₁)
729cd4f6ff5345049263bdf76b83bdb9--8c65c9174dad4f2b8c2ea5d7fd7fe1e7
3331a080d5144c5c91a9f775b70bd70f
8c65c9174dad4f2b8c2ea5d7fd7fe1e7--3331a080d5144c5c91a9f775b70bd70f
3331a080d5144c5c91a9f775b70bd70f--4b08640d78734528b6769405057209fa
99a99232e9a44fc1b9d1aa7399596028
c85e025188804997b12a344553605b41
RX(theta₂)
db6c9afed54f4e3eb94131bffd00b5d7--c85e025188804997b12a344553605b41
3b9348b146a14bfd994b06770080c91c
3
6511291892484edb8c5b1934b22a3b9a
RY(theta₈)
c85e025188804997b12a344553605b41--6511291892484edb8c5b1934b22a3b9a
c72bc6bdc70d4a178dc91a91d4779ba1
RX(theta₁₄)
6511291892484edb8c5b1934b22a3b9a--c72bc6bdc70d4a178dc91a91d4779ba1
500e96e1daf24a09bb3b6939e20d4c4c
HamEvo
c72bc6bdc70d4a178dc91a91d4779ba1--500e96e1daf24a09bb3b6939e20d4c4c
4cc988aba2e44c75ae0a0e724e30aefb
RX(theta₂₀)
500e96e1daf24a09bb3b6939e20d4c4c--4cc988aba2e44c75ae0a0e724e30aefb
afa4374ad4f0424fbbc806c9eb5bb585
RY(theta₂₆)
4cc988aba2e44c75ae0a0e724e30aefb--afa4374ad4f0424fbbc806c9eb5bb585
7dd92b0bb13d4a55992c6fb801b1cf93
RX(theta₃₂)
afa4374ad4f0424fbbc806c9eb5bb585--7dd92b0bb13d4a55992c6fb801b1cf93
92e53c7845d94abbbe3dac2bde281b40
HamEvo
7dd92b0bb13d4a55992c6fb801b1cf93--92e53c7845d94abbbe3dac2bde281b40
92e53c7845d94abbbe3dac2bde281b40--99a99232e9a44fc1b9d1aa7399596028
a3f59de32ba14c48b9a10a786ba1e1e8
3a4b865ecf3445e49e98386cbc1ed5e0
RX(theta₃)
3b9348b146a14bfd994b06770080c91c--3a4b865ecf3445e49e98386cbc1ed5e0
8fdc3f7b8fa74837b894a132db10bb58
4
5a7db74078624918bdba3c2c9b4c4b0b
RY(theta₉)
3a4b865ecf3445e49e98386cbc1ed5e0--5a7db74078624918bdba3c2c9b4c4b0b
825085cc3d5e4b2bb7bef637a71b9abf
RX(theta₁₅)
5a7db74078624918bdba3c2c9b4c4b0b--825085cc3d5e4b2bb7bef637a71b9abf
10cc75c99a6f44f5ad2257f80d23fbce
t = theta_t₀
825085cc3d5e4b2bb7bef637a71b9abf--10cc75c99a6f44f5ad2257f80d23fbce
8bf1607bd856438d890a24ccc477caec
RX(theta₂₁)
10cc75c99a6f44f5ad2257f80d23fbce--8bf1607bd856438d890a24ccc477caec
c095c8e0945f4199a7db4da584068104
RY(theta₂₇)
8bf1607bd856438d890a24ccc477caec--c095c8e0945f4199a7db4da584068104
85da97f63d2d437ca92cf554033b7434
RX(theta₃₃)
c095c8e0945f4199a7db4da584068104--85da97f63d2d437ca92cf554033b7434
6c230a9e704d4cb39b6e96904f961993
t = theta_t₁
85da97f63d2d437ca92cf554033b7434--6c230a9e704d4cb39b6e96904f961993
6c230a9e704d4cb39b6e96904f961993--a3f59de32ba14c48b9a10a786ba1e1e8
97f24f28e12347549ecb9e2ebf92160a
8aef7ce2f1fe49eba7c68034f2120080
RX(theta₄)
8fdc3f7b8fa74837b894a132db10bb58--8aef7ce2f1fe49eba7c68034f2120080
e963178d88794a04be562c38b896b7eb
5
a9aa6d36427741e4a37c830d01a7188f
RY(theta₁₀)
8aef7ce2f1fe49eba7c68034f2120080--a9aa6d36427741e4a37c830d01a7188f
d260149cc4f54f098717f8b2c96a62ea
RX(theta₁₆)
a9aa6d36427741e4a37c830d01a7188f--d260149cc4f54f098717f8b2c96a62ea
04d2522e9acb4508aa10b5ce2f8c5b9a
d260149cc4f54f098717f8b2c96a62ea--04d2522e9acb4508aa10b5ce2f8c5b9a
fe7942b229d14e52a378212584d2bf15
RX(theta₂₂)
04d2522e9acb4508aa10b5ce2f8c5b9a--fe7942b229d14e52a378212584d2bf15
307291cbccb744d982a50f626efcaf25
RY(theta₂₈)
fe7942b229d14e52a378212584d2bf15--307291cbccb744d982a50f626efcaf25
4a09f7ddfda74a54bee9b33d53c3f123
RX(theta₃₄)
307291cbccb744d982a50f626efcaf25--4a09f7ddfda74a54bee9b33d53c3f123
584a2215fbe74e08975737391168c42c
4a09f7ddfda74a54bee9b33d53c3f123--584a2215fbe74e08975737391168c42c
584a2215fbe74e08975737391168c42c--97f24f28e12347549ecb9e2ebf92160a
abf5eee635c1453eb50898ac8b451a2e
a98e78bde7db4ebc9a36d0d544a1ad7b
RX(theta₅)
e963178d88794a04be562c38b896b7eb--a98e78bde7db4ebc9a36d0d544a1ad7b
60974cd4249d4f7bb33b1ec3f5fabfb2
RY(theta₁₁)
a98e78bde7db4ebc9a36d0d544a1ad7b--60974cd4249d4f7bb33b1ec3f5fabfb2
fa074a9ba51440388354dfc8545afb5e
RX(theta₁₇)
60974cd4249d4f7bb33b1ec3f5fabfb2--fa074a9ba51440388354dfc8545afb5e
a70e60ff791f4e4886b7476b4f773eab
fa074a9ba51440388354dfc8545afb5e--a70e60ff791f4e4886b7476b4f773eab
bedc2629ec034188a287c3a898676142
RX(theta₂₃)
a70e60ff791f4e4886b7476b4f773eab--bedc2629ec034188a287c3a898676142
4d0f55eb3be34aa1b7b0a2bd755f8c86
RY(theta₂₉)
bedc2629ec034188a287c3a898676142--4d0f55eb3be34aa1b7b0a2bd755f8c86
85226da7c38c493b8fa4fd840fcf8b77
RX(theta₃₅)
4d0f55eb3be34aa1b7b0a2bd755f8c86--85226da7c38c493b8fa4fd840fcf8b77
c78060edae3b4730ba87328c25b32bea
85226da7c38c493b8fa4fd840fcf8b77--c78060edae3b4730ba87328c25b32bea
c78060edae3b4730ba87328c25b32bea--abf5eee635c1453eb50898ac8b451a2e
Identity-initialized ansatz
It is widely known that parametrized quantum circuits are characterized by barren plateaus, where the gradient becomes exponentially small in the number of qubits. Here we include one of many techniques that have been proposed in recent years to mitigate this effect and facilitate QNN
s training: Grant et al. showed that initializing the weights of a QNN
so that each block of the circuit evaluates to identity reduces the effect of barren plateaus in the initial stage of training. In a similar fashion to hea
, such circuit can be created via calling the associated function, identity_initialized_ansatz
:
from qadence.constructors import identity_initialized_ansatz
from qadence.draw import display
n_qubits = 3
depth = 2
ansatz = identity_initialized_ansatz ( n_qubits , depth )
%3
cluster_f1c3fd2379344d10976203bafa7c419f
BPMA-1
cluster_4ed1c0d7ea414c3ea334732d25ba2fc8
BPMA-0
00529e3ae1e946bcbf2ef99d02a42536
0
f2808bd48e624e86b6877c2129a83548
RX(alpha₀₀)
00529e3ae1e946bcbf2ef99d02a42536--f2808bd48e624e86b6877c2129a83548
19714666e2324bd9841b2a2550edc070
1
80624f58025941eabedbe3f3d0e9bfed
RY(alpha₀₃)
f2808bd48e624e86b6877c2129a83548--80624f58025941eabedbe3f3d0e9bfed
cc4edda15a964666a4218df5be9598eb
80624f58025941eabedbe3f3d0e9bfed--cc4edda15a964666a4218df5be9598eb
3fb1241c25e445feafb3e342f4cf5622
cc4edda15a964666a4218df5be9598eb--3fb1241c25e445feafb3e342f4cf5622
81baf6379a424e6390423e1625e32aba
RX(gamma₀₀)
3fb1241c25e445feafb3e342f4cf5622--81baf6379a424e6390423e1625e32aba
2caf110adf784b23a25c78265adad6f9
81baf6379a424e6390423e1625e32aba--2caf110adf784b23a25c78265adad6f9
e071cdc6ab224ec9b52cfb4dac8f1d0f
2caf110adf784b23a25c78265adad6f9--e071cdc6ab224ec9b52cfb4dac8f1d0f
f99c9f34c2d742f3917de97bfba1ed80
RY(beta₀₃)
e071cdc6ab224ec9b52cfb4dac8f1d0f--f99c9f34c2d742f3917de97bfba1ed80
1d8caf297d3941118b79c7d8367f79cd
RX(beta₀₀)
f99c9f34c2d742f3917de97bfba1ed80--1d8caf297d3941118b79c7d8367f79cd
ee8faf27c67d4f07a88fbc7705274bae
RX(alpha₁₀)
1d8caf297d3941118b79c7d8367f79cd--ee8faf27c67d4f07a88fbc7705274bae
8678bbe739c142b1baeeaffb4d1953aa
RY(alpha₁₃)
ee8faf27c67d4f07a88fbc7705274bae--8678bbe739c142b1baeeaffb4d1953aa
b8d177b0b32645f59951ede264616942
8678bbe739c142b1baeeaffb4d1953aa--b8d177b0b32645f59951ede264616942
edb750492aac4051b084668e3fc802d4
b8d177b0b32645f59951ede264616942--edb750492aac4051b084668e3fc802d4
68b9c014bbc341b7bd50ee484524b081
RX(gamma₁₀)
edb750492aac4051b084668e3fc802d4--68b9c014bbc341b7bd50ee484524b081
63fa17587c044a61b2420dc32327f5e3
68b9c014bbc341b7bd50ee484524b081--63fa17587c044a61b2420dc32327f5e3
3c31fe8aee5249359f71e96d0f49999b
63fa17587c044a61b2420dc32327f5e3--3c31fe8aee5249359f71e96d0f49999b
eb866fd13672426aaed5118d080392b1
RY(beta₁₃)
3c31fe8aee5249359f71e96d0f49999b--eb866fd13672426aaed5118d080392b1
6540392ed18b4a0fb674f3fe6d90a351
RX(beta₁₀)
eb866fd13672426aaed5118d080392b1--6540392ed18b4a0fb674f3fe6d90a351
7eef3c81373f43fca5e9f1dd2c047ee0
6540392ed18b4a0fb674f3fe6d90a351--7eef3c81373f43fca5e9f1dd2c047ee0
058f18bcf74941c3b1949884745c3e3c
c9d3d8550ff14019bf3cef3e1cbc43f9
RX(alpha₀₁)
19714666e2324bd9841b2a2550edc070--c9d3d8550ff14019bf3cef3e1cbc43f9
0e4eac0ec1774525a3d42315255c3d5b
2
3a77f80130cc4e23bbe050b62f35803e
RY(alpha₀₄)
c9d3d8550ff14019bf3cef3e1cbc43f9--3a77f80130cc4e23bbe050b62f35803e
c38507fa2b4548abb235d8d0527b4e2f
X
3a77f80130cc4e23bbe050b62f35803e--c38507fa2b4548abb235d8d0527b4e2f
c38507fa2b4548abb235d8d0527b4e2f--cc4edda15a964666a4218df5be9598eb
11d6ecb5f4ac444bafad45553d1aa91d
c38507fa2b4548abb235d8d0527b4e2f--11d6ecb5f4ac444bafad45553d1aa91d
620cf5b0154c45c5bebf4e647d393feb
RX(gamma₀₁)
11d6ecb5f4ac444bafad45553d1aa91d--620cf5b0154c45c5bebf4e647d393feb
8c0f9d1dfce547578addee96b46e122a
620cf5b0154c45c5bebf4e647d393feb--8c0f9d1dfce547578addee96b46e122a
be640405a98e4386b6039fe03e7a3628
X
8c0f9d1dfce547578addee96b46e122a--be640405a98e4386b6039fe03e7a3628
be640405a98e4386b6039fe03e7a3628--e071cdc6ab224ec9b52cfb4dac8f1d0f
21c2ddc916a34e85834966ce6061522b
RY(beta₀₄)
be640405a98e4386b6039fe03e7a3628--21c2ddc916a34e85834966ce6061522b
49f88541d4a64e4ba47726b14ef00f68
RX(beta₀₁)
21c2ddc916a34e85834966ce6061522b--49f88541d4a64e4ba47726b14ef00f68
6e85e8d376634f41a3988a7b2283f2b4
RX(alpha₁₁)
49f88541d4a64e4ba47726b14ef00f68--6e85e8d376634f41a3988a7b2283f2b4
075a6efc245345acb5a4d3621f9c3243
RY(alpha₁₄)
6e85e8d376634f41a3988a7b2283f2b4--075a6efc245345acb5a4d3621f9c3243
f7f28ad5961e4b2dbb01ae500560aff6
X
075a6efc245345acb5a4d3621f9c3243--f7f28ad5961e4b2dbb01ae500560aff6
f7f28ad5961e4b2dbb01ae500560aff6--b8d177b0b32645f59951ede264616942
de8561eacc2c4ce1b68e5712241f9a3f
f7f28ad5961e4b2dbb01ae500560aff6--de8561eacc2c4ce1b68e5712241f9a3f
db22bd5079354016bf58aff19f36f141
RX(gamma₁₁)
de8561eacc2c4ce1b68e5712241f9a3f--db22bd5079354016bf58aff19f36f141
8248a58c3f1e484b99b0747d96bb1bb5
db22bd5079354016bf58aff19f36f141--8248a58c3f1e484b99b0747d96bb1bb5
601655d0f2c64b10beee0f83f4c0b83c
X
8248a58c3f1e484b99b0747d96bb1bb5--601655d0f2c64b10beee0f83f4c0b83c
601655d0f2c64b10beee0f83f4c0b83c--3c31fe8aee5249359f71e96d0f49999b
07430f358158425d85f00aaeb0cc6a47
RY(beta₁₄)
601655d0f2c64b10beee0f83f4c0b83c--07430f358158425d85f00aaeb0cc6a47
b64d4c7683024d0796d67f86d0dbb38e
RX(beta₁₁)
07430f358158425d85f00aaeb0cc6a47--b64d4c7683024d0796d67f86d0dbb38e
b64d4c7683024d0796d67f86d0dbb38e--058f18bcf74941c3b1949884745c3e3c
1b3c18d90b784c99bb293e61bc67e1ce
5a865f4066b8449a970b31e503aad41f
RX(alpha₀₂)
0e4eac0ec1774525a3d42315255c3d5b--5a865f4066b8449a970b31e503aad41f
47344108432d426895bb5b54b8d63aac
RY(alpha₀₅)
5a865f4066b8449a970b31e503aad41f--47344108432d426895bb5b54b8d63aac
8b83e7e25403440da59ebc95525efc06
47344108432d426895bb5b54b8d63aac--8b83e7e25403440da59ebc95525efc06
d914256a91a64c5b801624627cd26075
X
8b83e7e25403440da59ebc95525efc06--d914256a91a64c5b801624627cd26075
d914256a91a64c5b801624627cd26075--11d6ecb5f4ac444bafad45553d1aa91d
4ad0cefea6054ca1ba9d7b288fc43f04
RX(gamma₀₂)
d914256a91a64c5b801624627cd26075--4ad0cefea6054ca1ba9d7b288fc43f04
8d60d59d63be45b5bbba957b3ffa8150
X
4ad0cefea6054ca1ba9d7b288fc43f04--8d60d59d63be45b5bbba957b3ffa8150
8d60d59d63be45b5bbba957b3ffa8150--8c0f9d1dfce547578addee96b46e122a
e9aa665d65714dfa9e61193cf8b05140
8d60d59d63be45b5bbba957b3ffa8150--e9aa665d65714dfa9e61193cf8b05140
3939d733bfd241a6bca914465de0232d
RY(beta₀₅)
e9aa665d65714dfa9e61193cf8b05140--3939d733bfd241a6bca914465de0232d
28ab65a65a1e44a1908c61fb07cd40e2
RX(beta₀₂)
3939d733bfd241a6bca914465de0232d--28ab65a65a1e44a1908c61fb07cd40e2
638d41348a4e48c6ba37643df105975c
RX(alpha₁₂)
28ab65a65a1e44a1908c61fb07cd40e2--638d41348a4e48c6ba37643df105975c
81665203ce434253ad0b516d0975fbed
RY(alpha₁₅)
638d41348a4e48c6ba37643df105975c--81665203ce434253ad0b516d0975fbed
6cfa33fed8404920912a1c4d1b0da5c0
81665203ce434253ad0b516d0975fbed--6cfa33fed8404920912a1c4d1b0da5c0
c5ae91a147294724913a546af6f5cb28
X
6cfa33fed8404920912a1c4d1b0da5c0--c5ae91a147294724913a546af6f5cb28
c5ae91a147294724913a546af6f5cb28--de8561eacc2c4ce1b68e5712241f9a3f
37f7e70bedfb4b2394230decea644d9a
RX(gamma₁₂)
c5ae91a147294724913a546af6f5cb28--37f7e70bedfb4b2394230decea644d9a
a2ff05e603c046549f9d3a416b9a7191
X
37f7e70bedfb4b2394230decea644d9a--a2ff05e603c046549f9d3a416b9a7191
a2ff05e603c046549f9d3a416b9a7191--8248a58c3f1e484b99b0747d96bb1bb5
fb3066282aa34bfca3bc642a6acef3b2
a2ff05e603c046549f9d3a416b9a7191--fb3066282aa34bfca3bc642a6acef3b2
5c57b953ec9e4b8eb954394a639c0088
RY(beta₁₅)
fb3066282aa34bfca3bc642a6acef3b2--5c57b953ec9e4b8eb954394a639c0088
6b98815142b042b5a333cc65cacdd2a6
RX(beta₁₂)
5c57b953ec9e4b8eb954394a639c0088--6b98815142b042b5a333cc65cacdd2a6
6b98815142b042b5a333cc65cacdd2a6--1b3c18d90b784c99bb293e61bc67e1ce