Entanglement entropy and spectrum
The examples on this page use MPSKit.jl, TensorKit.jl, and TensorKitTensors.jl. See Installation for how to add these packages to your environment.
This page collects recipes for extracting the entanglement entropy and the entanglement spectrum from the gauge (bond) tensors of an MPS. For general expectation values and correlators see Computing observables; for building the state objects used below see Constructing states. The reference page for these and related functions is Observables and analysis.
using MPSKit, TensorKit
using TensorKitTensors.SpinOperators: σˣ, σᶻSetup: a TFIM ground state
The examples below reuse a spin-1/2 FiniteMPS and the transverse-field Ising Hamiltonian, optimized with DMRG so the entanglement structure reflects an actual ground state rather than a random tensor:
L = 8
ψ0 = FiniteMPS(L, ℂ^2, ℂ^8)
# single-site Pauli operators
X = σˣ()
Z = σᶻ()
lattice = fill(ℂ^2, L)
H = FiniteMPOHamiltonian(lattice, (i, i + 1) => -(X ⊗ X) for i in 1:(L - 1)) +
FiniteMPOHamiltonian(lattice, (i,) => -0.5 * Z for i in 1:L)
ψ, envs, _ = find_groundstate(ψ0, H, DMRG(; maxiter = 10))(FiniteMPS{TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}, TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 1, 1, Vector{ComplexF64}}}(Union{Missing, TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}}[TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.8312509931738166 + 0.5558898508888338im, 0.0023406101631517746 + 0.0016678040646519892im, 0.0023338071603880343 - 0.0016773104876678657im, -0.8289830856948042 + 0.559266290424863im], (ℂ^1 ⊗ ℂ^2) ← ℂ^2), missing, missing, missing, missing, missing, missing, missing], Union{Missing, TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}}[missing, TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.5448546712496469 + 0.6225018428461623im, 0.014162296856608742 - 0.028770010677456673im, 0.01763152684995859 + 0.01989918418172725im, 0.3019769639521415 - 0.6034836378248185im, 0.034982035268095485 + 0.009890687323885712im, 0.08705888762630187 + 0.7311617962850852im, -0.5397531072781407 - 0.14900065387056524im, -0.003557212652879966 - 0.03141267600097634im, 0.00019352452708859368 - 5.0548265145741935e-5im, -0.006920115558562322 - 0.013589501844886111im, -0.006873099829379989 + 0.0005730263739503233im, 0.0003786907724243821 + 0.00047948006466525276im, 0.0033309501218970515 + 0.0017384787555315903im, -0.00020099458914161038 + 0.0006859049922237139im, 0.00022992805702546723 + 0.00019018817442165663im, -0.001247092013156985 + 0.01333768142634625im], (ℂ^2 ⊗ ℂ^2) ← ℂ^4), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.6394713819320914 + 0.4979007627988395im, -0.029043139803623386 - 0.08646345307655837im, -0.00828463582221538 + 0.12952971476515243im, 0.2783889081134176 + 0.4677877838803342im, 0.0989175625579327 + 0.07725966754965803im, -0.20296043540336436 - 0.5988522510488727im, 0.020171170265617263 - 0.7385327140822909im, -0.04554311727248063 - 0.0891141782386004im, 0.06647017584952056 - 0.0783666971772233im, 0.7272584623118392 - 0.21114710467768966im … 0.00011630454046163099 + 4.75499254280441e-5im, 1.4197436793264342e-5 - 5.6223209927062374e-5im, 4.417913455947723e-9 - 5.248619789107546e-9im, 1.6847602648762808e-9 - 2.291226967625226e-8im, -2.8504831125734364e-5 + 7.151128799014295e-5im, 4.592960937870554e-5 - 3.80847093648868e-5im, -5.304387802277773e-9 - 8.446728717104756e-9im, 8.801957009544453e-9 - 4.407339096487507e-9im, 4.156206372181758e-5 + 3.0823414520757338e-6im, 2.340951137258092e-5 + 0.00016486745890808608im], (ℂ^4 ⊗ ℂ^2) ← ℂ^8), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-0.4346899194084759 - 0.6858473009874346im, -0.04643450927265394 + 0.032489408931516334im, 0.16936908483382643 - 0.17842418994639805im, -0.06602733806736269 - 0.4991433718385394im, 0.06778652638717318 - 0.011822160598283409im, -0.1315589070441537 + 0.02642339955793235im, 0.008224574327183511 - 0.009802000720115703im, 0.001783694458849897 - 0.0036917859410077816im, -0.1322187917058496 - 0.2085107956951115im, -0.48334322264737095 + 0.3372267063174906im … 0.015735873577010586 + 0.001685427945622831im, -0.0028742601789764066 - 0.018750523619431338im, -1.0728853169391276e-9 + 2.287885526790807e-8im, 1.476578977455291e-8 + 2.2359776202937377e-11im, 9.066202579233762e-5 - 1.8282332001408067e-5im, 6.637576359001845e-5 - 0.0001274551593347833im, -0.0012971149001430441 - 0.0006220557094282508im, 0.001970903720015287 + 0.0008586855431239944im, 0.020323602366598643 - 0.003542667578343156im, 0.0035038444565786333 - 0.00845341154431467im], (ℂ^8 ⊗ ℂ^2) ← ℂ^8), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.6813597155094124 + 0.46042894794522216im, 0.07424402501867454 - 0.0007307160131953816im, -0.18266779944784475 + 0.16297491991684465im, 0.12252426487922609 + 0.47247044577051767im, 0.03505402887653042 - 0.05189135278313485im, -0.12495974919917949 - 0.011847262034407212im, 0.007554997488100844 - 0.006557309901784785im, 0.007135427673656797 - 0.00011574623299466269im, 0.21475388585666402 + 0.1454802503504291im, -0.6019183177294344 + 0.002367122278189459im … 0.004008723047349432 - 0.007339148748143843im, -0.008838391701426085 + 0.012070222110404833im, 1.4528993553421165e-8 - 4.856904517450936e-9im, 7.982354167209572e-9 + 1.2155424279791994e-9im, -2.0838521511324416e-5 - 2.6208280508290665e-5im, -9.007105269425145e-5 - 5.7187434335658015e-5im, -0.0002734952021623709 - 0.0002693846368271663im, -0.0013443432367111741 + 0.0011274831810907963im, -0.0023246341999470853 + 0.013691641915517989im, -0.0017346689015231465 + 0.006829715226272277im], (ℂ^8 ⊗ ℂ^2) ← ℂ^8), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.5629457271167542 + 0.6304861563337315im, -0.11640496382321108 - 0.008969118535510662im, 0.09690066808590264 - 0.08169937279454804im, 0.3119119243485747 + 0.3842456118923883im, 0.03222782021562583 + 0.06282528345494884im, -0.07627740611610276 - 0.0079016847867254im, -0.004939067449864783 - 0.007486852567744409im, 0.001921766263146961 - 0.0001415100162211677im, 0.10080520695090048 + 0.11207629325457802im, 0.6813835350361487 + 0.04839491712382016im … -0.5469075563132507 - 0.4119426332414807im, 0.14418989073093463 - 0.0032574937683147974im, -0.0011805976128793517 - 0.0005555826963435478im, -0.008792863454728054 + 0.0022660047770862997im, -0.05378958817563703 + 0.08601304003662869im, 0.01911607536374613 + 0.014143452449084729im, 0.00023756099998738234 + 0.37665402294037im, 0.28028987004546724 + 0.20079649039533407im, 0.10946126304388407 - 0.13109016242164573im, -0.2112024919211306 - 0.8090339802706984im], (ℂ^8 ⊗ ℂ^2) ← ℂ^4), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.5631502162457973 + 0.7033102490851971im, 0.043921935379373334 + 0.0039364321284089225im, 0.0035035805710780885 + 0.01748116887034212im, 0.1478963468598735 + 0.4050687593634828im, 0.025572483717508608 + 0.03213204111361958im, -0.787517032791607 - 0.07264230699311713im, -0.2571898736429856 - 0.5534322057512234im, 0.012333168249080087 + 0.016360128422217998im, -0.021610965835950763 + 0.01882735437872231im, 0.031251241490258375 - 0.6091432139458373im, -0.7034463422224099 + 0.36247487126566125im, 0.024093633665187995 - 0.0184691587098975im, -0.32513889807440494 + 0.28283087053240424im, -0.0012626073101536213 + 0.02370014819116412im, 0.03140708932411686 - 0.006091161300666172im, 0.8335057220355573 - 0.34347169935748945im], (ℂ^4 ⊗ ℂ^2) ← ℂ^2), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.9239167717081598 + 0.3825857190943066im, -0.0008372381480207722 + 0.0022946750854065173im, 0.002171029486843297 + 0.001119433978108396im, 0.41989055617488713 - 0.9075714596293117im], (ℂ^2 ⊗ ℂ^2) ← ℂ^1)], Union{Missing, TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}}[TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.7170440143187778 + 0.4795152047620457im, 0.0006943951030247695 + 0.000494791910781382im, 0.001180621172858974 - 0.0008485140969701373im, -0.4193641186491704 + 0.2829203864607676im], (ℂ^1 ⊗ ℂ^2) ← ℂ^2), missing, missing, missing, missing, missing, missing, missing], Union{Missing, TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 1, 1, Vector{ComplexF64}}}[missing, TensorMap{ComplexF64, TensorKit.ComplexSpace, 1, 1, Vector{ComplexF64}}(ComplexF64[0.8626036352501217 + 0.0im, 0.0005702252142650585 + 0.001523275565390718im, 0.0 - 0.0im, 0.505877774692694 + 0.0im], ℂ^2 ← ℂ^2), missing, missing, missing, missing, missing, missing, missing]), MPSKit.FiniteEnvironments{Nothing, FiniteMPOHamiltonian{JordanMPOTensor{ComplexF64, TensorKit.ComplexSpace, Vector{ComplexF64}}}, TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}, BlockTensorKit.BlockTensorMap{TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}, ComplexF64, TensorKit.ComplexSpace, 2, 1, 3}}(nothing, JordanMPOTensor{ComplexF64, TensorKit.ComplexSpace, Vector{ComplexF64}}[JordanMPOTensor{ComplexF64, TensorKit.ComplexSpace, Vector{ComplexF64}}(BlockTensorKit.SparseBlockTensorMap{TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}, ComplexF64, TensorKit.ComplexSpace, 2, 2, 4}(Dict{CartesianIndex{4}, TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}}(CartesianIndex(1, 1, 1, 3) => TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}(ComplexF64[-0.5 + 0.0im, 0.0 + 0.0im, 0.0 + 0.0im, 0.5 + 0.0im], (ℂ^1 ⊗ ℂ^2) ← (ℂ^2 ⊗ ℂ^1)), CartesianIndex(1, 1, 1, 2) => TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}(ComplexF64[0.0 + 0.0im, 0.7071067811865475 + 0.0im, 0.7071067811865472 + 0.0im, 0.0 + 0.0im], (ℂ^1 ⊗ ℂ^2) ← (ℂ^2 ⊗ ℂ^1))), (⊞(ℂ^1) ⊗ ⊞(ℂ^2)) ← (⊞(ℂ^2) ⊗ (ℂ^1 ⊞ ℂ^1 ⊞ ℂ^1))), Dict{CartesianIndex{4}, ComplexF64}(CartesianIndex(1, 1, 1, 1) => 1.0 + 0.0im)), JordanMPOTensor{ComplexF64, TensorKit.ComplexSpace, Vector{ComplexF64}}(BlockTensorKit.SparseBlockTensorMap{TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}, ComplexF64, TensorKit.ComplexSpace, 2, 2, 4}(Dict{CartesianIndex{4}, TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}}(CartesianIndex(2, 1, 1, 3) => TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}(ComplexF64[0.0 + 0.0im, -1.414213562373095 + 0.0im, -1.4142135623730951 + 0.0im, 0.0 + 0.0im], (ℂ^1 ⊗ ℂ^2) ← (ℂ^2 ⊗ ℂ^1)), CartesianIndex(1, 1, 1, 3) => TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}(ComplexF64[-0.5 + 0.0im, 0.0 + 0.0im, 0.0 + 0.0im, 0.5 + 0.0im], (ℂ^1 ⊗ ℂ^2) ← (ℂ^2 ⊗ ℂ^1)), CartesianIndex(1, 1, 1, 2) => TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}(ComplexF64[0.0 + 0.0im, 0.7071067811865475 + 0.0im, 0.7071067811865472 + 0.0im, 0.0 + 0.0im], (ℂ^1 ⊗ ℂ^2) ← (ℂ^2 ⊗ ℂ^1))), ((ℂ^1 ⊞ ℂ^1 ⊞ ℂ^1) ⊗ ⊞(ℂ^2)) ← (⊞(ℂ^2) ⊗ (ℂ^1 ⊞ ℂ^1 ⊞ ℂ^1))), Dict{CartesianIndex{4}, ComplexF64}(CartesianIndex(3, 1, 1, 3) => 1.0 + 0.0im, CartesianIndex(1, 1, 1, 1) => 1.0 + 0.0im)), JordanMPOTensor{ComplexF64, TensorKit.ComplexSpace, Vector{ComplexF64}}(BlockTensorKit.SparseBlockTensorMap{TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}, ComplexF64, TensorKit.ComplexSpace, 2, 2, 4}(Dict{CartesianIndex{4}, TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}}(CartesianIndex(2, 1, 1, 3) => TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}(ComplexF64[0.0 + 0.0im, -1.414213562373095 + 0.0im, -1.4142135623730951 + 0.0im, 0.0 + 0.0im], (ℂ^1 ⊗ ℂ^2) ← (ℂ^2 ⊗ ℂ^1)), CartesianIndex(1, 1, 1, 3) => TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}(ComplexF64[-0.5 + 0.0im, 0.0 + 0.0im, 0.0 + 0.0im, 0.5 + 0.0im], (ℂ^1 ⊗ ℂ^2) ← (ℂ^2 ⊗ ℂ^1)), CartesianIndex(1, 1, 1, 2) => TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}(ComplexF64[0.0 + 0.0im, 0.7071067811865475 + 0.0im, 0.7071067811865472 + 0.0im, 0.0 + 0.0im], (ℂ^1 ⊗ ℂ^2) ← (ℂ^2 ⊗ ℂ^1))), ((ℂ^1 ⊞ ℂ^1 ⊞ ℂ^1) ⊗ ⊞(ℂ^2)) ← (⊞(ℂ^2) ⊗ (ℂ^1 ⊞ ℂ^1 ⊞ ℂ^1))), Dict{CartesianIndex{4}, ComplexF64}(CartesianIndex(3, 1, 1, 3) => 1.0 + 0.0im, CartesianIndex(1, 1, 1, 1) => 1.0 + 0.0im)), JordanMPOTensor{ComplexF64, TensorKit.ComplexSpace, Vector{ComplexF64}}(BlockTensorKit.SparseBlockTensorMap{TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}, ComplexF64, TensorKit.ComplexSpace, 2, 2, 4}(Dict{CartesianIndex{4}, TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}}(CartesianIndex(2, 1, 1, 3) => TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}(ComplexF64[0.0 + 0.0im, -1.414213562373095 + 0.0im, -1.4142135623730951 + 0.0im, 0.0 + 0.0im], (ℂ^1 ⊗ ℂ^2) ← (ℂ^2 ⊗ ℂ^1)), CartesianIndex(1, 1, 1, 3) => TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}(ComplexF64[-0.5 + 0.0im, 0.0 + 0.0im, 0.0 + 0.0im, 0.5 + 0.0im], (ℂ^1 ⊗ ℂ^2) ← (ℂ^2 ⊗ ℂ^1)), CartesianIndex(1, 1, 1, 2) => TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}(ComplexF64[0.0 + 0.0im, 0.7071067811865475 + 0.0im, 0.7071067811865472 + 0.0im, 0.0 + 0.0im], (ℂ^1 ⊗ ℂ^2) ← (ℂ^2 ⊗ ℂ^1))), ((ℂ^1 ⊞ ℂ^1 ⊞ ℂ^1) ⊗ ⊞(ℂ^2)) ← (⊞(ℂ^2) ⊗ (ℂ^1 ⊞ ℂ^1 ⊞ ℂ^1))), Dict{CartesianIndex{4}, ComplexF64}(CartesianIndex(3, 1, 1, 3) => 1.0 + 0.0im, CartesianIndex(1, 1, 1, 1) => 1.0 + 0.0im)), JordanMPOTensor{ComplexF64, TensorKit.ComplexSpace, Vector{ComplexF64}}(BlockTensorKit.SparseBlockTensorMap{TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}, ComplexF64, TensorKit.ComplexSpace, 2, 2, 4}(Dict{CartesianIndex{4}, TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}}(CartesianIndex(2, 1, 1, 3) => TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}(ComplexF64[0.0 + 0.0im, -1.414213562373095 + 0.0im, -1.4142135623730951 + 0.0im, 0.0 + 0.0im], (ℂ^1 ⊗ ℂ^2) ← (ℂ^2 ⊗ ℂ^1)), CartesianIndex(1, 1, 1, 3) => TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}(ComplexF64[-0.5 + 0.0im, 0.0 + 0.0im, 0.0 + 0.0im, 0.5 + 0.0im], (ℂ^1 ⊗ ℂ^2) ← (ℂ^2 ⊗ ℂ^1)), CartesianIndex(1, 1, 1, 2) => TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}(ComplexF64[0.0 + 0.0im, 0.7071067811865475 + 0.0im, 0.7071067811865472 + 0.0im, 0.0 + 0.0im], (ℂ^1 ⊗ ℂ^2) ← (ℂ^2 ⊗ ℂ^1))), ((ℂ^1 ⊞ ℂ^1 ⊞ ℂ^1) ⊗ ⊞(ℂ^2)) ← (⊞(ℂ^2) ⊗ (ℂ^1 ⊞ ℂ^1 ⊞ ℂ^1))), Dict{CartesianIndex{4}, ComplexF64}(CartesianIndex(3, 1, 1, 3) => 1.0 + 0.0im, CartesianIndex(1, 1, 1, 1) => 1.0 + 0.0im)), JordanMPOTensor{ComplexF64, TensorKit.ComplexSpace, Vector{ComplexF64}}(BlockTensorKit.SparseBlockTensorMap{TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}, ComplexF64, TensorKit.ComplexSpace, 2, 2, 4}(Dict{CartesianIndex{4}, TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}}(CartesianIndex(2, 1, 1, 3) => TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}(ComplexF64[0.0 + 0.0im, -1.414213562373095 + 0.0im, -1.4142135623730951 + 0.0im, 0.0 + 0.0im], (ℂ^1 ⊗ ℂ^2) ← (ℂ^2 ⊗ ℂ^1)), CartesianIndex(1, 1, 1, 3) => TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}(ComplexF64[-0.5 + 0.0im, 0.0 + 0.0im, 0.0 + 0.0im, 0.5 + 0.0im], (ℂ^1 ⊗ ℂ^2) ← (ℂ^2 ⊗ ℂ^1)), CartesianIndex(1, 1, 1, 2) => TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}(ComplexF64[0.0 + 0.0im, 0.7071067811865475 + 0.0im, 0.7071067811865472 + 0.0im, 0.0 + 0.0im], (ℂ^1 ⊗ ℂ^2) ← (ℂ^2 ⊗ ℂ^1))), ((ℂ^1 ⊞ ℂ^1 ⊞ ℂ^1) ⊗ ⊞(ℂ^2)) ← (⊞(ℂ^2) ⊗ (ℂ^1 ⊞ ℂ^1 ⊞ ℂ^1))), Dict{CartesianIndex{4}, ComplexF64}(CartesianIndex(3, 1, 1, 3) => 1.0 + 0.0im, CartesianIndex(1, 1, 1, 1) => 1.0 + 0.0im)), JordanMPOTensor{ComplexF64, TensorKit.ComplexSpace, Vector{ComplexF64}}(BlockTensorKit.SparseBlockTensorMap{TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}, ComplexF64, TensorKit.ComplexSpace, 2, 2, 4}(Dict{CartesianIndex{4}, TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}}(CartesianIndex(2, 1, 1, 3) => TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}(ComplexF64[0.0 + 0.0im, -1.414213562373095 + 0.0im, -1.4142135623730951 + 0.0im, 0.0 + 0.0im], (ℂ^1 ⊗ ℂ^2) ← (ℂ^2 ⊗ ℂ^1)), CartesianIndex(1, 1, 1, 3) => TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}(ComplexF64[-0.5 + 0.0im, 0.0 + 0.0im, 0.0 + 0.0im, 0.5 + 0.0im], (ℂ^1 ⊗ ℂ^2) ← (ℂ^2 ⊗ ℂ^1)), CartesianIndex(1, 1, 1, 2) => TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}(ComplexF64[0.0 + 0.0im, 0.7071067811865475 + 0.0im, 0.7071067811865472 + 0.0im, 0.0 + 0.0im], (ℂ^1 ⊗ ℂ^2) ← (ℂ^2 ⊗ ℂ^1))), ((ℂ^1 ⊞ ℂ^1 ⊞ ℂ^1) ⊗ ⊞(ℂ^2)) ← (⊞(ℂ^2) ⊗ (ℂ^1 ⊞ ℂ^1 ⊞ ℂ^1))), Dict{CartesianIndex{4}, ComplexF64}(CartesianIndex(3, 1, 1, 3) => 1.0 + 0.0im, CartesianIndex(1, 1, 1, 1) => 1.0 + 0.0im)), JordanMPOTensor{ComplexF64, TensorKit.ComplexSpace, Vector{ComplexF64}}(BlockTensorKit.SparseBlockTensorMap{TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}, ComplexF64, TensorKit.ComplexSpace, 2, 2, 4}(Dict{CartesianIndex{4}, TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}}(CartesianIndex(2, 1, 1, 1) => TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}(ComplexF64[0.0 + 0.0im, -1.414213562373095 + 0.0im, -1.4142135623730951 + 0.0im, 0.0 + 0.0im], (ℂ^1 ⊗ ℂ^2) ← (ℂ^2 ⊗ ℂ^1)), CartesianIndex(1, 1, 1, 1) => TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 2, Vector{ComplexF64}}(ComplexF64[-0.5 + 0.0im, 0.0 + 0.0im, 0.0 + 0.0im, 0.5 + 0.0im], (ℂ^1 ⊗ ℂ^2) ← (ℂ^2 ⊗ ℂ^1))), ((ℂ^1 ⊞ ℂ^1 ⊞ ℂ^1) ⊗ ⊞(ℂ^2)) ← (⊞(ℂ^2) ⊗ ⊞(ℂ^1))), Dict{CartesianIndex{4}, ComplexF64}(CartesianIndex(3, 1, 1, 1) => 1.0 + 0.0im))], TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}[TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.8312509931738166 + 0.5558898508888338im, 0.0023406101631517746 + 0.0016678040646519892im, 0.0023338071603880343 - 0.0016773104876678657im, -0.8289830856948042 + 0.559266290424863im], (ℂ^1 ⊗ ℂ^2) ← ℂ^2), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.5931571380505225 + 0.6776856848114418im, 0.014688226379554636 - 0.029927801468912683im, 0.031704229012279386 + 0.03581185793040084im, 0.19273528688773367 - 0.3851762801225353im, 0.04938475528689373 + 0.013962857488594625im, 0.07208474977796286 + 0.605431235592805im, -0.7619789676034434 - 0.21034684724848748im, -0.003077300007168276 - 0.027491441964776396im, 0.027227171069200813 - 0.007339318571504206im, -0.35866532987823013 - 0.7043568167013609im, -0.607550553504179 + 0.05066692837504931im, 0.03269584251154997 + 0.04112955939957655im, 0.38179878125890776 + 0.19926718978561098im, -0.013610423452335773 + 0.04691271476041515im, 0.0263547182446418 + 0.021799669928017407im, -0.08385102708128644 + 0.8966244697453345im], (ℂ^2 ⊗ ℂ^2) ← ℂ^4), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.6659931928397378 + 0.5185657360247429im, -0.02827238728534662 - 0.08440494347674245im, -0.00011830987360251426 + 0.002126937346342124im, 0.0027058141588751847 + 0.004569740398860102im, 0.13052990085112237 + 0.10190418727889164im, -0.1611357103582623 - 0.475507910394917im, 0.0002641278030904694 - 0.009476144758322794im, -0.0005327279685960079 - 0.0011050089608474246im, 0.08025965038150432 - 0.09462414739560576im, 0.6809278918235246 - 0.19771839042667028im … 0.6191489310664222 + 0.24874083069925373im, 0.0708558095813145 - 0.30675718574707656im, 0.002202827707532948 - 0.0026170284259838727im, 0.0007267462905838503 - 0.008845495340420586im, -0.17503941165410264 + 0.43912885227097487im, 0.2135509165559269 - 0.19130970529231525im, -0.0026448350649844743 - 0.004211646117920867im, 0.003390990608326816 - 0.0018155080962092007im, 0.25521986602577446 + 0.018927712004626018im, 0.1061753098066327 + 0.7857639742463365im], (ℂ^4 ⊗ ℂ^2) ← ℂ^8), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-0.4393019001424001 - 0.6931152409860786im, -0.04328280446478773 + 0.03030507111184648im, 0.003152692132771193 - 0.00331633059825253im, -0.000873270929883015 - 0.0065729109401735im, 1.1792064080486961e-5 - 1.988575931523357e-6im, -1.6183386497109044e-5 + 3.330163632510649e-6im, 1.9945137851673234e-8 - 2.2893622792124137e-8im, 5.231048851604716e-9 - 9.800409998997055e-9im, -0.1528660775478631 - 0.24108636341905826im, -0.40353434645830194 + 0.28155340465782647im … 0.012283749196451725 + 0.0013156795155865886im, -0.0009953687236947673 - 0.012459930343814459im, -0.00035706383245652507 + 0.0076142497375902875im, 0.003889321957742442 + 5.287121303060999e-6im, 0.4802332000948625 - 0.09684079186478355im, 0.29383830710343795 - 0.5647725668707384im, -0.06453441241774394 - 0.030948629151513023im, 0.08187362351826899 + 0.03533318162262462im, 0.0158650207232098 - 0.0027654778351971694im, 0.003969251311356099 - 0.0054452688340375244im], (ℂ^8 ⊗ ℂ^2) ← ℂ^8), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.6725710132510687 + 0.4545356510148088im, 0.07247240313641434 - 0.0007979881281983681im, -0.003454481094230155 + 0.0030816094978487864im, 0.0017002925522617454 + 0.006555335345493965im, 7.294037999587221e-6 - 1.1835854003372511e-5im, -2.0541767061899613e-5 - 2.475397446124008e-6im, 2.3333907276523828e-8 - 2.0256151825540715e-8im, 2.6105761902069726e-8 - 4.227007061974179e-10im, 0.23634210251608065 + 0.16018842178914608im, -0.5040371367461832 + 0.0020363200989390634im … 0.006226123216942221 - 0.011398753120162116im, -0.011659110325051403 + 0.0170239306292649im, 0.006880888111730765 - 0.00230021552635834im, 0.003666810568856862 + 0.00018236675506297373im, -0.16561295074829913 - 0.2082888014228076im, -0.6305975068902477 - 0.4131322298445431im, -0.02568908664013281 - 0.02530298601311682im, -0.11418582172150032 + 0.09353925266728358im, -0.003610491121704973 + 0.021265088292823694im, -0.004046246990797914 + 0.011189876446974804im], (ℂ^8 ⊗ ℂ^2) ← ℂ^8), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.5382011427015867 + 0.6027191455841792im, -0.11908044923696248 - 0.009283608245622202im, 0.001738428570502628 - 0.0014608051400660676im, 0.003997896390434997 + 0.004922578322383877im, 4.170573412107992e-6 + 8.867147079617594e-6im, -8.412417712771365e-6 - 3.716595632226432e-7im, -1.1052343486506994e-8 - 1.7035283433344747e-8im, 5.073874041400633e-9 - 6.758894026200953e-10im, 0.10711819556964529 + 0.1190567574311452im, 0.5526768373928301 + 0.039262704218341715im … -0.00013031306086272812 - 9.815462379141026e-5im, 3.9967097366660794e-5 - 2.260302350854121e-6im, -0.11827504891960207 - 0.0556595828011663im, -0.7598208465994764 + 0.1952718722177706im, -0.08577377949912371 + 0.13715783630953024im, 0.03382401481088674 + 0.024424347311564287im, 3.347876754033639e-6 + 0.005308073493406113im, 0.004508478262251103 + 0.00328099209390956im, 2.608161484077418e-5 - 3.123518795142609e-5im, -4.36933608907017e-5 - 0.00016590588200062655im], (ℂ^8 ⊗ ℂ^2) ← ℂ^4), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.5165897191193012 + 0.6451450217652938im, 0.05094902691687618 + 0.00467098454575391im, 6.024291782975271e-5 + 0.00023373387365588371im, 0.0012871568537212508 + 0.0035278444333663754im, 0.024721330101930686 + 0.030807192754915252im, -0.5568158654698676 - 0.05137496169090333im, -0.0029067307293355327 - 0.006255624839350736im, 0.000170852649160658 + 0.00021840332880815317im, -0.03379775637179158 + 0.029444419154968572im, 0.03769966027477323 - 0.7346949346879874im, -0.013554595758786932 + 0.006984470680737556im, 0.0005918856753683619 - 0.0004582824620550968im, -0.5084902427558745 + 0.44232400019688345im, -0.002347385981594785 + 0.04649276751990413im, 0.0006051782121818691 - 0.00011736961894345032im, 0.012385138404646995 - 0.005103793216122097im], (ℂ^4 ⊗ ℂ^2) ← ℂ^2), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[1.0e-323 + 2.0e-323im, 2.5e-323 + 3.0e-323im, 1.4e-322 + 1.43e-322im, 1.5e-322 + 1.53e-322im], (ℂ^1 ⊗ ℂ^2) ← ℂ^2)], TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}[TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[1.0e-323 + 2.0e-323im, 2.5e-323 + 3.0e-323im, 1.4e-322 + 1.43e-322im, 1.5e-322 + 1.53e-322im], (ℂ^1 ⊗ ℂ^2) ← ℂ^2), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.5448546712496469 + 0.6225018428461623im, 0.014162296856608742 - 0.028770010677456673im, 0.01763152684995859 + 0.01989918418172725im, 0.3019769639521415 - 0.6034836378248185im, 0.034982035268095485 + 0.009890687323885712im, 0.08705888762630187 + 0.7311617962850852im, -0.5397531072781407 - 0.14900065387056524im, -0.003557212652879966 - 0.03141267600097634im, 0.00019352452708859368 - 5.0548265145741935e-5im, -0.006920115558562322 - 0.013589501844886111im, -0.006873099829379989 + 0.0005730263739503233im, 0.0003786907724243821 + 0.00047948006466525276im, 0.0033309501218970515 + 0.0017384787555315903im, -0.00020099458914161038 + 0.0006859049922237139im, 0.00022992805702546723 + 0.00019018817442165663im, -0.001247092013156985 + 0.01333768142634625im], (ℂ^2 ⊗ ℂ^2) ← ℂ^4), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.6394713819320914 + 0.4979007627988395im, -0.029043139803623386 - 0.08646345307655837im, -0.00828463582221538 + 0.12952971476515243im, 0.2783889081134176 + 0.4677877838803342im, 0.0989175625579327 + 0.07725966754965803im, -0.20296043540336436 - 0.5988522510488727im, 0.020171170265617263 - 0.7385327140822909im, -0.04554311727248063 - 0.0891141782386004im, 0.06647017584952056 - 0.0783666971772233im, 0.7272584623118392 - 0.21114710467768966im … 0.00011630454046163099 + 4.75499254280441e-5im, 1.4197436793264342e-5 - 5.6223209927062374e-5im, 4.417913455947723e-9 - 5.248619789107546e-9im, 1.6847602648762808e-9 - 2.291226967625226e-8im, -2.8504831125734364e-5 + 7.151128799014295e-5im, 4.592960937870554e-5 - 3.80847093648868e-5im, -5.304387802277773e-9 - 8.446728717104756e-9im, 8.801957009544453e-9 - 4.407339096487507e-9im, 4.156206372181758e-5 + 3.0823414520757338e-6im, 2.340951137258092e-5 + 0.00016486745890808608im], (ℂ^4 ⊗ ℂ^2) ← ℂ^8), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-0.4346899194084759 - 0.6858473009874346im, -0.04643450927265394 + 0.032489408931516334im, 0.16936908483382643 - 0.17842418994639805im, -0.06602733806736269 - 0.4991433718385394im, 0.06778652638717318 - 0.011822160598283409im, -0.1315589070441537 + 0.02642339955793235im, 0.008224574327183511 - 0.009802000720115703im, 0.001783694458849897 - 0.0036917859410077816im, -0.1322187917058496 - 0.2085107956951115im, -0.48334322264737095 + 0.3372267063174906im … 0.015735873577010586 + 0.001685427945622831im, -0.0028742601789764066 - 0.018750523619431338im, -1.0728853169391276e-9 + 2.287885526790807e-8im, 1.476578977455291e-8 + 2.2359776202937377e-11im, 9.066202579233762e-5 - 1.8282332001408067e-5im, 6.637576359001845e-5 - 0.0001274551593347833im, -0.0012971149001430441 - 0.0006220557094282508im, 0.001970903720015287 + 0.0008586855431239944im, 0.020323602366598643 - 0.003542667578343156im, 0.0035038444565786333 - 0.00845341154431467im], (ℂ^8 ⊗ ℂ^2) ← ℂ^8), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.6813597155094124 + 0.46042894794522216im, 0.07424402501867454 - 0.0007307160131953816im, -0.18266779944784475 + 0.16297491991684465im, 0.12252426487922609 + 0.47247044577051767im, 0.03505402887653042 - 0.05189135278313485im, -0.12495974919917949 - 0.011847262034407212im, 0.007554997488100844 - 0.006557309901784785im, 0.007135427673656797 - 0.00011574623299466269im, 0.21475388585666402 + 0.1454802503504291im, -0.6019183177294344 + 0.002367122278189459im … 0.004008723047349432 - 0.007339148748143843im, -0.008838391701426085 + 0.012070222110404833im, 1.4528993553421165e-8 - 4.856904517450936e-9im, 7.982354167209572e-9 + 1.2155424279791994e-9im, -2.0838521511324416e-5 - 2.6208280508290665e-5im, -9.007105269425145e-5 - 5.7187434335658015e-5im, -0.0002734952021623709 - 0.0002693846368271663im, -0.0013443432367111741 + 0.0011274831810907963im, -0.0023246341999470853 + 0.013691641915517989im, -0.0017346689015231465 + 0.006829715226272277im], (ℂ^8 ⊗ ℂ^2) ← ℂ^8), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.5629457271167542 + 0.6304861563337315im, -0.11640496382321108 - 0.008969118535510662im, 0.09690066808590264 - 0.08169937279454804im, 0.3119119243485747 + 0.3842456118923883im, 0.03222782021562583 + 0.06282528345494884im, -0.07627740611610276 - 0.0079016847867254im, -0.004939067449864783 - 0.007486852567744409im, 0.001921766263146961 - 0.0001415100162211677im, 0.10080520695090048 + 0.11207629325457802im, 0.6813835350361487 + 0.04839491712382016im … -0.5469075563132507 - 0.4119426332414807im, 0.14418989073093463 - 0.0032574937683147974im, -0.0011805976128793517 - 0.0005555826963435478im, -0.008792863454728054 + 0.0022660047770862997im, -0.05378958817563703 + 0.08601304003662869im, 0.01911607536374613 + 0.014143452449084729im, 0.00023756099998738234 + 0.37665402294037im, 0.28028987004546724 + 0.20079649039533407im, 0.10946126304388407 - 0.13109016242164573im, -0.2112024919211306 - 0.8090339802706984im], (ℂ^8 ⊗ ℂ^2) ← ℂ^4), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.5631502162457973 + 0.7033102490851971im, 0.043921935379373334 + 0.0039364321284089225im, 0.0035035805710780885 + 0.01748116887034212im, 0.1478963468598735 + 0.4050687593634828im, 0.025572483717508608 + 0.03213204111361958im, -0.787517032791607 - 0.07264230699311713im, -0.2571898736429856 - 0.5534322057512234im, 0.012333168249080087 + 0.016360128422217998im, -0.021610965835950763 + 0.01882735437872231im, 0.031251241490258375 - 0.6091432139458373im, -0.7034463422224099 + 0.36247487126566125im, 0.024093633665187995 - 0.0184691587098975im, -0.32513889807440494 + 0.28283087053240424im, -0.0012626073101536213 + 0.02370014819116412im, 0.03140708932411686 - 0.006091161300666172im, 0.8335057220355573 - 0.34347169935748945im], (ℂ^4 ⊗ ℂ^2) ← ℂ^2), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.9239167717081598 + 0.3825857190943066im, -0.0008372381480207722 + 0.0022946750854065173im, 0.002171029486843297 + 0.001119433978108396im, 0.41989055617488713 - 0.9075714596293117im], (ℂ^2 ⊗ ℂ^2) ← ℂ^1)], BlockTensorKit.BlockTensorMap{TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}, ComplexF64, TensorKit.ComplexSpace, 2, 1, 3}[BlockTensorKit.BlockTensorMap{TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}, ComplexF64, TensorKit.ComplexSpace, 2, 1, 3}(TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}[TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[1.0 + 0.0im], (ℂ^1 ⊗ (ℂ^1)') ← ℂ^1);;;], (⊞(ℂ^1) ⊗ ⊞((ℂ^1)')) ← ⊞(ℂ^1)), BlockTensorKit.BlockTensorMap{TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}, ComplexF64, TensorKit.ComplexSpace, 2, 1, 3}(TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}[TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[1.0000000000000004 + 0.0im, 2.168404344971009e-19 + 0.0im, 2.168404344971009e-19 + 0.0im, 1.0000000000000002 + 0.0im], (ℂ^2 ⊗ (ℂ^1)') ← ℂ^2) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.004062681835327984 - 1.0842021724855044e-19im, -0.26742770927364884 - 0.6545730783716619im, -0.26742770927364873 + 0.6545730783716617im, -0.004062681835327984 + 1.0842021724855044e-19im], (ℂ^2 ⊗ (ℂ^1)') ← ℂ^2) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-0.49999173997366625 + 0.0im, -0.001007579643064751 - 0.002691605723126169im, -0.001007579643064751 + 0.002691605723126169im, 0.49999173997366614 + 0.0im], (ℂ^2 ⊗ (ℂ^1)') ← ℂ^2);;;], (⊞(ℂ^2) ⊗ ((ℂ^1)' ⊞ (ℂ^1)' ⊞ (ℂ^1)')) ← ⊞(ℂ^2)), BlockTensorKit.BlockTensorMap{TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}, ComplexF64, TensorKit.ComplexSpace, 2, 1, 3}(TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}[TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[1.0000000000000004 - 5.551115123125783e-17im, 2.6020852139652106e-18 - 8.673617379884035e-19im, 2.6020852139652106e-18 + 6.938893903907228e-18im, 8.326672684688674e-17 + 5.551115123125783e-17im, 3.469446951953614e-18 - 7.806255641895632e-18im, 1.0000000000000004 + 2.7755575615628914e-17im, 1.1102230246251565e-16 + 0.0im, -6.288372600415926e-18 + 1.474514954580286e-17im, 1.3010426069826053e-18 - 3.469446951953614e-18im, 5.551115123125783e-17 + 0.0im, 0.9999999999999998 + 0.0im, -7.806255641895632e-18 + 0.0im, 1.3877787807814457e-16 - 5.551115123125783e-17im, -7.37257477290143e-18 - 1.6479873021779667e-17im, -4.7704895589362195e-18 + 4.336808689942018e-18im, 1.0000000000000002 + 6.179952383167375e-18im], (ℂ^4 ⊗ (ℂ^1)') ← ℂ^4) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.08122279902585294 - 3.469446951953614e-18im, -0.5734519233515667 - 0.37776828187405737im, -0.08769037224468915 - 0.1189727413515397im, 0.0006279687755532809 - 0.0015377967428068413im, -0.5734519233515667 + 0.3777682818740573im, -0.08122279902585293 + 0.0im, -0.0005469559514741443 + 0.001568439604321497im, 0.1444762740086105 - 0.031156392886555022im, -0.08769037224468906 + 0.11897274135153954im, -0.0005469559514741373 - 0.0015684396043214952im, -0.08147354230746418 + 0.0im, -0.5807417370130356 + 0.3664071820560267im, 0.0006279687755532809 + 0.0015377967428068379im, 0.14447627400861027 + 0.031156392886555008im, -0.5807417370130354 - 0.36640718205602657im, 0.08147354230746419 + 6.505213034913027e-19im], (ℂ^4 ⊗ (ℂ^1)') ← ℂ^4) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-1.4045896068709112 - 1.1102230246251565e-16im, -0.021601592725585646 - 0.01407431744030042im, -0.012815694140064594 - 0.020172950410670853im, -0.13952941711934613 - 0.054427211944831466im, -0.021601592725585646 + 0.014074317440300417im, -0.9686453688920613 + 2.7755575615628914e-17im, 0.2373624207625296 + 0.08720197334213975im, -0.022721148888546892 + 0.007837857912457828im, -0.012815694140064587 + 0.02017295041067084im, 0.23736242076252906 - 0.08720197334213954im, 0.9687135382161003 - 8.326672684688674e-17im, 0.019146169135022904 - 0.018106706053574614im, -0.13952941711934636 + 0.054427211944831466im, -0.022721148888546875 - 0.007837857912457818im, 0.019146169135022893 + 0.018106706053574607im, 1.4045214375468715 - 3.122502256758253e-17im], (ℂ^4 ⊗ (ℂ^1)') ← ℂ^4);;;], (⊞(ℂ^4) ⊗ ((ℂ^1)' ⊞ (ℂ^1)' ⊞ (ℂ^1)')) ← ⊞(ℂ^4)), BlockTensorKit.BlockTensorMap{TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}, ComplexF64, TensorKit.ComplexSpace, 2, 1, 3}(TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}[TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[1.0000000000000002 + 5.505346661750029e-17im, -6.62493781465969e-18 - 6.763928701924465e-17im, -6.302361370257834e-17 - 3.5195185352171165e-18im, 1.3416172085413814e-16 + 1.8061400254793597e-17im, 8.045573117364272e-17 - 3.7423197007970244e-17im, 4.2860697309290626e-17 + 2.6516445666809168e-17im, 4.929561583137362e-17 + 5.565880435165532e-17im, 8.641663424603796e-18 + 1.85361757317886e-18im, 4.986580471058266e-18 + 3.8336393338900343e-17im, 1.0000000000000009 - 3.9066272582595375e-17im … 1.0000000000000002 + 0.0im, 5.551115123125783e-17 + 1.0408340855860843e-17im, 1.973247953923618e-17 - 1.431146867680866e-17im, 1.8995222061946038e-16 - 2.3852447794681098e-17im, 2.220446049250313e-16 - 1.6306400674181987e-16im, 5.204170427930421e-17 - 7.806255641895632e-17im, -2.220446049250313e-16 - 4.163336342344337e-17im, 6.938893903907228e-17 + 2.7755575615628914e-17im, 1.1102230246251565e-16 + 3.469446951953614e-18im, 0.9999999999999998 + 1.0408340855860843e-17im], (ℂ^8 ⊗ (ℂ^1)') ← ℂ^8) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.2608379416556733 + 8.098035782703004e-18im, -0.028080140623549445 - 0.633153284639159im, -0.04152664851951408 - 0.16831375981976668im, 0.0006471545983353474 + 0.0007900544003295353im, 0.006386008507431799 - 0.013997304872030172im, 0.0004485500342675266 - 0.00024067323856474213im, 1.5819466353722763e-14 + 9.843417041570358e-14im, 1.7789936417766167e-13 - 4.2820181316352963e-14im, -0.02808014062354941 + 0.6331532846391589im, -0.2608379416556735 + 6.5642987198755645e-18im … 0.23191483292732198 + 2.7755575615628914e-17im, 0.08405468546528945 - 0.6394203062711402im, 1.7792559960094767e-13 + 4.2842736736742326e-14im, 7.767874884989645e-15 + 1.1636503392808972e-13im, 0.005275762850984271 + 0.000810636229715618im, 0.0090118523699158 + 0.011280978733468078im, -0.04029191965368306 - 0.04844567375258602im, -0.12101400083117357 + 0.10695894907320364im, 0.08405468546528944 + 0.6394203062711401im, -0.2319148329271787 + 0.0im], (ℂ^8 ⊗ (ℂ^1)') ← ℂ^8) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-2.377989089124132 - 7.203328199609757e-17im, -0.001790505178555236 - 0.04089045568272861im, -0.021789521081544055 - 0.08642314637472365im, -0.16262116751750755 - 0.075226725053924im, 0.0032110220545887116 - 0.007884600043121963im, -0.005829392261504343 + 0.01520028824530636im, -2.4807127465796295e-5 - 7.812964365126839e-5im, -1.115111486814296e-5 - 2.796115763948812e-5im, -0.00179050517855519 + 0.040890455682728616im, -2.1790900808091798 - 2.1785049903678473e-16im … 2.2048459399936187 + 2.7755575615628914e-17im, -0.06962236609135797 - 0.03588052368773487im, -1.1151114868151492e-5 + 2.7961157639548942e-5im, -3.311571410440431e-5 + 7.498655984554663e-5im, 0.0005553179526709279 - 0.015438352992609im, -0.0009338297862915845 + 0.011415724839150914im, -0.10645180095687568 + 0.12587618746634077im, -0.12925102029977137 - 0.0022516380993065563im, -0.06962236609135797 + 0.035880523687734936im, 2.3522332299455053 - 7.806255641895632e-17im], (ℂ^8 ⊗ (ℂ^1)') ← ℂ^8);;;], (⊞(ℂ^8) ⊗ ((ℂ^1)' ⊞ (ℂ^1)' ⊞ (ℂ^1)')) ← ⊞(ℂ^8)), BlockTensorKit.BlockTensorMap{TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}, ComplexF64, TensorKit.ComplexSpace, 2, 1, 3}(TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}[TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[1.0000000000000004 + 6.76276131276965e-17im, 1.5612533237958105e-18 - 2.0587176082311756e-17im, 4.318183010192641e-17 + 2.973459117402518e-17im, -3.3299354162319517e-16 - 3.4423389296748795e-17im, 1.1271334186383256e-18 - 1.729249845808619e-19im, 9.72431518017891e-17 - 8.056248239361429e-17im, 1.2660059775111537e-16 - 1.0571174279497384e-16im, 9.373484865145881e-17 - 5.616255660022084e-17im, 2.223991931539706e-17 + 1.1387297162507181e-17im, 1.000000000000001 - 1.1626879537902333e-18im … 1.0000000000000004 + 2.7755575615628914e-17im, -6.938893903907228e-17 - 1.3877787807814457e-16im, 3.903127820947816e-17 + 3.859759734048396e-17im, -1.1622647289044608e-16 - 4.2500725161431774e-17im, 7.28583859910259e-17 + 1.3877787807814457e-17im, 6.938893903907228e-18 + 6.938893903907228e-18im, 1.5265566588595902e-16 - 4.996003610813204e-16im, 2.220446049250313e-16 - 1.3877787807814457e-17im, -1.249000902703301e-16 + 1.942890293094024e-16im, 0.9999999999999996 + 0.0im], (ℂ^8 ⊗ (ℂ^1)') ← ℂ^8) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.36796597410889154 + 2.327423644761623e-17im, -0.476132964058203 + 0.3242810072156173im, 0.04368950321328686 - 0.17435329750622255im, 0.00025670048928178545 + 7.302550159328229e-5im, 0.005477480877043486 + 0.019759435715066682im, 0.00196300663041518 + 0.0024734883268844447im, 8.645136887106516e-12 - 2.725900234426835e-11im, 2.388224820163351e-10 - 2.2498006491025733e-10im, -0.476132964058203 - 0.3242810072156174im, -0.36796597410889137 + 3.763433143576026e-18im … -0.5708521523219519 + 1.3877787807814457e-17im, 0.28855387351309586 + 0.2410896338316357im, 2.3882244337518344e-10 + 2.2498003937262978e-10im, 4.281569434931576e-10 + 1.4719354120978911e-10im, -0.011030499558350228 + 0.009544046929839428im, 0.0034385764293721408 + 0.01434660503392042im, -0.05936445050744528 + 0.10932726744832601im, 0.12755801379253132 + 0.023670233695252896im, 0.2885538735130958 - 0.24108963383163556im, 0.5708521522935369 - 2.7755575615628914e-17im], (ℂ^8 ⊗ (ℂ^1)') ← ℂ^8) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-3.3964506265070074 + 3.5849710759794964e-16im, -0.024979749471340795 + 0.017014841504061066im, 0.03147066636464006 - 0.12513803303063403im, -0.12962145431593686 - 0.11444395779664643im, 0.0009627680668154758 + 0.01519133659006583im, 0.018571401651688125 - 0.009297959576418236im, -2.2832813845617245e-5 + 8.505672648423179e-5im, -7.111173541926844e-5 + 4.984407212827733e-5im, -0.02497974947134081 - 0.017014841504061042im, -3.3018153975843436 - 1.1107109752794525e-16im … 0.7119121689466005 + 1.734723475976807e-17im, -0.0359314232330514 - 0.03012454587928426im, -7.11117354191635e-5 - 4.984407212821167e-5im, 8.805841464995523e-5 + 1.2503265322000995e-6im, 0.019294088196635875 - 0.016694030363203605im, -0.001940333249906806 - 0.008079502463920307im, 0.0803579008216267 - 0.19452899295125547im, -0.07098871266449103 - 0.03480082666869369im, -0.03593142323305144 + 0.030124545879284287im, 0.7736825130867317 + 0.0im], (ℂ^8 ⊗ (ℂ^1)') ← ℂ^8);;;], (⊞(ℂ^8) ⊗ ((ℂ^1)' ⊞ (ℂ^1)' ⊞ (ℂ^1)')) ← ⊞(ℂ^8)), BlockTensorKit.BlockTensorMap{TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}, ComplexF64, TensorKit.ComplexSpace, 2, 1, 3}(TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}[TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[1.0000000000000009 + 5.058255925852149e-17im, -8.511002434145147e-17 + 1.1254897878533174e-16im, -4.9044575792772417e-17 - 6.844152514885824e-17im, -1.0691283369041237e-16 - 6.287076823033428e-17im, 9.269469054342319e-17 + 5.159282082510619e-17im, -1.6632762522418226e-16 + 2.6139782022568454e-16im, -8.899577958330717e-17 - 5.727832979557564e-17im, 6.703675605057731e-18 + 2.2135227923434554e-17im, -1.036975504354893e-16 - 9.970543532420495e-17im, 1.0000000000000007 + 7.870858286827874e-17im … 1.0000000000000013 + 2.7755575615628914e-17im, -8.673617379884035e-17 - 1.3877787807814457e-17im, -2.168404344971009e-17 - 2.688821387764051e-17im, 7.719519468096792e-17 + 8.673617379884035e-17im, 1.8041124150158794e-16 + 3.209238430557093e-16im, -5.898059818321144e-17 - 2.3592239273284576e-16im, 2.7755575615628914e-17 + 4.163336342344337e-17im, -5.551115123125783e-17 + 5.551115123125783e-17im, -7.28583859910259e-17 + 2.7755575615628914e-17im, 1.0000000000000009 + 0.0im], (ℂ^8 ⊗ (ℂ^1)') ← ℂ^8) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.27603385177279044 + 2.1366805508409327e-17im, 0.4481428376736517 - 0.43578607973370254im, -0.007846546494276989 + 0.18031868305596144im, 0.00062840509871786 + 0.0006418648664597013im, -0.011018560139634499 - 0.01382756303923881im, -0.012387794986474302 - 0.004086306755966997im, -1.6661914947506111e-12 - 2.456053039013806e-13im, -1.0392468108299846e-12 - 1.0269816907049063e-12im, 0.44814283767365176 + 0.4357860797337024im, -0.27603385177278994 + 5.503706413781887e-18im … 0.03111225271321361 + 0.0im, 0.5301300464913266 + 0.4300352998420086im, -1.0392761954844398e-12 + 1.0269682240021671e-12im, 3.175267665987691e-14 - 2.414659401248076e-12im, 0.0065419303988053954 - 0.0007391740538513058im, -0.01597158208453271 + 0.013576850473196872im, 0.10464289579713584 - 0.10051225011438897im, -0.029902420449145657 + 0.10310286039351162im, 0.5301300464913266 - 0.4300352998420086im, -0.031112252712398966 + 6.938893903907228e-18im], (ℂ^8 ⊗ (ℂ^1)') ← ℂ^8) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-4.444759771599293 + 1.8305071489289673e-16im, 0.009834632971827283 - 0.00949289334252851im, -0.0037111563052560116 + 0.09861466505894707im, -0.18515999127052446 - 0.008450366336427092im, -0.020003039240440133 - 0.007953596699997264im, 0.0089167984799156 - 0.012323089960325252im, 0.00011309975664197985 + 2.1323233348242742e-5im, -5.6476358776606285e-6 + 3.5082701058298227e-5im, 0.009834632971827325 + 0.009492893342528513im, -4.382852936276927 + 3.2063399455192495e-16im … -0.5521503486538077 - 3.972516759986888e-16im, 0.011007361040030333 - 0.01140662229953688im, -5.64763587771952e-6 - 3.508270105849996e-5im, 5.404987139141781e-6 - 0.00011496530003028693im, -0.018075400273499354 - 0.0164441115276492im, -0.010138589778517337 - 0.0018688164341075716im, -0.10928490460296242 + 0.0038380871590719956im, -0.1578037545655181 + 0.08822987996882875im, 0.01100736104003032 + 0.011406622299536852im, -0.49236151840142356 - 3.608224830031759e-16im], (ℂ^8 ⊗ (ℂ^1)') ← ℂ^8);;;], (⊞(ℂ^8) ⊗ ((ℂ^1)' ⊞ (ℂ^1)' ⊞ (ℂ^1)')) ← ⊞(ℂ^8)), BlockTensorKit.BlockTensorMap{TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}, ComplexF64, TensorKit.ComplexSpace, 2, 1, 3}(TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}[TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[1.0000000000000007 + 0.0im, 1.3877787807814457e-16 - 3.8163916471489756e-17im, -4.9873299934333204e-18 - 2.168404344971009e-17im, -8.326672684688674e-17 + 0.0im, 8.326672684688674e-17 + 4.163336342344337e-17im, 1.0000000000000009 + 1.1102230246251565e-16im, 1.6653345369377348e-16 + 2.498001805406602e-16im, -3.469446951953614e-18 - 1.1275702593849246e-17im, -2.7647155398380363e-17 + 7.806255641895632e-18im, 1.1102230246251565e-16 - 2.0816681711721685e-16im, 1.0000000000000009 + 5.551115123125783e-17im, -4.85722573273506e-17 + 1.3877787807814457e-17im, -8.326672684688674e-17 + 8.326672684688674e-17im, -2.0816681711721685e-17 + 2.5153490401663703e-17im, -6.245004513516506e-17 + 0.0im, 1.0000000000000004 + 7.632783294297951e-17im], (ℂ^4 ⊗ (ℂ^1)') ← ℂ^4) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.08940045330336234 + 0.0im, -0.47084314426595336 + 0.488308819194345im, -0.17217302449564897 - 0.04230852523615122im, -0.0025134224913771035 - 0.003223490420860349im, -0.4708431442659533 - 0.488308819194345im, -0.08940045330336224 + 0.0im, -0.0036621987098446034 - 0.001815622131161992im, 0.07598986864259405 + 0.16018458582310208im, -0.17217302449564867 + 0.04230852523615122im, -0.0036621987098445566 + 0.0018156221311619817im, -0.0632302500028031 - 1.3877787807814457e-17im, -0.678747676526906 - 0.05860663400998861im, -0.0025134224913770866 + 0.0032234904208603404im, 0.07598986864259391 - 0.16018458582310185im, -0.6787476765269062 + 0.058606634009988536im, 0.06323025000280294 - 1.3877787807814457e-17im], (ℂ^4 ⊗ (ℂ^1)') ← ℂ^4) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-5.503932218364069 + 4.440892098500626e-16im, -0.0026362390495409116 + 0.0027630616660809237im, -0.027541636347484126 - 0.009120135202496264im, -0.17394136061384785 - 0.05890250222105953im, -0.0026362390495412447 - 0.002763061666081007im, -5.4459798844117175 + 2.220446049250313e-16im, 0.1560172308497585 + 0.26778191193801926im, -0.014948540896112937 - 0.022232798086876674im, -0.02754163634748424 + 0.00912013520249648im, 0.1560172308497585 - 0.2677819119380186im, -3.6212670262951874 + 1.1102230246251565e-16im, 0.0027559671378816486 - 0.0005312204869031834im, -0.17394136061384835 + 0.058902502221060304im, -0.014948540896113027 + 0.022232798086876684im, 0.0027559671378811768 + 0.0005312204869034054im, -3.5630836964263244 + 6.106226635438361e-16im], (ℂ^4 ⊗ (ℂ^1)') ← ℂ^4);;;], (⊞(ℂ^4) ⊗ ((ℂ^1)' ⊞ (ℂ^1)' ⊞ (ℂ^1)')) ← ⊞(ℂ^4)), BlockTensorKit.BlockTensorMap{TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}, ComplexF64, TensorKit.ComplexSpace, 2, 1, 3}(TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}[TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[1.0000000000000007 + 5.551115123125783e-17im, -3.8163916471489756e-17 + 1.3183898417423734e-16im, 2.0816681711721685e-17 - 1.3183898417423734e-16im, 1.0000000000000009 + 5.551115123125783e-17im], (ℂ^2 ⊗ (ℂ^1)') ← ℂ^2) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.0057078323917803785 - 1.3877787807814457e-17im, 0.02800018982833255 - 0.6870035420613416im, 0.028000189828332522 + 0.6870035420613416im, -0.0057078323917808295 - 1.734723475976807e-17im], (ℂ^2 ⊗ (ℂ^1)') ← ℂ^2) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-6.57031999843062 + 8.881784197001252e-16im, -1.5635395592544787e-5 - 0.0003655851044767344im, -1.5635395592433765e-5 + 0.00036558510447670667im, -6.482468621403827 + 2.220446049250313e-16im], (ℂ^2 ⊗ (ℂ^1)') ← ℂ^2);;;], (⊞(ℂ^2) ⊗ ((ℂ^1)' ⊞ (ℂ^1)' ⊞ (ℂ^1)')) ← ⊞(ℂ^2)), BlockTensorKit.BlockTensorMap{TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}, ComplexF64, TensorKit.ComplexSpace, 2, 1, 3}(TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}[TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[6.8981458914205e-310 + 6.8981458914221e-310im], (ℂ^1 ⊗ (ℂ^1)') ← ℂ^1);;;], (⊞(ℂ^1) ⊗ ⊞((ℂ^1)')) ← ⊞(ℂ^1))], BlockTensorKit.BlockTensorMap{TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}, ComplexF64, TensorKit.ComplexSpace, 2, 1, 3}[BlockTensorKit.BlockTensorMap{TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}, ComplexF64, TensorKit.ComplexSpace, 2, 1, 3}(TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}[TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[6.89814589418254e-310 + 6.8981779298101e-310im], (ℂ^1 ⊗ ℂ^1) ← ℂ^1);;;], (⊞(ℂ^1) ⊗ ⊞(ℂ^1)) ← ⊞(ℂ^1)), BlockTensorKit.BlockTensorMap{TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}, ComplexF64, TensorKit.ComplexSpace, 2, 1, 3}(TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}[TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-6.570321272953444 - 4.440892098500626e-16im, -5.1913145257626025e-5 - 0.00013867858470717476im, -5.191314525766766e-5 + 0.0001386785847072025im, -6.482467346880995 - 2.220446049250313e-16im], (ℂ^2 ⊗ ℂ^1) ← ℂ^2) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-0.004633684637349138 + 2.0816681711721685e-17im, 0.5201038996371257 + 1.2730405687535622im, 0.5201038996371257 - 1.273040568753562im, 0.00463368463734919 + 6.938893903907228e-18im], (ℂ^2 ⊗ ℂ^1) ← ℂ^2) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[1.0000000000000002 + 0.0im, 1.0408340855860843e-17 + 2.7755575615628914e-17im, 3.122502256758253e-17 - 2.42861286636753e-17im, 0.9999999999999998 + 1.3877787807814457e-17im], (ℂ^2 ⊗ ℂ^1) ← ℂ^2);;;], (⊞(ℂ^2) ⊗ (ℂ^1 ⊞ ℂ^1 ⊞ ℂ^1)) ← ⊞(ℂ^2)), BlockTensorKit.BlockTensorMap{TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}, ComplexF64, TensorKit.ComplexSpace, 2, 1, 3}(TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}[TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-5.504062316948961 - 6.661338147750939e-16im, -0.00222115259023975 - 0.0014471713746188053im, -0.0121229291614538 - 0.01908248169248375im, -0.17160420512101712 - 0.06684367953949688im, -0.002221152590239972 + 0.0014471713746189163im, -5.4458497858268196 + 0.0im, 0.29140370223604517 + 0.10711154946516138im, -0.021492934790061993 + 0.007414174777341135im, -0.012122929161453785 + 0.019082481692483583im, 0.29140370223604606 - 0.10711154946516133im, -3.621276213908728 - 8.326672684688674e-17im, 0.001968801315906765 - 0.0018619132868100685im, -0.17160420512101754 + 0.06684367953949666im, -0.02149293479006213 - 0.0074141747773408834im, 0.0019688013159068762 + 0.0018619132868100963im, -3.5630745088128024 - 8.326672684688674e-16im], (ℂ^4 ⊗ ℂ^1) ← ℂ^4) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-0.12411901946351767 + 5.551115123125783e-17im, 1.1380316793481102 + 0.7496687319288565im, 0.21050786247210718 + 0.2854435928059242im, -0.001163668728861299 + 0.002849641655147882im, 1.1380316793481102 - 0.7496687319288564im, 0.12411901946351762 + 5.551115123125783e-17im, 0.0010135464716918875 - 0.002906424955681073im, -0.34672105215379195 + 0.07467340108697523im, 0.21050786247210684 - 0.2854435928059241im, 0.0010135464716918355 + 0.0029064249556810936im, 0.12451003689850246 - 2.42861286636753e-17im, 1.1521017009497685 - 0.727793764197296im, -0.0011636687288613667 - 0.002849641655147837im, -0.34672105215379184 - 0.07467340108697534im, 1.1521017009497685 + 0.7277937641972959im, -0.12451003689850246 - 2.7755575615628914e-17im], (ℂ^4 ⊗ ℂ^1) ← ℂ^4) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[1.0000000000000002 + 0.0im, -6.938893903907228e-18 + 2.7755575615628914e-17im, -3.2959746043559335e-17 - 1.1275702593849246e-17im, 2.3592239273284576e-16 + 1.6653345369377348e-16im, 3.469446951953614e-17 - 2.7755575615628914e-17im, 1.0000000000000002 + 1.3877787807814457e-17im, -2.220446049250313e-16 - 1.249000902703301e-16im, -1.5612511283791264e-17 + 2.949029909160572e-17im, -3.469446951953614e-17 + 5.4643789493269423e-17im, -2.220446049250313e-16 + 5.551115123125783e-17im, 1.0000000000000004 + 0.0im, -5.551115123125783e-17 - 6.938893903907228e-18im, 2.3592239273284576e-16 - 1.1102230246251565e-16im, -3.469446951953614e-17 - 4.336808689942018e-17im, -8.326672684688674e-17 - 2.0816681711721685e-17im, 1.0 + 0.0im], (ℂ^4 ⊗ ℂ^1) ← ℂ^4);;;], (⊞(ℂ^4) ⊗ (ℂ^1 ⊞ ℂ^1 ⊞ ℂ^1)) ← ⊞(ℂ^4)), BlockTensorKit.BlockTensorMap{TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}, ComplexF64, TensorKit.ComplexSpace, 2, 1, 3}(TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}[TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-4.445739813569237 - 2.931369203645058e-17im, -0.0004894918655509458 - 0.011178714072349123im, -0.019831521666591745 - 0.07865719000490193im, -0.17457328896243668 - 0.08080223618674495im, 0.00400050682197824 - 0.00982316400361349im, -0.00861971458900178 + 0.022359197734885605im, -3.671781538641191e-5 - 0.00010870566986452352im, -1.3579408699873776e-5 - 3.405004729827261e-5im, -0.0004894918655509556 + 0.011178714072349279im, -4.381872894306979 - 3.512542316873527e-17im … -0.5478730777555145 - 1.942890293094024e-16im, -0.019650729733742413 - 0.010127183447198599im, -1.3579408699729983e-5 + 3.405004729812103e-5im, -4.4424566746369826e-5 + 0.00010579025542142156im, 0.0015085180372013673 - 0.02294263295597926im, -0.0011808108986137295 + 0.014434977885727882im, -0.12085312249494407 + 0.1339311231518956im, -0.11966342707589857 - 0.0020846159336755377im, -0.01965072973374239 + 0.010127183447198668im, -0.49663878964951 - 2.914335439641036e-16im], (ℂ^8 ⊗ ℂ^1) ← ℂ^8) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-0.4519323414374413 - 1.7612396630277363e-19im, 0.05713008108280257 + 1.2885022712001255im, 0.0864235449050679 + 0.3504801929572927im, -0.0011711462192406973 - 0.0014297499026062733im, -0.01827499255296178 + 0.039943562392194126im, -0.0011141174578452324 + 0.0005977889558640034im, -6.774752105496904e-14 - 3.80022510363463e-13im, -1.0022811276653067e-12 + 3.5125658167435956e-13im, 0.05713008108280264 - 1.288502271200126im, 0.4519323414374415 + 2.7387880566219394e-17im … -0.41485009144124213 - 2.7755575615628914e-17im, -0.12707356539578274 + 1.295953896130991im, -1.0022330187986483e-12 - 3.5127456499139953e-13im, 3.603855495276642e-14 - 4.1283176963752277e-13im, -0.013299835049040726 - 0.002043558144058183im, -0.026723941749734678 - 0.03218433367123287im, 0.0741720259004448 + 0.08918199478121933im, 0.2511139924970491 - 0.23193890508268064im, -0.12707356539578285 - 1.2959538961309909im, 0.41485009144366786 - 1.3877787807814457e-17im], (ℂ^8 ⊗ ℂ^1) ← ℂ^8) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[1.0000000000000002 - 1.4763048829249387e-17im, -5.876844240260764e-18 + 3.1402878034065096e-17im, -1.7214093951146104e-17 + 4.965605509560582e-17im, -1.4577863642048729e-16 + 2.1580788666104998e-17im, -3.5248080204125876e-17 + 8.604515594888534e-17im, -2.3817054747710137e-17 + 4.63790203482308e-17im, -8.085907294354209e-17 + 3.718123441764746e-17im, -1.1252491015153498e-16 - 1.3759765232314592e-17im, 2.9550259229041384e-17 - 5.920997580273348e-17im, 1.0 + 3.1787614812723496e-17im … 1.0000000000000004 - 5.551115123125783e-17im, -2.949029909160572e-17 + 9.020562075079397e-17im, -1.0755285551056204e-16 + 4.336808689942018e-18im, 7.849623728795052e-17 + 1.5265566588595902e-16im, 1.491862189340054e-16 + 2.220446049250313e-16im, 6.938893903907228e-17 - 1.734723475976807e-17im, 5.551115123125783e-17 + 0.0im, -1.3877787807814457e-17 - 2.7755575615628914e-17im, -3.8163916471489756e-17 - 1.205632815803881e-16im, 1.0000000000000009 + 2.7755575615628914e-17im], (ℂ^8 ⊗ ℂ^1) ← ℂ^8);;;], (⊞(ℂ^8) ⊗ (ℂ^1 ⊞ ℂ^1 ⊞ ℂ^1)) ← ⊞(ℂ^8)), BlockTensorKit.BlockTensorMap{TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}, ComplexF64, TensorKit.ComplexSpace, 2, 1, 3}(TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}[TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-3.398214335043568 - 1.7828626776519558e-16im, -0.022535549906075956 + 0.015349986207731748im, 0.02839357422459311 - 0.11290247203556526im, -0.13528828776676943 - 0.11943041806286266im, 0.000869687038810574 + 0.013722628522819648im, 0.019187688350213877 - 0.009985321035137109im, -2.4535002268171797e-5 + 9.141384787806424e-5im, -6.519614551319884e-5 + 4.569758293604912e-5im, -0.02253554990607599 - 0.01534998620773176im, -3.300051689047778 - 1.0443925882435522e-16im … 0.7075282622742329 - 1.2836953722228372e-16im, -0.0334777694527813 - 0.02806742689568867im, -6.51961455131779e-5 - 4.569758293614546e-5im, 9.46395061681704e-5 + 1.339730723616539e-6im, 0.01923110967093916 - 0.016641071193228774im, -0.0017790629339345249 - 0.007407986314530268im, 0.0768549232188789 - 0.19572453571927573im, -0.06516752519929092 - 0.03194711810885673im, -0.0334777694527813 + 0.028067426895688613im, 0.7780664177644943 - 5.388484797252957e-17im], (ℂ^8 ⊗ ℂ^1) ← ℂ^8) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-0.6639230375609033 + 3.1515899544079896e-17im, 0.9877593167147046 - 0.6727381728884744im, -0.08736600093525282 + 0.3487099296569082im, -0.0004632024191243968 - 0.0001317706448057167im, -0.011332431839471451 - 0.03950529067346542im, -0.003546443806042839 - 0.004468699809794273im, -2.3304638811985498e-12 + 1.3571295033087033e-11im, -8.995112277753322e-11 + 8.955095493820556e-11im, 0.9877593167147046 + 0.6727381728884743im, 0.6639230375609032 + 2.6467034505339332e-18im … 1.0637405841721237 + 1.1102230246251565e-16im, -0.6589074632882606 - 0.550759331543421im, -8.995106352480131e-11 - 8.955093871304554e-11im, -1.468381462428614e-10 - 4.8776703162611845e-11im, 0.020227411432002473 - 0.017501597548137352im, -0.0073980307689906835 - 0.03084564142827345im, 0.1089930414537561 - 0.2007246985311838im, -0.2741123640759573 - 0.04386558125420352im, -0.6589074632882608 + 0.5507593315434212im, -1.0637405841645298 + 6.938893903907228e-18im], (ℂ^8 ⊗ ℂ^1) ← ℂ^8) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.9999999999999998 - 5.0457789828042524e-17im, -1.4432294102756762e-17 - 7.318431464444172e-18im, -3.354083516130648e-17 - 8.835257459893779e-17im, 1.2104676124124878e-16 + 4.3102149259933705e-17im, -3.969280563495304e-17 - 1.977267006909978e-17im, 1.2189227739921925e-16 - 2.6893675144204752e-17im, 9.785406555423252e-17 - 5.40607115207803e-17im, 3.2383270511423374e-17 - 5.1155111675148654e-17im, 4.588224747674061e-17 + 3.928761770936624e-17im, 1.0 + 5.7319622877088e-17im … 1.0 + 2.7755575615628914e-17im, 1.3877787807814457e-16 + 5.551115123125783e-17im, -3.469446951953614e-18 + 4.466912950640278e-17im, 5.204170427930421e-18 + 3.5561831257524545e-17im, -6.245004513516506e-17 + 2.1510571102112408e-16im, 6.591949208711867e-17 + 0.0im, -1.8735013540549517e-16 + 3.3306690738754696e-16im, -4.440892098500626e-16 + 6.938893903907228e-17im, 2.220446049250313e-16 - 5.551115123125783e-17im, 1.0000000000000002 - 9.540979117872439e-18im], (ℂ^8 ⊗ ℂ^1) ← ℂ^8);;;], (⊞(ℂ^8) ⊗ (ℂ^1 ⊞ ℂ^1 ⊞ ℂ^1)) ← ⊞(ℂ^8)), BlockTensorKit.BlockTensorMap{TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}, ComplexF64, TensorKit.ComplexSpace, 2, 1, 3}(TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}[TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-2.3792218571033654 + 8.14671511216985e-17im, 0.027193934639898096 - 0.026248983753538666im, -0.003083806875927888 + 0.08194442841018647im, -0.1818520208533731 - 0.008374413219282985im, -0.012934133878272532 - 0.005142862706760294im, 0.0076771807374385005 - 0.009125819776374822im, 8.312980498707564e-5 + 1.4519934319354085e-5im, -3.569540546943719e-6 + 2.217371955338677e-5im, 0.027193934639898176 + 0.02624898375353864im, -2.177857312829943 - 1.28613436117837e-16im … 2.1804154591675475 - 2.220446049250313e-16im, 0.030562279605972187 - 0.03167084074195903im, -3.5695405469454537e-6 - 2.217371955334519e-5im, 2.8309932315565695e-6 - 8.434084682956873e-5im, -0.012585205611900203 - 0.011889895507221741im, -0.0061741264813206555 - 0.0011380585990133029im, -0.12065701417475391 - 0.005648440925825422im, -0.13980647663759255 + 0.07816739679703166im, 0.030562279605972076 + 0.03167084074195908im, 2.376663710765737 + 5.551115123125783e-17im], (ℂ^8 ⊗ ℂ^1) ← ℂ^8) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-0.48172975252859224 + 1.2130191239905782e-18im, -0.9200760636914495 + 0.8945549252933765im, 0.015135410560007903 - 0.34639395738262285im, -0.001050468157339524 - 0.001072968066148196im, 0.015398854299014225 + 0.02059971968979365im, 0.016071151945860594 + 0.005301319310139435im, 1.1246939111658064e-13 + 1.7583933783437163e-14im, -8.961421008066192e-16 - 4.0530457755308314e-15im, -0.9200760636914495 - 0.8945549252933764im, 0.48172975252859235 - 9.839183844896697e-18im … -0.0545206747029649 - 2.7755575615628914e-17im, -1.06607948502488 - 0.8598453695025998im, -8.565197162635485e-16 + 4.085273785925381e-15im, 1.8659119388475531e-16 + 1.2255474413080947e-13im, -0.007993105118387446 + 0.0009031425827820995im, 0.022376571764675196 - 0.019556142677348985im, -0.1865026356079444 + 0.17914068045826564im, 0.05057135023989506 - 0.2253620002546825im, -1.06607948502488 + 0.8598453695025996im, 0.054520674702988374 + 0.0im], (ℂ^8 ⊗ ℂ^1) ← ℂ^8) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.9999999999999998 - 7.239718608808928e-18im, 2.1675824665857325e-17 + 3.0827775200657063e-17im, -1.1881650346967737e-17 + 7.226294938607673e-18im, 1.2956701110761033e-16 + 4.773938716001959e-17im, 1.0970438214757086e-16 - 3.917553893174484e-18im, 7.568270694320375e-17 + 8.611550663078318e-18im, 3.3974455212239574e-18 - 9.823023609459728e-17im, 2.1013996135126654e-17 - 2.3335018179387556e-18im, 1.1748430058115445e-17 - 4.7839771979408103e-17im, 0.9999999999999999 - 3.860430621401917e-19im … 0.999999999999999 + 0.0im, 2.7755575615628914e-17 - 1.3877787807814457e-17im, 1.235990476633475e-17 + 3.469446951953614e-18im, 6.938893903907228e-18 + 1.46150452851046e-16im, 5.204170427930421e-17 - 1.474514954580286e-17im, -2.8406096919120216e-17 + 3.469446951953614e-18im, 4.354155924701786e-16 - 6.591949208711867e-17im, 2.185751579730777e-16 - 1.942890293094024e-16im, 2.7755575615628914e-17 + 1.3877787807814457e-17im, 0.9999999999999999 + 2.7755575615628914e-17im], (ℂ^8 ⊗ ℂ^1) ← ℂ^8);;;], (⊞(ℂ^8) ⊗ (ℂ^1 ⊞ ℂ^1 ⊞ ℂ^1)) ← ⊞(ℂ^8)), BlockTensorKit.BlockTensorMap{TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}, ComplexF64, TensorKit.ComplexSpace, 2, 1, 3}(TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}[TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-1.4049881654716243 + 0.0im, -0.015293183269555526 + 0.016028898612808585im, -0.017360792901937205 - 0.005748851538365217im, -0.1425123912715014 - 0.04816410920816122im, -0.015293183269555526 - 0.016028898612808574im, -0.9682468102913463 - 6.938893903907228e-18im, 0.12758292254155879 + 0.21908480555403181im, -0.009422770651893172 - 0.014014381656604678im, -0.017360792901937178 + 0.0057488515383652145im, 0.12758292254155862 - 0.2190848055540316im, 0.9677296624488128 + 5.204170427930421e-18im, 0.015974924327125672 - 0.003079211998356788im, -0.14251239127150114 + 0.04816410920816111im, -0.009422770651893165 + 0.014014381656604655im, 0.01597492432712568 + 0.003079211998356788im, 1.4055053133141566 - 5.551115123125783e-17im], (ℂ^4 ⊗ ℂ^1) ← ℂ^4) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-0.13958702570737647 + 6.938893903907228e-18im, 0.9550223646255149 - 0.990484856213556im, 0.2870518936875399 + 0.07043455001032661im, 0.0032350382846155386 + 0.004148970162144154im, 0.9550223646255148 + 0.9904848562135558im, 0.1395870257073768 - 8.673617379884035e-19im, 0.00471363372965241 + 0.002336896055018002im, -0.12659117261682873 - 0.2670851746545585im, 0.2870518936875397 - 0.0704345500103265im, 0.0047136337296524115 - 0.002336896055017995im, 0.0986465502313302 + 0.0im, 1.3743943107933054 + 0.11799000659200765im, 0.0032350382846155386 - 0.004148970162144154im, -0.12659117261682865 + 0.2670851746545585im, 1.3743943107933052 - 0.11799000659200759im, -0.09864655023133057 - 3.469446951953614e-18im], (ℂ^4 ⊗ ℂ^1) ← ℂ^4) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[1.0 + 0.0im, 8.673617379884035e-18 - 8.673617379884035e-19im, -5.421010862427522e-18 + 1.3877787807814457e-17im, 8.326672684688674e-17 + 1.1102230246251565e-16im, 9.540979117872439e-18 + 6.071532165918825e-18im, 0.9999999999999998 - 6.938893903907228e-18im, 5.551115123125783e-17 - 1.6653345369377348e-16im, 3.0357660829594124e-18 + 1.474514954580286e-17im, -4.119968255444917e-18 - 1.0408340855860843e-17im, 8.326672684688674e-17 + 1.6653345369377348e-16im, 0.9999999999999998 + 0.0im, -6.071532165918825e-18 + 7.37257477290143e-18im, 1.1102230246251565e-16 - 5.551115123125783e-17im, 3.903127820947816e-18 - 1.0408340855860843e-17im, 0.0 - 4.228388472693467e-18im, 0.9999999999999992 + 2.7755575615628914e-17im], (ℂ^4 ⊗ ℂ^1) ← ℂ^4);;;], (⊞(ℂ^4) ⊗ (ℂ^1 ⊞ ℂ^1 ⊞ ℂ^1)) ← ⊞(ℂ^4)), BlockTensorKit.BlockTensorMap{TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}, ComplexF64, TensorKit.ComplexSpace, 2, 1, 3}(TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}[TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-0.4999940334985357 + 0.0im, -0.00010437155076777185 - 0.002440404155941648im, -0.00010437155076777185 + 0.002440404155941648im, 0.49999403349853566 + 0.0im], (ℂ^2 ⊗ ℂ^1) ← ℂ^2) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-0.006884759340523183 + 0.0im, -0.05758790577615091 + 1.4130237907399645im, -0.05758790577615091 - 1.4130237907399643im, 0.006884759340523183 + 2.168404344971009e-19im], (ℂ^2 ⊗ ℂ^1) ← ℂ^2) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.9999999999999997 + 0.0im, -5.421010862427522e-19 + 8.673617379884035e-19im, -5.421010862427522e-19 - 8.673617379884035e-19im, 0.9999999999999996 + 0.0im], (ℂ^2 ⊗ ℂ^1) ← ℂ^2);;;], (⊞(ℂ^2) ⊗ (ℂ^1 ⊞ ℂ^1 ⊞ ℂ^1)) ← ⊞(ℂ^2)), BlockTensorKit.BlockTensorMap{TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}, ComplexF64, TensorKit.ComplexSpace, 2, 1, 3}(TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}[TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[1.0 + 0.0im], (ℂ^1 ⊗ ℂ^1) ← ℂ^1);;;], (⊞(ℂ^1) ⊗ ⊞(ℂ^1)) ← ⊞(ℂ^1))]), 4.138098438847927e-12)1. Entanglement entropy at a single cut
entropy returns the von Neumann entanglement entropy across the cut to the right of a given site. For a FiniteMPS the site is a required argument:
entropy(ψ, L ÷ 2) # entropy across the central cut0.68859764578560172. Entropy profile across every cut
Collecting entropy(ψ, i) over the valid range of sites gives the full entropy profile of the chain:
[entropy(ψ, i) for i in 1:L]8-element Vector{Float64}:
0.5687362834103791
0.6619622060572381
0.6843192424818704
0.6885976457856017
0.6843192424818701
0.6619622060572385
0.5687362834103791
-8.881784197001256e-16Warning
For FiniteMPS the cut site is required and must lie in 1:length(ψ). site = 0 — a valid default for InfiniteMPS and WindowMPS (see recipe 5) — throws a BoundsError for FiniteMPS.
3. The entanglement spectrum
entanglement_spectrum returns the singular values of the gauge tensor to the right of a site, packaged as a sector-resolved vector:
spectrum = entanglement_spectrum(ψ, L ÷ 2)8-element TensorKit.SectorVector{Float64, TensorKitSectors.Trivial, Vector{Float64}}:
0.7479933771764925
0.663494009540738
0.012553077940045286
0.01113498096194086
0.0001485419011509681
0.00013176140937710314
2.4928804446182312e-6
2.2112645539436e-6The entropy can equivalently be computed directly from this spectrum with entropy:
entropy(spectrum)0.6885976457856017entropy(ψ, L ÷ 2) ≈ entropy(spectrum)trueBoth routes agree, since entropy(ψ, site) computes the entropy from exactly this spectrum internally.
4. Sector-resolved spectrum
Because the returned spectrum is indexed by symmetry sector, you can inspect the singular values sector by sector. Use keys to list the sectors present at a cut, and index the spectrum with a sector to obtain its singular values:
collect(keys(spectrum))1-element Vector{TensorKitSectors.Trivial}:
Trivial()spectrum[only(keys(spectrum))]8-element view(::Vector{Float64}, 1:8) with eltype Float64:
0.7479933771764925
0.663494009540738
0.012553077940045286
0.01113498096194086
0.0001485419011509681
0.00013176140937710314
2.4928804446182312e-6
2.2112645539436e-6For the plain (no explicit symmetry) FiniteMPS built above there is a single sector, Trivial(), so all singular values live in one block. pairs(spectrum) iterates sector => values pairs and is the natural entry point for a symmetric state where multiple sectors are populated at a cut:
collect(pairs(spectrum))1-element Vector{Pair{TensorKitSectors.Trivial, SubArray{Float64, 1, Vector{Float64}, Tuple{UnitRange{Int64}}, true}}}:
Trivial() => [0.7479933771764925, 0.663494009540738, 0.012553077940045286, 0.01113498096194086, 0.0001485419011509681, 0.00013176140937710314, 2.4928804446182312e-6, 2.2112645539436e-6]5. Entanglement of an infinite MPS
For InfiniteMPS, the cut site defaults to 0, and entropy without a site argument returns one entropy per site in the unit cell:
ψ∞ = InfiniteMPS(ℂ^2, ℂ^8)
entropy(ψ∞)1-element Vector{Float64}:
0.0003038151934982121entanglement_spectrum(ψ∞) # site defaults to 08-element TensorKit.SectorVector{Float64, TensorKitSectors.Trivial, Vector{Float64}}:
0.9999868492163324
0.005126905909898572
0.00011886673507865537
4.5577721229014446e-5
4.460444604956064e-6
1.7392661772345322e-6
7.292663159844698e-7
3.1841539207431346e-7Note
ψ∞ here is a random InfiniteMPS, not a converged ground state, so the values above illustrate the interface rather than any physical entanglement profile. For a physically meaningful result, compute the entropy of a state obtained from find_groundstate (for example via VUMPS).
Note
WindowMPS also supports entropy(ψ, site) with a required site argument, mirroring the FiniteMPS form.
Plotting the spectrum
MPSKit defines an entanglementplot recipe via RecipesBase, but does not depend on Plots.jl itself. To use it, add using Plots (or another Plots-backed package) in your own environment:
using Plots
entanglementplot(ψ; site = L ÷ 2)Note
entanglementplot is a plotting recipe: it only becomes available once Plots (or a compatible plotting package) is loaded. This block is not executed on this page to keep the docs build free of the Plots.jl dependency.