Skip to content

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.

julia
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:

julia
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.6544874698220913 + 0.7560249247576765im, 0.0055997890539975 + 0.00641150166323457im, 0.003143076659931023 + 0.007911135198991781im, -0.3732835287657694 - 0.9276782535777953im], (ℂ^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.5327476426585238 + 0.6311797158091744im, -0.04422129796320898 - 0.026768111305885637im, 0.02938319069918323 + 0.03515086402083204im, -0.5780007923720877 - 0.34551896179542674im, -0.04295617074280783 - 0.04050261673874203im, -0.6681587489443253 - 0.3067573704132422im, 0.40443343333810705 + 0.3854597796018454im, 0.04913651370761863 + 0.02227539099850643im, 0.00011242289556015467 - 0.0003532911951854853im, 0.0012456735507267362 + 0.015167068995092505im, -0.0016978991131541919 + 0.006674709030651267im, -6.302080984705528e-6 - 0.0010167786461915314im, -0.0010909807865849854 - 0.0035825529491657826im, -0.0007817476398104764 - 0.0009304708654217274im, -0.00017590763864980293 - 0.00044076298760011896im, -0.00784184882081933 - 0.010830092431989253im], (ℂ^2 ⊗ ℂ^2) ← ℂ^4), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.5979899141058667 + 0.5417850684476592im, 0.07348696992065581 + 0.0820144929576191im, -0.17720928000515043 + 0.04183395129817023im, -0.5022803463124608 - 0.17171550081138465im, 0.1310599970647133 + 0.11825415564835806im, 0.41071441513902873 + 0.46241767083354096im, 0.719835583751278 - 0.15738641051148544im, 0.11587805893463078 + 0.0351998638340619im, 0.032897839068279894 + 0.12193218946612602im, -0.1194264996627965 - 0.7454754991827689im  …  -7.672306286205245e-5 - 0.00010645619940181494im, -2.3549704501539074e-5 + 1.0846089859305725e-6im, -1.5365747105014422e-10 + 2.768615688204058e-9im, -2.4132942370009657e-8 + 7.254714820241341e-10im, 3.547608975489979e-5 - 7.280396394321981e-5im, -2.580159091559538e-5 - 1.0199484081880004e-5im, 1.0433817316082144e-8 - 1.818520424970663e-9im, -2.6260664582977253e-9 - 3.4812179040777017e-9im, -1.3547311510912874e-5 - 1.327145253421146e-5im, 0.0001493565753206619 - 9.041230486308898e-5im], (ℂ^4 ⊗ ℂ^2) ← ℂ^8), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-0.6008849440333321 - 0.5437987813364201im, 0.055252279336655885 + 0.009535252042946023im, 0.13711283606608693 - 0.26958600496195634im, 0.4257123420196158 + 0.20918010270673082im, 0.03639798373691914 + 0.08278746300449875im, 0.10789498147122374 + 0.05575792708936182im, -0.011937149982817192 + 0.005073460245649277im, -0.0018044263917051937 + 0.0027814418403886904im, -0.23005242240511284 - 0.2083297549962354im, 0.5483266845530778 + 0.09320777981427085im  …  -0.006728000833220727 + 0.010589798860956064im, 0.006053092181809161 + 0.0204689276543991im, 2.2700792910233717e-8 + 5.710220294679165e-9im, -1.082702267629367e-8 + 1.0320652219236046e-8im, -2.1326682079110503e-5 - 9.822318795981455e-5im, 0.000137195763348639 + 1.1409994303527078e-5im, -0.0014679621852741738 - 0.0008152983426491036im, -0.0019455317885542888 - 0.00022947473588379847im, -0.014329372715082427 + 0.01484906458151366im, 0.004956712617586967 + 0.00785947649601429im], (ℂ^8 ⊗ ℂ^2) ← ℂ^8), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.5134249046888135 + 0.6394133998218596im, 0.0484100471456055 + 0.06526071483968122im, 0.2268339427136533 + 0.197191375292442im, 0.3795161478414474 - 0.2575625189891804im, 0.07307391663383864 + 0.02714412669563721im, 0.11721054082770165 - 0.004634296690538839im, -0.002407251117373923 + 0.009174179283882561im, -0.00013330734154599672 + 0.007797840220778783im, 0.2008822946060237 + 0.25172788029491616im, -0.3301242742524542 - 0.46280950032977164im  …  0.000285586328553182 - 0.011548175004336898im, -0.0008616886675800739 + 0.012671717259986072im, -3.6239098434851785e-9 - 1.2633982303648303e-8im, -7.531798658413335e-9 - 8.959865511295559e-9im, -5.213641621570299e-6 + 1.8503478241209315e-5im, 0.0001036376567975129 - 3.719944815445496e-5im, -4.402223696451506e-5 - 0.0003000504452196642im, -0.0017279773252001395 - 0.0003813437573201461im, -0.005433810791974781 + 0.013426817259047041im, -0.004939632400211535 + 0.0030577367515597495im], (ℂ^8 ⊗ ℂ^2) ← ℂ^8), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.7061661804165456 + 0.45691892086340624im, 0.09325234269568936 + 0.10443928054418083im, 0.17179577145620917 + 0.057632990610623755im, 0.33056945996974507 + 0.3461973926844393im, 0.01691900228129342 + 0.03602500682852983im, 0.08408035648326026 + 0.04742316207870079im, -0.008591289150151976 + 0.0028021289492825337im, -0.0005924145987408714 - 0.0014771109993252565im, 0.17361522488271683 + 0.11027196094205047im, -0.45271393274804195 - 0.49101368148142255im  …  -0.5708173906330666 + 0.35881994011189666im, -0.15331199175961624 - 0.10679334171057744im, -0.0017277914274794574 - 0.0003878895303655167im, 0.007579098730768525 + 0.004855626508707763im, -0.0993022755157442 - 0.0061266375285094574im, 0.025312434937358918 + 0.017941136755599645im, 0.18881770740265352 + 0.4420115184543555im, -0.13609404312218779 - 0.1063500568516096im, -0.047569715705148806 + 0.18060474927413606im, 0.8323007682935497 + 0.024310668771179836im], (ℂ^8 ⊗ ℂ^2) ← ℂ^4), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.8237402919563896 + 0.3605487747411791im, -0.0677230884562681 + 0.02393795306935212im, 0.01362362208666864 + 0.021003608678820458im, 0.3370624143076017 + 0.2684385299055779im, 0.06338181853284278 + 0.029799409788745165im, 0.7525285009361484 - 0.2364673818139089im, -0.49890946292197436 - 0.3513974596009584im, 0.02203386711477708 + 0.0015667691115451802im, -0.0069474756970490555 + 0.04464242275786682im, 0.3616221449118835 + 0.48996630889649545im, -0.220260843426936 + 0.7597200651647463im, -0.0012325947219212216 - 0.037819191908333105im, -0.03509577117086492 + 0.4281101799929756im, -0.027310198385221713 - 0.03226738027009562im, 0.02444444374025792 - 0.02637178692777923im, 0.3017096545877773 - 0.8493416345734844im], (ℂ^4 ⊗ ℂ^2) ← ℂ^2), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.31750231906547177 + 0.9482242404298843im, -0.007226195078350151 - 0.0032938357436709544im, 0.005371279330899232 + 0.0058494963514913855im, 0.9999366094746334 + 0.007981840837699712im], (ℂ^2 ⊗ ℂ^2) ← ℂ^1)], Union{Missing, TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}}[TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.564578221317728 + 0.6521671185050866im, 0.001661339442535784 + 0.0019021574734933663im, 0.001590046115914114 + 0.004002151762949482im, -0.18883981819958276 - 0.46930169496780044im], (ℂ^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.8625854671203653 + 0.0im, 0.004549154104331964 - 0.0015854989720253212im, 0.0 + 0.0im, 0.5058884296983736 + 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.6544874698220913 + 0.7560249247576765im, 0.0055997890539975 + 0.00641150166323457im, 0.003143076659931023 + 0.007911135198991781im, -0.3732835287657694 - 0.9276782535777953im], (ℂ^1 ⊗ ℂ^2) ← ℂ^2), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.5793444450953473 + 0.6863888262249753im, -0.0446448799441065 - 0.027061879848157094im, 0.052125415631099875 + 0.06235869860121184im, -0.36808240190032576 - 0.22003309226082401im, -0.060565012242185176 - 0.057105683215747965im, -0.5529195879502911 - 0.2538450999360019im, 0.5702211211412569 + 0.5434696777297496im, 0.04463680172374867 + 0.0202374173385039im, 0.015541613346187097 - 0.048016037684040724im, 0.06447604863172574 + 0.7847985378019942im, -0.14996636367504412 + 0.5894423120653528im, -0.00036063881614509935 - 0.08634079597266692im, -0.12487784327315433 - 0.4100727448226707im, -0.053891566247006285 - 0.06439625111260029im, -0.020135062688521114 - 0.05045142129260336im, -0.5266273859688531 - 0.7272602834136014im], (ℂ^2 ⊗ ℂ^2) ← ℂ^4), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.6215900990207641 + 0.5631299365326823im, 0.06862123384003613 + 0.07636434523992017im, -0.0028645268931750765 + 0.0006654581480316843im, -0.004803841258062565 - 0.0016316741546261975im, 0.1701187970593861 + 0.15355853681118037im, 0.3207980011684617 + 0.36112672040964616im, 0.00922204918025611 - 0.0020209794665058045im, 0.0013666871089273057 + 0.00039414639926465796im, 0.039521635874510734 + 0.14648255721048103im, -0.11196863097885323 - 0.6992464066477015im  …  -0.4154813328377349 - 0.5705665820755811im, -0.13179308417431085 + 0.020117356301539747im, -7.785352438066835e-5 + 0.0014027725922415753im, -0.009456276692484398 + 0.00022957038157429607im, 0.22134404895890664 - 0.45424183642518523im, -0.14287694370513257 - 0.03933497385193535im, 0.005286494989468843 - 0.0009213884835836891im, -0.001242665233866399 - 0.0013527937353743913im, -0.08452500833801178 - 0.08280385633771804im, 0.7224519718153106 - 0.4320285634364755im], (ℂ^4 ⊗ ℂ^2) ← ℂ^8), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-0.6064872331806062 - 0.5488853148207103im, 0.04820430347493894 + 0.008364441424360713im, 0.0025242337455817533 - 0.004972858261533521im, 0.005416878511562993 + 0.0026688543903154883im, 6.073274660730333e-6 + 1.408040183022305e-5im, 1.2592906854627008e-5 + 6.302939199110287e-6im, -2.8622851475654084e-8 + 1.1836706483935623e-8im, -4.954410510191614e-9 + 7.0853909705204294e-9im, -0.2626981387267979 - 0.23785420271404006im, 0.44385587069523263 + 0.07548618416912271im  …  -0.0053284744759600385 + 0.008386998493020496im, 0.0037303194634084047 + 0.01408226318905771im, 0.007504966357571974 + 0.0018878111190402391im, -0.0026499382808703037 + 0.0028259555045696237im, -0.11229524576856234 - 0.5171918274439596im, 0.598838020946515 + 0.060591781297896954im, -0.07224523498533601 - 0.04012592537475163im, -0.077927053782104 - 0.010634316456337424im, -0.011348690491772754 + 0.011760294733430397im, 0.0027073807693581676 + 0.005309171539146632im], (ℂ^8 ⊗ ℂ^2) ← ℂ^8), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.5069279740782304 + 0.6315753522251467im, 0.04612017021112183 + 0.06163113982096907im, 0.004286689750968027 + 0.0037262352209628375im, 0.00507526518506147 - 0.003444086421107793im, 1.6269108188821718e-5 + 6.096775223102566e-6im, 1.850054083273396e-5 - 7.918491358727699e-7im, -7.88651899352686e-9 + 2.769553640492392e-8im, -3.384524588817151e-10 + 2.8405359855868878e-8im, 0.22001921727474233 + 0.2760720439027571im, -0.2684280742892604 - 0.37591522313872705im  …  0.0004413785874848702 - 0.01784793304623455im, -0.0013238077938000359 + 0.01661092668107154im, -0.0017053531486401208 - 0.005945346995903628im, -0.0033208516549687317 - 0.0042621645510721035im, -0.04120211055152843 + 0.14622837767138117im, 0.7352437302408946 - 0.2724557964814999im, -0.004114078322242633 - 0.028041079177252022im, -0.14594037008807512 - 0.030692050002297667im, -0.008398062560977014 + 0.02075141051931089im, -0.007832005008141064 + 0.006502836540659651im], (ℂ^8 ⊗ ℂ^2) ← ℂ^8), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.6756439624749375 + 0.4369934685811313im, 0.09172429586873918 + 0.10328541862744336im, 0.0031316503186537077 + 0.0010480652936651785im, 0.004115465178560921 + 0.004312130404786188im, 2.5464010849917663e-6 + 6.132944005623127e-6im, 9.894015486072694e-6 + 5.350805157730218e-6im, -1.9539106035007512e-8 + 6.550099023978056e-9im, -1.0665357796509481e-9 - 3.732554591709843e-9im, 0.18748553672159457 + 0.11911882304389892im, -0.36122321927486556 - 0.3917599781369703im  …  -0.00013570111331942427 + 8.530270103014563e-5im, -4.090220727716144e-5 - 2.890571804653904e-5im, -0.17238766561267282 - 0.038701066339271686im, 0.6523324584770921 + 0.4191952980315732im, -0.15757478563423255 - 0.009721867804104622im, 0.04500501917951736 + 0.03089474881111999im, 0.0028080064380280488 + 0.006573383431655457im, -0.0022489766098913264 - 0.0017619217900626959im, -1.1308806481122058e-5 + 4.293538689592018e-5im, 0.00017052074406228635 + 5.4177951960765014e-6im], (ℂ^8 ⊗ ℂ^2) ← ℂ^4), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.7547640016472388 + 0.33068157864387204im, -0.07626510690687384 + 0.02890731483683291im, 0.0002232825330183197 + 0.00035358526111359186im, 0.002929475291845867 + 0.002332457508597551im, 0.06205457910130762 + 0.03169744191310778im, 0.5305696846898165 - 0.1670551682518737im, -0.005637626238078776 - 0.0039765794562699654im, 0.00028762357556589175 - 4.4893516457000774e-5im, -0.010847781890837538 + 0.06970463608265602im, 0.43583475174983755 + 0.5901715738063806im, -0.004243197794915079 + 0.014635567789088593im, -2.8083861739021268e-5 - 0.000910245190667185im, -0.054798503449820485 + 0.6684508244891827im, -0.05082427849684451 - 0.06280009241821717im, 0.00047090807499029807 - 0.0005080372272905048im, 0.0044810099992878645 - 0.012618998681435406im], (ℂ^4 ⊗ ℂ^2) ← ℂ^2), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[5.0e-324 + 6.89978909484225e-310im, 5.0e-324 + 6.89978909484383e-310im, 5.0e-324 + 6.899789094847e-310im, 5.0e-324 + 6.8997890948549e-310im], (ℂ^1 ⊗ ℂ^2) ← ℂ^2)], TensorKit.TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}[TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[5.0e-324 + 6.89978909484225e-310im, 5.0e-324 + 6.89978909484383e-310im, 5.0e-324 + 6.899789094847e-310im, 5.0e-324 + 6.8997890948549e-310im], (ℂ^1 ⊗ ℂ^2) ← ℂ^2), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.5327476426585238 + 0.6311797158091744im, -0.04422129796320898 - 0.026768111305885637im, 0.02938319069918323 + 0.03515086402083204im, -0.5780007923720877 - 0.34551896179542674im, -0.04295617074280783 - 0.04050261673874203im, -0.6681587489443253 - 0.3067573704132422im, 0.40443343333810705 + 0.3854597796018454im, 0.04913651370761863 + 0.02227539099850643im, 0.00011242289556015467 - 0.0003532911951854853im, 0.0012456735507267362 + 0.015167068995092505im, -0.0016978991131541919 + 0.006674709030651267im, -6.302080984705528e-6 - 0.0010167786461915314im, -0.0010909807865849854 - 0.0035825529491657826im, -0.0007817476398104764 - 0.0009304708654217274im, -0.00017590763864980293 - 0.00044076298760011896im, -0.00784184882081933 - 0.010830092431989253im], (ℂ^2 ⊗ ℂ^2) ← ℂ^4), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.5979899141058667 + 0.5417850684476592im, 0.07348696992065581 + 0.0820144929576191im, -0.17720928000515043 + 0.04183395129817023im, -0.5022803463124608 - 0.17171550081138465im, 0.1310599970647133 + 0.11825415564835806im, 0.41071441513902873 + 0.46241767083354096im, 0.719835583751278 - 0.15738641051148544im, 0.11587805893463078 + 0.0351998638340619im, 0.032897839068279894 + 0.12193218946612602im, -0.1194264996627965 - 0.7454754991827689im  …  -7.672306286205245e-5 - 0.00010645619940181494im, -2.3549704501539074e-5 + 1.0846089859305725e-6im, -1.5365747105014422e-10 + 2.768615688204058e-9im, -2.4132942370009657e-8 + 7.254714820241341e-10im, 3.547608975489979e-5 - 7.280396394321981e-5im, -2.580159091559538e-5 - 1.0199484081880004e-5im, 1.0433817316082144e-8 - 1.818520424970663e-9im, -2.6260664582977253e-9 - 3.4812179040777017e-9im, -1.3547311510912874e-5 - 1.327145253421146e-5im, 0.0001493565753206619 - 9.041230486308898e-5im], (ℂ^4 ⊗ ℂ^2) ← ℂ^8), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-0.6008849440333321 - 0.5437987813364201im, 0.055252279336655885 + 0.009535252042946023im, 0.13711283606608693 - 0.26958600496195634im, 0.4257123420196158 + 0.20918010270673082im, 0.03639798373691914 + 0.08278746300449875im, 0.10789498147122374 + 0.05575792708936182im, -0.011937149982817192 + 0.005073460245649277im, -0.0018044263917051937 + 0.0027814418403886904im, -0.23005242240511284 - 0.2083297549962354im, 0.5483266845530778 + 0.09320777981427085im  …  -0.006728000833220727 + 0.010589798860956064im, 0.006053092181809161 + 0.0204689276543991im, 2.2700792910233717e-8 + 5.710220294679165e-9im, -1.082702267629367e-8 + 1.0320652219236046e-8im, -2.1326682079110503e-5 - 9.822318795981455e-5im, 0.000137195763348639 + 1.1409994303527078e-5im, -0.0014679621852741738 - 0.0008152983426491036im, -0.0019455317885542888 - 0.00022947473588379847im, -0.014329372715082427 + 0.01484906458151366im, 0.004956712617586967 + 0.00785947649601429im], (ℂ^8 ⊗ ℂ^2) ← ℂ^8), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.5134249046888135 + 0.6394133998218596im, 0.0484100471456055 + 0.06526071483968122im, 0.2268339427136533 + 0.197191375292442im, 0.3795161478414474 - 0.2575625189891804im, 0.07307391663383864 + 0.02714412669563721im, 0.11721054082770165 - 0.004634296690538839im, -0.002407251117373923 + 0.009174179283882561im, -0.00013330734154599672 + 0.007797840220778783im, 0.2008822946060237 + 0.25172788029491616im, -0.3301242742524542 - 0.46280950032977164im  …  0.000285586328553182 - 0.011548175004336898im, -0.0008616886675800739 + 0.012671717259986072im, -3.6239098434851785e-9 - 1.2633982303648303e-8im, -7.531798658413335e-9 - 8.959865511295559e-9im, -5.213641621570299e-6 + 1.8503478241209315e-5im, 0.0001036376567975129 - 3.719944815445496e-5im, -4.402223696451506e-5 - 0.0003000504452196642im, -0.0017279773252001395 - 0.0003813437573201461im, -0.005433810791974781 + 0.013426817259047041im, -0.004939632400211535 + 0.0030577367515597495im], (ℂ^8 ⊗ ℂ^2) ← ℂ^8), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.7061661804165456 + 0.45691892086340624im, 0.09325234269568936 + 0.10443928054418083im, 0.17179577145620917 + 0.057632990610623755im, 0.33056945996974507 + 0.3461973926844393im, 0.01691900228129342 + 0.03602500682852983im, 0.08408035648326026 + 0.04742316207870079im, -0.008591289150151976 + 0.0028021289492825337im, -0.0005924145987408714 - 0.0014771109993252565im, 0.17361522488271683 + 0.11027196094205047im, -0.45271393274804195 - 0.49101368148142255im  …  -0.5708173906330666 + 0.35881994011189666im, -0.15331199175961624 - 0.10679334171057744im, -0.0017277914274794574 - 0.0003878895303655167im, 0.007579098730768525 + 0.004855626508707763im, -0.0993022755157442 - 0.0061266375285094574im, 0.025312434937358918 + 0.017941136755599645im, 0.18881770740265352 + 0.4420115184543555im, -0.13609404312218779 - 0.1063500568516096im, -0.047569715705148806 + 0.18060474927413606im, 0.8323007682935497 + 0.024310668771179836im], (ℂ^8 ⊗ ℂ^2) ← ℂ^4), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.8237402919563896 + 0.3605487747411791im, -0.0677230884562681 + 0.02393795306935212im, 0.01362362208666864 + 0.021003608678820458im, 0.3370624143076017 + 0.2684385299055779im, 0.06338181853284278 + 0.029799409788745165im, 0.7525285009361484 - 0.2364673818139089im, -0.49890946292197436 - 0.3513974596009584im, 0.02203386711477708 + 0.0015667691115451802im, -0.0069474756970490555 + 0.04464242275786682im, 0.3616221449118835 + 0.48996630889649545im, -0.220260843426936 + 0.7597200651647463im, -0.0012325947219212216 - 0.037819191908333105im, -0.03509577117086492 + 0.4281101799929756im, -0.027310198385221713 - 0.03226738027009562im, 0.02444444374025792 - 0.02637178692777923im, 0.3017096545877773 - 0.8493416345734844im], (ℂ^4 ⊗ ℂ^2) ← ℂ^2), TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.31750231906547177 + 0.9482242404298843im, -0.007226195078350151 - 0.0032938357436709544im, 0.005371279330899232 + 0.0058494963514913855im, 0.9999366094746334 + 0.007981840837699712im], (ℂ^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.0 + 0.0im, 1.734723475976807e-18 - 8.673617379884035e-19im, 1.734723475976807e-18 + 8.673617379884035e-19im, 1.0000000000000002 + 0.0im], (ℂ^2 ⊗ (ℂ^1)') ← ℂ^2) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.012038134916108537 + 0.0im, -0.668632359683473 + 0.22975171575388162im, -0.6686323596834728 - 0.2297517157538815im, -0.012038134916108539 + 8.673617379884035e-19im], (ℂ^2 ⊗ (ℂ^1)') ← ℂ^2) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-0.4999275350089731 + 0.0im, -0.008038119684180691 + 0.002801494564476656im, -0.008038119684180691 - 0.002801494564476656im, 0.4999275350089732 + 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, 6.071532165918825e-18 - 7.48099499014998e-18im, 2.2551405187698492e-17 - 2.076247160309741e-17im, 2.7755575615628914e-17 + 4.163336342344337e-17im, 4.7704895589362195e-18 + 7.15573433840433e-18im, 0.9999999999999998 + 0.0im, 0.0 - 3.885780586188048e-16im, -2.0816681711721685e-17 + 2.7755575615628914e-17im, 2.45029690981724e-17 + 2.0383000842727483e-17im, 0.0 + 4.440892098500626e-16im, 1.0000000000000002 - 6.938893903907228e-18im, 3.903127820947816e-18 + 9.974659986866641e-18im, 4.163336342344337e-17 - 4.5102810375396984e-17im, -2.3418766925686896e-17 - 3.3393426912553537e-17im, -2.168404344971009e-18 - 8.239936510889834e-18im, 1.0 + 0.0im], (ℂ^4 ⊗ (ℂ^1)') ← ℂ^4) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.13489955154957112 + 0.0im, 0.674227564431837 + 0.07329685272452807im, 0.08588436190115659 - 0.12028918956736409im, -0.0008324418164696798 - 0.0007536759227246815im, 0.6742275644318368 - 0.07329685272452807im, -0.1348995515495705 - 6.938893903907228e-18im, -0.0006604400328257647 - 0.0009081881618589437im, 0.12877528358107213 - 0.07254336003078878im, 0.08588436190115643 + 0.12028918956736395im, -0.0006604400328257612 + 0.0009081881618589471im, -0.1391823542415763 + 8.673617379884035e-19im, -0.5798313830371072 - 0.3501099338498286im, -0.0008324418164696763 + 0.0007536759227246776im, 0.12877528358107193 + 0.07254336003078864im, -0.5798313830371071 + 0.3501099338498286im, 0.13918235424157566 + 0.0im], (ℂ^4 ⊗ (ℂ^1)') ← ℂ^4) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-1.4018916853085148 + 0.0im, 0.04254633526685328 + 0.004836233445766478im, 0.0224649177163633 - 0.03313139889901495im, 0.13516040664553985 - 0.05820851476626002im, 0.042546335266853266 - 0.004836233445766475im, -0.9713432904544526 + 0.0im, 0.12279012077528653 - 0.21807695844321096im, -0.03602322817291369 + 0.018253213034019576im, 0.022464917716363258 + 0.03313139889901494im, 0.12279012077528631 + 0.21807695844321046im, 0.9716424254068694 + 1.3877787807814457e-17im, 0.036107535081364724 + 0.025661806265679103im, 0.13516040664554005 + 0.05820851476626007im, -0.03602322817291368 - 0.01825321303401955im, 0.03610753508136471 - 0.025661806265679106im, 1.4015925503560989 - 1.1102230246251565e-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[0.9999999999999999 + 0.0im, -3.5128150388530344e-17 + 9.324138683375338e-18im, -4.651227319962814e-17 + 2.6020852139652106e-17im, -1.6653345369377348e-16 + 2.2551405187698492e-17im, -4.495373257668023e-17 + 6.678685382510707e-17im, 1.0104764247564901e-16 - 3.0184188481996443e-16im, 2.6020852139652106e-18 + 5.4752209710517974e-17im, 1.0177947894207673e-16 + 5.079487178094588e-17im, -2.862293735361732e-17 - 2.168404344971009e-19im, 0.9999999999999998 + 0.0im  …  0.9999999999999996 + 0.0im, -5.551115123125783e-17 - 5.551115123125783e-17im, 1.003564635906895e-16 - 5.686640394686471e-17im, -1.734723475976807e-16 + 1.8691645453650096e-16im, 1.97758476261356e-16 - 1.6653345369377348e-16im, 7.112366251504909e-17 - 5.724587470723463e-17im, 2.498001805406602e-16 - 4.718447854656915e-16im, -1.249000902703301e-16 + 1.1796119636642288e-16im, -4.163336342344337e-17 + 5.551115123125783e-17im, 1.0000000000000004 + 5.551115123125783e-17im], (ℂ^8 ⊗ (ℂ^1)') ← ℂ^8) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.3419191633928771 - 2.7755575615628914e-17im, -0.5010051778502264 + 0.3190503180157332im, -0.04615166392934361 - 0.16710333128932459im, 0.0012151069985001962 + 0.00022667267656529318im, 0.013711953651493664 + 0.00688071722822324im, -0.0012291446193748142 - 0.000303364582000118im, 5.506989016277469e-12 + 3.2230517083356447e-12im, -1.9892290939460544e-12 + 4.310215595895728e-12im, -0.5010051778502262 - 0.31905031801573314im, -0.3419191633928808 + 1.3877787807814457e-17im  …  0.0951967859897973 + 2.7755575615628914e-17im, 0.33016548663043266 - 0.592989318041249im, -1.989220637169109e-12 - 4.310226654757887e-12im, 7.116966087641896e-12 - 6.321851679300106e-13im, -0.0034236414759281353 + 0.0008710638128966133im, 0.006465573934382525 - 0.01351595537322882im, -0.028401714373289737 + 0.046407698593863254im, -0.07870521435509181 + 0.14456896160435626im, 0.33016548663043255 + 0.5929893180412489im, -0.0951967859952536 - 6.938893903907228e-18im], (ℂ^8 ⊗ (ℂ^1)') ← ℂ^8) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-2.3717427882844135 - 2.220446049250313e-16im, -0.04521675800054107 + 0.02887986909828095im, -0.02999501352694458 - 0.11052559273775088im, 0.16049445337604853 - 0.045885333379985405im, 0.010706407066633325 + 0.004728079400192899im, 0.013946267671900303 - 0.0037241727623302853im, -3.587019439905102e-5 + 7.689982147038115e-5im, 5.641804653664902e-7 + 2.0621269402289286e-5im, -0.045216758000540994 - 0.02887986909828095im, -2.18533638164889 - 5.551115123125783e-17im  …  2.1769208031282967 - 1.1102230246251565e-16im, -0.021186929811991717 - 0.02811007536690341im, 5.641804653652434e-7 - 2.0621269402316608e-5im, -1.35434142923491e-5 + 8.376652196948487e-5im, 0.01577743042684511 + 0.0059750001240021534im, 0.005646603269271383 - 0.004274668208641214im, 0.15642982126480542 - 0.08104928217463603im, -0.07597479202836571 + 0.053978181588741306im, -0.02118692981199169 + 0.02811007536690341im, 2.3801583668316963 - 2.220446049250313e-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[0.9999999999999997 + 0.0im, -9.71445146547012e-17 + 6.938893903907228e-18im, 1.2836953722228372e-16 + 5.5077470362263625e-17im, 2.7755575615628914e-17 + 1.1102230246251565e-16im, -1.8908485888147197e-16 - 9.454242944073599e-17im, 2.0816681711721685e-17 + 2.940356291780688e-16im, 6.245004513516506e-17 + 4.336808689942018e-19im, 2.211772431870429e-17 + 5.204170427930421e-17im, -6.938893903907228e-17 + 1.3877787807814457e-17im, 0.9999999999999992 + 0.0im  …  0.9999999999999993 + 1.3877787807814457e-17im, -8.326672684688674e-17 + 9.020562075079397e-17im, 2.0816681711721685e-17 - 4.85722573273506e-17im, 2.862293735361732e-17 + 7.546047120499111e-17im, -1.0408340855860843e-16 - 1.6653345369377348e-16im, -1.1796119636642288e-16 - 1.249000902703301e-16im, -4.163336342344337e-17 + 1.3877787807814457e-16im, 5.551115123125783e-17 + 5.551115123125783e-17im, -1.3877787807814457e-16 - 4.163336342344337e-17im, 0.9999999999999998 + 8.326672684688674e-17im], (ℂ^8 ⊗ (ℂ^1)') ← ℂ^8) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.4409944767711274 + 0.0im, -0.5214009947510723 - 0.030407290827770994im, -0.17662729407536257 + 0.03327899246722388im, -0.0006586890682352894 + 0.001670343338517441im, -0.017900519201741242 + 0.010485306741914007im, 0.00015205588920237656 + 0.0001275534660699221im, -3.5466166149744627e-9 + 2.8098238960159658e-9im, -5.252782471140693e-10 - 1.7848690605473845e-9im, -0.5214009947510723 + 0.030407290827770994im, -0.4409944767711277 + 0.0im  …  -0.5458584741342746 + 2.7755575615628914e-17im, 0.2961807363261285 - 0.28561377192498627im, -5.252782375730902e-10 + 1.7848690671610178e-9im, -2.2597882644997958e-9 - 1.5392268397362852e-9im, 0.010242933324417388 - 0.011605892264716934im, -0.0032376498672883718 - 0.013428061698554282im, -0.04928286038738662 + 0.12635323014125485im, -0.03695262940617272 + 0.1120199994758369im, 0.2961807363261284 + 0.2856137719249864im, 0.5458584743269088 + 4.85722573273506e-17im], (ℂ^8 ⊗ (ℂ^1)') ← ℂ^8) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-3.3920326870969664 - 2.220446049250313e-16im, -0.03616168339260184 - 0.002097591017600972im, -0.15032279984325433 + 0.027870326758601793im, -0.012874783240823334 + 0.15519383846941653im, -0.01579806905446045 + 0.009458234806630867im, -0.010934363056224077 + 0.014824456861299653im, -4.506099926653538e-5 - 6.781585621071749e-5im, -7.348773467176408e-5 - 5.7160058106909585e-5im, -0.03616168339260198 + 0.0020975910176010276im, -3.30623333699437 - 3.3306690738754696e-16im  …  0.7147339638903876 + 3.122502256758253e-17im, -0.04851656648466038 + 0.0033225177623050356im, -7.34877346718326e-5 + 5.71600581069677e-5im, 7.873773566199199e-5 - 2.0747566274317147e-5im, -0.019810096225182344 + 0.016139883586437753im, 0.007620259420509 + 0.00433222542486314im, 0.10974668757863078 - 0.18379891054116226im, -0.037408787326813436 - 0.06333011415782219im, -0.04851656648466046 - 0.0033225177623050495im, 0.7708607115994739 + 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[0.9999999999999996 + 0.0im, -1.3877787807814457e-16 - 1.431146867680866e-17im, 5.377642775528102e-17 - 3.122502256758253e-17im, 1.9081958235744878e-16 + 9.616873269946424e-17im, 2.6020852139652106e-17 - 4.85722573273506e-17im, 1.6458188978329957e-16 + 6.678685382510707e-17im, -9.497611030973019e-17 + 3.469446951953614e-18im, 1.5167988393072207e-16 - 7.979727989493313e-17im, -1.1796119636642288e-16 + 4.1795993749316196e-17im, 0.9999999999999996 + 5.551115123125783e-17im  …  1.0 - 1.0408340855860843e-17im, -1.3877787807814457e-16 - 6.938893903907228e-17im, 1.1175413892894337e-16 + 7.524363077049401e-17im, 1.6479873021779667e-16 + 3.8163916471489756e-17im, 1.5959455978986625e-16 - 4.163336342344337e-17im, 2.42861286636753e-17 - 2.7755575615628914e-17im, -1.3877787807814457e-16 - 1.1102230246251565e-16im, -1.734723475976807e-17 + 1.457167719820518e-16im, -1.1102230246251565e-16 + 8.326672684688674e-17im, 0.9999999999999994 + 5.551115123125783e-17im], (ℂ^8 ⊗ (ℂ^1)') ← ℂ^8) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.35394795245544286 + 2.7755575615628914e-17im, -0.5663592480211558 - 0.14454842339469534im, -0.17499942135551566 + 0.044108528192401214im, 0.0026021931413625797 + 0.00026737835532957064im, -0.014897939538484338 - 0.015917175185940314im, 0.0008452480556032662 + 0.002597310534552675im, -1.4427110818938244e-11 - 2.4308041040102535e-11im, 8.110396035321266e-14 - 2.33439205465924e-11im, -0.5663592480211557 + 0.1445484233946953im, -0.3539479524554474 + 5.551115123125783e-17im  …  0.2924288425957201 + 6.938893903907228e-18im, -0.5397341074425953 - 0.3001810501421003im, 8.106135120783398e-14 + 2.3343954373700182e-11im, 1.441911336424323e-11 - 2.7170872051850842e-11im, 0.001140042175144503 + 0.0033575376759305588im, 0.01922021076246977 + 0.010038738835750412im, -0.001336196323079613 - 0.014552096457401999im, -0.17533117241717486 - 0.04028192718386944im, -0.5397341074425953 + 0.3001810501421003im, -0.29242884261494295 + 2.7755575615628914e-17im], (ℂ^8 ⊗ (ℂ^1)') ← ℂ^8) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-4.442749987686994 - 4.440892098500626e-16im, -0.016936587029692904 - 0.004513001197265097im, -0.12435322497498391 + 0.03084044991689973im, -0.16492345162878 - 0.03903628622013131im, -0.013081796646353294 - 0.010268328124005442im, -0.020729342240839967 + 0.002216466367309655im, 7.210863984711104e-5 - 9.464786178009672e-5im, 3.9118884082094086e-8 + 1.8736330589587055e-5im, -0.016936587029692952 + 0.004513001197265067im, -4.384862720189221 - 4.440892098500626e-16im  …  -0.5510750766190164 + 9.020562075079397e-17im, -0.006422192495615514 - 0.01652760075903334im, 3.911888412700716e-8 - 1.8736330589474298e-5im, 0.00010432414075715359 + 5.7221892447320566e-5im, -0.021620940018339557 - 0.002534590393394265im, 0.015192965869197758 + 0.0027373961299679284im, 0.053257945907244586 + 0.16795656797048764im, -0.11829835632517616 - 0.012759084130995524im, -0.006422192495615625 + 0.016527600759033256im, -0.4934367929481682 - 3.8163916471489756e-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[0.9999999999999993 + 0.0im, 4.85722573273506e-17 - 8.326672684688674e-17im, -5.713745448998608e-17 - 1.2576745200831851e-17im, -1.6653345369377348e-16 - 1.3877787807814457e-17im, 8.326672684688674e-17 + 3.469446951953614e-17im, 0.9999999999999998 + 2.7755575615628914e-17im, -1.5265566588595902e-16 + 7.632783294297951e-17im, -4.85722573273506e-17 - 2.2551405187698492e-17im, -3.7513395167998453e-17 + 1.5612511283791264e-17im, -1.6653345369377348e-16 + 6.245004513516506e-17im, 0.9999999999999997 + 0.0im, 1.249000902703301e-16 - 4.163336342344337e-17im, -1.8041124150158794e-16 - 4.85722573273506e-17im, -2.949029909160572e-17 + 1.0191500421363742e-17im, 1.1102230246251565e-16 - 3.469446951953614e-17im, 0.9999999999999994 + 5.551115123125783e-17im], (ℂ^4 ⊗ (ℂ^1)') ← ℂ^4) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.14864147250672355 - 2.7755575615628914e-17im, 0.5036323797249984 - 0.43862438281477656im, -0.17338444786181406 - 0.03569970187299535im, -0.008865096955519302 - 0.005919834165271835im, 0.5036323797249983 + 0.43862438281477656im, -0.14864147250672777 - 2.42861286636753e-17im, 0.008863686243286607 + 0.005921946196575787im, -0.09938173353925157 - 0.14649200153216285im, -0.17338444786181376 + 0.03569970187299536im, 0.008863686243286609 - 0.0059219461965757825im, -0.07176244532804914 + 1.5612511283791264e-17im, -0.6791425642763029 - 0.041794010154878936im, -0.008865096955519272 + 0.005919834165271831im, -0.09938173353925162 + 0.1464920015321627im, -0.6791425642763029 + 0.04179401015487885im, 0.07176244532805848 + 1.3877787807814457e-17im], (ℂ^4 ⊗ (ℂ^1)') ← ℂ^4) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-5.503484714130868 - 8.881784197001252e-16im, 0.004755776604307871 - 0.004207197370648369im, -0.042082335876339395 - 0.012128496583310578im, -0.17570462656099234 - 0.047507698188862406im, 0.004755776604307871 + 0.004207197370648341im, -5.446427388644886 - 3.3306690738754696e-16im, -0.18757209813226777 - 0.24440714366410576im, 0.025502706979838342 + 0.026785306203583412im, -0.04208233587633953 + 0.012128496583310428im, -0.18757209813226738 + 0.24440714366410557im, -3.6212166390206506 - 8.881784197001252e-16im, 0.003130439076784036 - 0.0010035247012120108im, -0.17570462656099256 + 0.047507698188862454im, 0.0255027069798385 - 0.026785306203583433im, 0.0031304390767839807 + 0.0010035247012124826im, -3.563134083701797 - 1.1102230246251565e-15im], (ℂ^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.9999999999999996 + 3.4137572945956586e-18im, 7.655508703737159e-18 - 5.948649086146298e-17im, 6.44147073994946e-17 + 4.2418943542702096e-17im, 0.9999999999999999 + 3.5526627596595206e-18im], (ℂ^2 ⊗ (ℂ^1)') ← ℂ^2) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[0.017003550038164884 - 2.0932294294657495e-17im, 0.22336113511660924 - 0.6500854862180695im, 0.22336113511660918 + 0.6500854862180695im, -0.017003550038168367 - 1.8711880034880706e-17im], (ℂ^2 ⊗ (ℂ^1)') ← ℂ^2) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-6.570305414173079 - 5.126296091866813e-16im, 0.0008115002585900424 - 0.0008697118325583636im, 0.0008115002585902337 + 0.0008697118325582665im, -6.482483205661349 - 4.628677058109491e-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[1.897e-321 + 1.907e-321im], (ℂ^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[1.91e-321 + 1.917e-321im], (ℂ^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.570319332875505 - 1.2161049738314478e-15im, -0.00041416244900409024 + 0.00014434642619204173im, -0.00041416244900410824 - 0.00014434642619171227im, -6.482469286958945 - 8.333387767337836e-16im], (ℂ^2 ⊗ ℂ^1) ← ℂ^2) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-0.013730652011821031 - 2.5292321934129684e-17im, 1.3004928548372408 - 0.44686869531896356im, 1.3004928548372414 + 0.4468686953189635im, 0.013730652011821023 - 4.315503396474176e-17im], (ℂ^2 ⊗ ℂ^1) ← ℂ^2) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[1.0000000000000009 + 3.9269156457563743e-17im, -3.7440342332106516e-17 - 1.3275465152314467e-17im, -2.378356003801561e-17 - 4.096734061858906e-17im, 1.0000000000000009 - 6.202432964919531e-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.5038475651043 - 8.881784197001252e-16im, 0.004385707381508841 + 0.0004985224834808122im, 0.02130598787629019 - 0.0314222020419206im, 0.16742996023243362 - 0.07199712512238933im, 0.004385707381508341 - 0.0004985224834810342im, -5.446064537671482 - 6.661338147750939e-16im, 0.15133734004275823 - 0.26889683966755173im, -0.03416484638115624 + 0.01731155843012626im, 0.021305987876290233 + 0.03142220204192095im, 0.15133734004275823 + 0.26889683966755246im, -3.621042998060071 - 2.7755575615628914e-17im, 0.0037230235989178517 + 0.002645971543303205im, 0.16742996023243384 + 0.07199712512238951im, -0.034164846381156626 - 0.01731155843012628im, 0.0037230235989179628 - 0.002645971543302983im, -3.56330772466144 - 6.661338147750939e-16im], (ℂ^4 ⊗ ℂ^1) ← ℂ^4) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-0.20665968479918836 - 2.7755575615628914e-17im, -1.3447782972889881 - 0.14624618847517556im, -0.20617356316180546 + 0.2885986635447095im, 0.0015465950361243813 + 0.0014002557510391788im, -1.3447782972889883 + 0.14624618847517573im, 0.20665968479918817 - 4.85722573273506e-17im, 0.00122703263604702 + 0.0016873242972828759im, -0.30897129304465026 + 0.1741650562568311im, -0.2061735631618053 - 0.2885986635447093im, 0.0012270326360470096 - 0.0016873242972828863im, 0.21327988033922912 + 0.0im, 1.1566676772413795 + 0.699397182502048im, 0.0015465950361243683 - 0.0014002557510391987im, -0.30897129304465 - 0.17416505625683096im, 1.156667677241379 - 0.6993971825020484im, -0.2132798803392286 + 5.551115123125783e-17im], (ℂ^4 ⊗ ℂ^1) ← ℂ^4) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[1.0000000000000004 - 5.551115123125783e-17im, 4.163336342344337e-17 + 0.0im, -1.9949319973733282e-17 + 2.6020852139652106e-17im, -3.608224830031759e-16 + 1.700029006457271e-16im, 4.163336342344337e-17 + 4.85722573273506e-17im, 1.0000000000000004 - 5.551115123125783e-17im, 8.326672684688674e-17 - 4.440892098500626e-16im, 2.7755575615628914e-17 + 2.168404344971009e-18im, -6.071532165918825e-18 + 0.0im, 5.551115123125783e-17 + 3.885780586188048e-16im, 1.0000000000000002 - 1.3010426069826053e-18im, 8.326672684688674e-17 + 1.3877787807814457e-16im, -3.608224830031759e-16 - 1.7694179454963432e-16im, 0.0 + 2.8189256484623115e-18im, 1.5265566588595902e-16 - 8.326672684688674e-17im, 1.0000000000000002 - 5.551115123125783e-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[-4.4442447089432955 + 0.0im, -0.012456333748212235 + 0.007955839914331617im, -0.027490441689913533 - 0.10129674919354037im, 0.17554931569003582 - 0.05027462069553587im, 0.013497889381180624 + 0.005960831897914369im, 0.021221902931632616 - 0.005555981751735484im, -4.873507628902181e-5 + 0.00010732892934054491im, 6.778577181514207e-7 + 2.4776199717962337e-5im, -0.012456333748212131 - 0.007955839914331408im, -4.383367998932925 - 2.220446049250313e-16im  …  -0.5547033136537561 + 1.6653345369377348e-16im, -0.005776841989397756 - 0.00766451165684244im, 6.778577179653716e-7 - 2.4776199717982395e-5im, -1.7623983283631198e-5 + 0.00011655043204486515im, 0.022864695584502492 + 0.009042816073209642im, 0.00703979552550292 - 0.005329361488865453im, 0.17010009708255835 - 0.0841152015941394im, -0.06969204513064381 + 0.04951444601162262im, -0.005776841989397756 + 0.007664511656842468im, -0.4898085537242065 + 2.0816681711721685e-16im], (ℂ^8 ⊗ ℂ^1) ← ℂ^8) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-0.5969624542511367 + 0.0im, 1.036935596989157 - 0.660412890698493im, 0.09617240717645903 + 0.34792902258790126im, -0.002214327752889677 - 0.00041307275750925227im, -0.03912364400486823 - 0.019755426144109398im, 0.003089395116344714 + 0.0007624920907549114im, -1.3066184852833507e-11 - 6.16073923646876e-12im, 3.4446803048870933e-12 - 7.3080569373829e-12im, 1.036935596989157 + 0.6604128906984928im, 0.5969624542511366 - 5.551115123125783e-17im  …  -0.16450440753043938 - 5.551115123125783e-17im, -0.6534878211708828 + 1.1889645738097698im, 3.444706325739233e-12 + 7.307999691508194e-12im, -1.3796562199977491e-11 + 5.88600565856745e-13im, 0.008509605060246728 - 0.0021650657973351266im, -0.018195531711789295 + 0.03902414478783656im, 0.05180276706546719 - 0.08464443961563131im, 0.1616613945605886 - 0.30712570099588093im, -0.6534878211708829 - 1.1889645738097698im, 0.16450440753073928 - 9.020562075079397e-17im], (ℂ^8 ⊗ ℂ^1) ← ℂ^8) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[1.0000000000000009 + 0.0im, 1.5612511283791264e-17 + 3.469446951953614e-18im, 6.884683795282953e-17 - 3.903127820947816e-18im, -5.551115123125783e-17 + 1.0061396160665481e-16im, -1.4094628242311558e-17 - 9.31871767251291e-17im, 9.82287168271867e-17 - 1.1882855810441129e-16im, -5.5077470362263625e-17 - 6.765421556309548e-17im, -3.5561831257524545e-17 + 1.6479873021779667e-17im, 4.5102810375396984e-17 - 2.7755575615628914e-17im, 1.0000000000000002 - 5.551115123125783e-17im  …  1.0 - 4.163336342344337e-17im, 6.938893903907228e-17 + 0.0im, -5.041540102057596e-18 + 8.890457814381136e-18im, 7.177418381854039e-17 - 1.3704315460216776e-16im, 6.938893903907228e-17 + 1.6653345369377348e-16im, 3.122502256758253e-17 + 1.9081958235744878e-17im, -5.551115123125783e-17 - 4.163336342344337e-17im, -2.7755575615628914e-17 + 1.457167719820518e-16im, -5.551115123125783e-17 + 1.1102230246251565e-16im, 1.000000000000001 - 8.326672684688674e-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.3945877298764078 + 2.220446049250313e-16im, -0.032904028933888135 - 0.0019086278362797776im, -0.13668989896799383 + 0.025342743435219063im, -0.01367599073573919 + 0.16579856472590868im, -0.01437448079483558 + 0.008605938732251366im, -0.011727963992943815 + 0.01585165821051233im, -5.1072694271417796e-5 - 7.279423298082424e-5im, -6.785610197393923e-5 - 5.277666705327263e-5im, -0.03290402893388805 + 0.001908627836279958im, -3.303678294214939 - 4.440892098500626e-16im  …  0.709991696713392 + 4.85722573273506e-17im, -0.04545929478659398 + 0.003113145179147625im, -6.785610197374752e-5 + 5.2776667053288946e-5im, 8.5386438735016e-5 - 2.4833138612892144e-5im, -0.019959496704061316 + 0.015796735195728225im, 0.007031516124370724 + 0.00399746652418867im, 0.11220852357499005 - 0.18132541025626242im, -0.034540084361457155 - 0.058474380145792176im, -0.045459294786593975 - 0.003113145179147625im, 0.7756029820002609 + 1.1102230246251565e-16im], (ℂ^8 ⊗ ℂ^1) ← ℂ^8) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-0.8025342662184657 - 2.7755575615628914e-16im, 1.1049108943194232 + 0.06441726462344655im, 0.3532439580004417 - 0.06663113775356755im, 0.0011979040076454846 - 0.003037716998569105im, 0.03581544346029255 - 0.02094664907820266im, -0.00027670778925184027 - 0.00023211884874786357im, 1.2594200764735886e-9 - 9.572110213837415e-10im, 1.6857577096393572e-10 + 6.797679374687809e-10im, 1.1049108943194232 - 0.06441726462344644im, 0.8025342662184651 - 5.551115123125783e-17im  …  1.0229223502994382 - 2.7755575615628914e-17im, -0.6985736739853124 + 0.5785011702766987im, 1.685757726986592e-10 - 6.797679598033457e-10im, 7.785006072950906e-10 + 5.666400569245833e-10im, -0.01890305492371689 + 0.02141835857002207im, 0.00777757057869486 + 0.02907019729461088im, 0.0910081242380193 - 0.23333000500908513im, 0.07496695496978484 - 0.24675139476533514im, -0.6985736739853126 - 0.5785011702766987im, -1.0229223503442069 + 2.0816681711721685e-17im], (ℂ^8 ⊗ ℂ^1) ← ℂ^8) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[1.0000000000000004 + 0.0im, 3.469446951953614e-18 + 2.0816681711721685e-17im, -9.974659986866641e-18 - 7.302101631689872e-17im, -7.112366251504909e-17 - 1.249000902703301e-16im, 8.239936510889834e-18 + 1.5720931501039814e-17im, 2.2551405187698492e-17 + 5.898059818321144e-17im, -6.063400649625184e-17 - 2.4936649967166602e-17im, 2.502474139368105e-17 + 6.559423143537302e-17im, -3.469446951953614e-18 - 5.117434254131581e-17im, 1.0000000000000004 - 5.551115123125783e-17im  …  1.0000000000000009 - 2.7755575615628914e-17im, 1.734723475976807e-17 - 5.551115123125783e-17im, 4.0779554212611036e-17 - 5.941427905220564e-17im, -1.3877787807814457e-17 + 2.3830763751231387e-16im, 1.0408340855860843e-17 - 1.0061396160665481e-16im, 6.591949208711867e-17 - 7.979727989493313e-17im, -8.326672684688674e-17 + 1.6306400674181987e-16im, 5.551115123125783e-17 + 1.734723475976807e-18im, -5.551115123125783e-17 + 8.326672684688674e-17im, 1.0000000000000002 - 1.3877787807814457e-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[-2.374348929365155 - 1.1102230246251565e-16im, -0.04719984648533074 - 0.012577089074798629im, -0.10422891474800265 + 0.02584948340365571im, -0.16586949384524102 - 0.03932568989325277im, -0.008045853676278374 - 0.0063154525233273615im, -0.015347444273527841 + 0.0013832020178483652im, 5.314358967808096e-5 - 6.826150167724317e-5im, 2.487865885612145e-8 + 1.1913609766356663e-5im, -0.047199846485330876 + 0.012577089074798698im, -2.1827302405681532 - 5.551115123125783e-17im  …  2.1830346040947335 + 3.3306690738754696e-16im, -0.01790644928615215 - 0.04608250050924623im, 2.487865885221832e-8 - 1.191360976630256e-5im, 7.540948953696502e-5 + 4.239437081233459e-5im, -0.01582732528395334 - 0.0015364307174486145im, 0.009315479389009196 + 0.0016784190375513054im, 0.05826565213462962 + 0.1649977690327404im, -0.09950925805129857 - 0.010732579111848169im, -0.017906449286152176 + 0.04608250050924623im, 2.3740445658537723 + 8.326672684688674e-17im], (ℂ^8 ⊗ ℂ^1) ← ℂ^8) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-0.6225601584911405 - 5.551115123125783e-17im, 1.1831113558054516 + 0.30248702557222323im, 0.33617357688573246 - 0.08478195698009966im, -0.004387690209181144 - 0.0004508402444545617im, 0.020727920690093993 + 0.022513370408315435im, -0.0010430390037261296 - 0.003205090120926138im, 7.116974110737972e-13 + 8.184284955477239e-13im, 5.716104672925937e-13 + 9.446835674831178e-13im, 1.1831113558054513 - 0.302487025572223im, 0.6225601584911394 + 0.0im  …  -0.5146045926922245 + 5.551115123125783e-17im, 1.0974101759591643 + 0.6400820655787802im, 5.716130693778076e-13 - 9.446656781472718e-13im, 6.428243354283936e-13 + 8.301168996985298e-13im, -0.0014024752544488472 - 0.00413042921748025im, -0.026855705462480166 - 0.014408427327831305im, 0.002261102608151877 + 0.024624964197585725im, 0.33670854612494167 + 0.07896811173109365im, 1.0974101759591641 - 0.6400820655787801im, 0.5146045926715846 + 0.0im], (ℂ^8 ⊗ ℂ^1) ← ℂ^8) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[1.0000000000000009 + 0.0im, 1.9081958235744878e-17 + 2.688821387764051e-17im, 2.688821387764051e-17 - 5.204170427930421e-18im, 2.7755575615628914e-17 + 2.7755575615628914e-17im, 1.3010426069826053e-17 + 1.5287250632045613e-17im, 1.1796119636642288e-16 - 7.806255641895632e-17im, -1.6046192152785466e-17 + 2.42861286636753e-17im, 3.361026734705064e-17 + 1.5693826446727677e-17im, 3.2959746043559335e-17 - 4.423544863740858e-17im, 1.0000000000000007 - 2.7755575615628914e-17im  …  1.0000000000000002 + 0.0im, -4.163336342344337e-17 + 5.551115123125783e-17im, 3.599551212651875e-17 - 1.56396163381034e-17im, -3.642919299551295e-17 + 3.0466081046842675e-17im, -4.336808689942018e-17 - 5.204170427930421e-18im, 1.5178830414797062e-17 - 8.782037597132586e-18im, 3.8163916471489756e-17 - 1.1275702593849246e-16im, 4.8138576458356397e-17 - 3.2742905609062234e-17im, -2.7755575615628914e-17 - 5.551115123125783e-17im, 1.0000000000000004 + 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.4029765815452508 + 5.551115123125783e-17im, 0.027674948378106478 - 0.02448264074188062im, -0.026572459494308302 - 0.007658414806771578im, -0.14451031989159346 - 0.03882808446656427im, 0.02767494837810647 + 0.02448264074188062im, -0.9702583942177199 - 1.3877787807814457e-17im, -0.153699155322367 - 0.2005002369313946im, 0.016103422828323954 + 0.016913306956880456im, -0.026572459494308247 + 0.0076584148067715616im, -0.15369915532236667 + 0.20050023693139424im, 0.9679551719692117 + 8.326672684688674e-17im, 0.018151894519930555 - 0.005818951937531786im, -0.14451031989159313 + 0.03882808446656427im, 0.01610342282832392 - 0.01691330695688044im, 0.01815189451993056 + 0.005818951937531788im, 1.4052798037937582 + 1.1102230246251565e-16im], (ℂ^4 ⊗ ℂ^1) ← ℂ^4) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-0.2328078396070989 + 6.938893903907228e-18im, -1.0279470732694185 + 0.8953981401831508im, 0.2892793283133747 + 0.05929638150706845im, 0.011430086473419518 + 0.007632653851029111im, -1.0279470732694185 - 0.8953981401831508im, 0.23280783960710447 + 3.469446951953614e-18im, -0.01142826759170329 - 0.0076353769685082425im, 0.16556549446732027 + 0.24451310331157894im, 0.2892793283133747 - 0.05929638150706845im, -0.011428267591703262 + 0.007635376968508233im, 0.11199694089391096 + 0.0im, 1.3759005824001096 + 0.08346722500825096im, 0.011430086473419511 - 0.007632653851029111im, 0.16556549446732005 - 0.24451310331157883im, 1.3759005824001096 - 0.08346722500825099im, -0.11199694089391654 - 1.734723475976807e-18im], (ℂ^4 ⊗ ℂ^1) ← ℂ^4) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[1.0000000000000004 + 0.0im, -3.469446951953614e-18 - 1.0842021724855044e-17im, 6.938893903907228e-18 + 8.673617379884035e-18im, -5.551115123125783e-17 - 5.551115123125783e-17im, -1.0408340855860843e-17 + 1.0408340855860843e-17im, 1.0000000000000004 + 1.0842021724855044e-17im, 5.551115123125783e-17 + 0.0im, 3.469446951953614e-18 + 5.204170427930421e-18im, 6.938893903907228e-18 - 1.0408340855860843e-17im, 0.0 - 3.469446951953614e-18im, 1.0000000000000002 - 1.214306433183765e-17im, 9.75781955236954e-18 - 3.469446951953614e-18im, -5.551115123125783e-17 + 5.551115123125783e-17im, 5.204170427930421e-18 - 1.734723475976807e-18im, 5.854691731421724e-18 + 1.734723475976807e-18im, 1.0000000000000002 + 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[-0.4999369327507835 + 0.0im, 0.0054176285915388655 - 0.00580625285213047im, 0.0054176285915388655 + 0.00580625285213047im, 0.4999369327507836 + 0.0im], (ℂ^2 ⊗ ℂ^1) ← ℂ^2) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[-0.020511832361528502 + 8.673617379884035e-19im, -0.45960906449580746 + 1.3372878420768142im, -0.45960906449580735 - 1.337287842076814im, 0.020511832361528502 - 8.673617379884035e-19im], (ℂ^2 ⊗ ℂ^1) ← ℂ^2) TensorMap{ComplexF64, TensorKit.ComplexSpace, 2, 1, Vector{ComplexF64}}(ComplexF64[1.0000000000000002 + 0.0im, -8.673617379884035e-19 + 0.0im, -8.673617379884035e-19 + 0.0im, 1.0000000000000004 + 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.3441043260315136e-11)

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:

julia
entropy(ψ, L ÷ 2)   # entropy across the central cut
0.6885976457856008

2. Entropy profile across every cut

Collecting entropy(ψ, i) over the valid range of sites gives the full entropy profile of the chain:

julia
[entropy(ψ, i) for i in 1:L]
8-element Vector{Float64}:
  0.5687362834103786
  0.6619622060572374
  0.6843192424818697
  0.6885976457856008
  0.684319242481868
  0.6619622060572355
  0.5687362834103786
 -4.440892098500627e-16

Warning

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:

julia
spectrum = entanglement_spectrum(ψ, L ÷ 2)
8-element TensorKit.SectorVector{Float64, TensorKitSectors.Trivial, Vector{Float64}}:
 0.7479933771764945
 0.6634940095407357
 0.012553077940045235
 0.011134980961940467
 0.00014854190115489376
 0.0001317614093731664
 2.4928804440245746e-6
 2.2112645536649657e-6

The entropy can equivalently be computed directly from this spectrum with entropy:

julia
entropy(spectrum)
0.6885976457856008
julia
entropy(ψ, L ÷ 2)  entropy(spectrum)
true

Both 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:

julia
collect(keys(spectrum))
1-element Vector{TensorKitSectors.Trivial}:
 Trivial()
julia
spectrum[only(keys(spectrum))]
8-element view(::Vector{Float64}, 1:8) with eltype Float64:
 0.7479933771764945
 0.6634940095407357
 0.012553077940045235
 0.011134980961940467
 0.00014854190115489376
 0.0001317614093731664
 2.4928804440245746e-6
 2.2112645536649657e-6

For 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:

julia
collect(pairs(spectrum))
1-element Vector{Pair{TensorKitSectors.Trivial, SubArray{Float64, 1, Vector{Float64}, Tuple{UnitRange{Int64}}, true}}}:
 Trivial() => [0.7479933771764945, 0.6634940095407357, 0.012553077940045235, 0.011134980961940467, 0.00014854190115489376, 0.0001317614093731664, 2.4928804440245746e-6, 2.2112645536649657e-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:

julia
ψ∞ = InfiniteMPS(ℂ^2, ℂ^8)
entropy(ψ∞)
1-element Vector{Float64}:
 0.00020736907966632383
julia
entanglement_spectrum(ψ∞)   # site defaults to 0
8-element TensorKit.SectorVector{Float64, TensorKitSectors.Trivial, Vector{Float64}}:
 0.9999914069316388
 0.004106152489080523
 0.0005685944506327654
 4.65963260524112e-5
 9.909687124288924e-6
 2.0738326635249596e-6
 1.0351802784173629e-6
 4.206801368195466e-7

Note

ψ∞ 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:

julia
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.