From d93431959bb6649e1a415142ead43fb458d9ccca Mon Sep 17 00:00:00 2001 From: joserapa98 Date: Fri, 10 May 2024 09:12:36 +0200 Subject: [PATCH] Add note to warn about failing tests --- README.md | 6 ++++++ docs/_build/doctrees/environment.pickle | Bin 979966 -> 979965 bytes docs/_build/doctrees/index.doctree | Bin 27077 -> 28127 bytes docs/_build/html/_sources/index.rst.txt | 6 ++++++ docs/_build/html/index.html | 7 +++++++ docs/_build/html/searchindex.js | 2 +- docs/index.rst | 6 ++++++ 7 files changed, 26 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index e38b2af..b3f0c96 100644 --- a/README.md +++ b/README.md @@ -79,6 +79,12 @@ python -m pytest -v inside the repository folder. +> [!NOTE] +Certain tests may experience failure as a result of statistical anomalies or +hardware constraints. We advise reviewing the error messages to determine if +these failures stem from such occurrences. Should this be the case, consider +rerunning the tests to ascertain if the errors persist. + ## Example diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle index b2889a1612f6a905f7886609d3813bfc0ca6964c..96ca032374859d8907da61d9c9c49a257607b60c 100644 GIT binary patch delta 106060 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

4xs{GS(QL+58&VPayq3;V@`V@pf`cqZK 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 delta 105486 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 MnpWUbc3R8-3$-m#EdT%j delta 1803 zcmaJ?TTEP46y=;dcgj#(pu8ELLd)>97AQp8%A{0VCfuM11?n^m!_>=>M+=OPG-RmO zDbPt<*|(3>MpM3;YE0m^#t;*cL}N@$O!PzKqftNFsP&O_Ox0@K`^>-)Km3?A_w2Lw z-s`Nh=gzGa_VJfYolws&^v|gaC9qt6F8&ISi_`7mG90UTH0dHOa&$${)hqNo*AAGk z@bhbYW{<|^kWi^sBlQ|wuN=iFG}hNxYcOz;!?B_?bExVog@49jv8GPlNnx1S@fZ7= z^59%|y!F5;H61>${*B*`FkMk*DkRmu!^5)IKa^voUSaIAGaJL;Y|4Vo3H6FdR=`tO zVI7a`ez&tqCS}36Ql^OF$YwNky6y(0lFp}Ao2Qv)>t{LJ4IkFjtIx>h!woHL2Yiv8 z2P+LFwoXMF(jhBBtKE{+Mv<5+UemS9WULR8>#|{DZ!I5`ROwBhd1B92j(d;S*Q!3O z-e!K=c#^Z=8u@ID9E3Z258_s1latTN@Mbzy5Zn2C_4H6VTy>Viou&rK$%P49ks@wJ z@+A>2?Q_b#Y`C|tj(@s->+loH>$>>Wf%nyE(75E8HuI z12Li(rk|d}FcFK76EWJr-z&nXuk?g5Za8#Rx9S_*hWJx~^KBJ23msHNFa!H7EFjYG z(QP=y48;wC3j~)4E)!fKcoV@VG7w!%Wa5`5vJj_4wnV$c97I=~$d!vcM7QDB%f`3?!N}hhJs3 zZt7(homBe~nAoIR0hjG6{F?J{d|PBQ(R`)nInD=ESS)ftig&kqfeJvo*Tv45SG_^b z=1s?uTS_2=31W)i2ZnH)z`)nBc%7gXr&hEORH84UjNn~@w-G`c2Kv3ep;5eDLP>nPln@ zMKlITsML6uo}@Installation +

Note

+

Certain tests may experience failure as a result of statistical anomalies or +hardware constraints. We advise reviewing the error messages to determine if +these failures stem from such occurrences. Should this be the case, consider +rerunning the tests to ascertain if the errors persist.

+

Example#

diff --git a/docs/_build/html/searchindex.js b/docs/_build/html/searchindex.js index 94540b8..57d2e27 100644 --- a/docs/_build/html/searchindex.js +++ b/docs/_build/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({docnames:["api","components","contents","decompositions","embeddings","examples","examples/hybrid_tnn_model","examples/mps_dmrg","examples/mps_dmrg_hybrid","examples/tensorizing_nn","examples/training_mps","index","initializers","installation","models","operations","tutorials","tutorials/0_first_steps","tutorials/1_creating_tensor_network","tutorials/2_contracting_tensor_network","tutorials/3_memory_management","tutorials/4_types_of_nodes","tutorials/5_subclass_tensor_network","tutorials/6_mix_with_pytorch"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":5,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":3,"sphinx.domains.rst":2,"sphinx.domains.std":2,"sphinx.ext.viewcode":1,nbsphinx:4,sphinx:56},filenames:["api.rst","components.rst","contents.rst","decompositions.rst","embeddings.rst","examples.rst","examples/hybrid_tnn_model.ipynb","examples/mps_dmrg.ipynb","examples/mps_dmrg_hybrid.ipynb","examples/tensorizing_nn.ipynb","examples/training_mps.ipynb","index.rst","initializers.rst","installation.rst","models.rst","operations.rst","tutorials.rst","tutorials/0_first_steps.rst","tutorials/1_creating_tensor_network.rst","tutorials/2_contracting_tensor_network.rst","tutorials/3_memory_management.rst","tutorials/4_types_of_nodes.rst","tutorials/5_subclass_tensor_network.rst","tutorials/6_mix_with_pytorch.rst"],objects:{"tensorkrowch.AbstractNode":[[1,1,1,"","axes"],[1,1,1,"","axes_names"],[1,2,1,"","contract_between"],[1,2,1,"","contract_between_"],[1,1,1,"","device"],[1,2,1,"","disconnect"],[1,1,1,"","dtype"],[1,1,1,"","edges"],[1,2,1,"","get_axis"],[1,2,1,"","get_axis_num"],[1,2,1,"","get_edge"],[1,2,1,"","in_which_axis"],[1,2,1,"","is_connected_to"],[1,2,1,"","is_data"],[1,2,1,"","is_leaf"],[1,2,1,"","is_node1"],[1,2,1,"","is_resultant"],[1,2,1,"","is_virtual"],[1,2,1,"","make_tensor"],[1,2,1,"","mean"],[1,2,1,"","move_to_network"],[1,1,1,"","name"],[1,2,1,"","neighbours"],[1,1,1,"","network"],[1,2,1,"","node_ref"],[1,2,1,"","norm"],[1,2,1,"","numel"],[1,2,1,"","permute"],[1,2,1,"","permute_"],[1,1,1,"","rank"],[1,2,1,"","reattach_edges"],[1,2,1,"","renormalize"],[1,2,1,"","reset_tensor_address"],[1,2,1,"","set_tensor"],[1,2,1,"","set_tensor_from"],[1,1,1,"","shape"],[1,2,1,"","size"],[1,2,1,"","split"],[1,2,1,"","split_"],[1,2,1,"","std"],[1,1,1,"","successors"],[1,2,1,"","sum"],[1,1,1,"","tensor"],[1,2,1,"","tensor_address"],[1,2,1,"","unset_tensor"]],"tensorkrowch.Axis":[[1,2,1,"","is_batch"],[1,2,1,"","is_node1"],[1,1,1,"","name"],[1,1,1,"","node"],[1,1,1,"","num"]],"tensorkrowch.Edge":[[1,1,1,"","axes"],[1,1,1,"","axis1"],[1,1,1,"","axis2"],[1,2,1,"","change_size"],[1,2,1,"","connect"],[1,2,1,"","contract"],[1,2,1,"","contract_"],[1,2,1,"","copy"],[1,2,1,"","disconnect"],[1,2,1,"","is_attached_to"],[1,2,1,"","is_batch"],[1,2,1,"","is_dangling"],[1,1,1,"","name"],[1,1,1,"","node1"],[1,1,1,"","node2"],[1,1,1,"","nodes"],[1,2,1,"","qr"],[1,2,1,"","qr_"],[1,2,1,"","rq"],[1,2,1,"","rq_"],[1,2,1,"","size"],[1,2,1,"","svd"],[1,2,1,"","svd_"],[1,2,1,"","svdr"],[1,2,1,"","svdr_"]],"tensorkrowch.Node":[[1,2,1,"","change_type"],[1,2,1,"","copy"],[1,2,1,"","parameterize"]],"tensorkrowch.ParamNode":[[1,2,1,"","change_type"],[1,2,1,"","copy"],[1,1,1,"","grad"],[1,2,1,"","parameterize"]],"tensorkrowch.ParamStackNode":[[1,1,1,"","edges_dict"],[1,1,1,"","node1_lists_dict"],[1,2,1,"","reconnect"],[1,2,1,"","unbind"]],"tensorkrowch.StackEdge":[[1,2,1,"","connect"],[1,1,1,"","edges"],[1,1,1,"","node1_list"]],"tensorkrowch.StackNode":[[1,1,1,"","edges_dict"],[1,1,1,"","node1_lists_dict"],[1,2,1,"","reconnect"],[1,2,1,"","unbind"]],"tensorkrowch.TensorNetwork":[[1,2,1,"","add_data"],[1,1,1,"","auto_stack"],[1,1,1,"","auto_unbind"],[1,2,1,"","contract"],[1,2,1,"","copy"],[1,1,1,"","data_nodes"],[1,2,1,"","delete_node"],[1,1,1,"","edges"],[1,2,1,"","forward"],[1,1,1,"","leaf_nodes"],[1,1,1,"","nodes"],[1,1,1,"","nodes_names"],[1,2,1,"","parameterize"],[1,2,1,"","reset"],[1,1,1,"","resultant_nodes"],[1,2,1,"","set_data_nodes"],[1,2,1,"","trace"],[1,2,1,"","unset_data_nodes"],[1,1,1,"","virtual_nodes"]],"tensorkrowch.decompositions":[[3,3,1,"","mat_to_mpo"],[3,3,1,"","vec_to_mps"]],"tensorkrowch.embeddings":[[4,3,1,"","add_ones"],[4,3,1,"","basis"],[4,3,1,"","discretize"],[4,3,1,"","poly"],[4,3,1,"","unit"]],"tensorkrowch.models":[[14,0,1,"","ConvMPS"],[14,0,1,"","ConvMPSLayer"],[14,0,1,"","ConvPEPS"],[14,0,1,"","ConvTree"],[14,0,1,"","ConvUMPS"],[14,0,1,"","ConvUMPSLayer"],[14,0,1,"","ConvUPEPS"],[14,0,1,"","ConvUTree"],[14,0,1,"","MPO"],[14,0,1,"","MPS"],[14,0,1,"","MPSData"],[14,0,1,"","MPSLayer"],[14,0,1,"","PEPS"],[14,0,1,"","Tree"],[14,0,1,"","UMPO"],[14,0,1,"","UMPS"],[14,0,1,"","UMPSLayer"],[14,0,1,"","UPEPS"],[14,0,1,"","UTree"]],"tensorkrowch.models.ConvMPS":[[14,2,1,"","copy"],[14,1,1,"","dilation"],[14,2,1,"","forward"],[14,1,1,"","in_channels"],[14,1,1,"","kernel_size"],[14,1,1,"","padding"],[14,1,1,"","stride"]],"tensorkrowch.models.ConvMPSLayer":[[14,2,1,"","copy"],[14,1,1,"","dilation"],[14,2,1,"","forward"],[14,1,1,"","in_channels"],[14,1,1,"","kernel_size"],[14,1,1,"","out_channels"],[14,1,1,"","padding"],[14,1,1,"","stride"]],"tensorkrowch.models.ConvPEPS":[[14,1,1,"","dilation"],[14,2,1,"","forward"],[14,1,1,"","in_channels"],[14,1,1,"","kernel_size"],[14,1,1,"","padding"],[14,1,1,"","stride"]],"tensorkrowch.models.ConvTree":[[14,1,1,"","dilation"],[14,2,1,"","forward"],[14,1,1,"","in_channels"],[14,1,1,"","kernel_size"],[14,1,1,"","padding"],[14,1,1,"","stride"]],"tensorkrowch.models.ConvUMPS":[[14,2,1,"","copy"],[14,1,1,"","dilation"],[14,2,1,"","forward"],[14,1,1,"","in_channels"],[14,1,1,"","kernel_size"],[14,1,1,"","padding"],[14,1,1,"","stride"]],"tensorkrowch.models.ConvUMPSLayer":[[14,2,1,"","copy"],[14,1,1,"","dilation"],[14,2,1,"","forward"],[14,1,1,"","in_channels"],[14,1,1,"","kernel_size"],[14,1,1,"","out_channels"],[14,1,1,"","padding"],[14,1,1,"","stride"]],"tensorkrowch.models.ConvUPEPS":[[14,1,1,"","dilation"],[14,2,1,"","forward"],[14,1,1,"","in_channels"],[14,1,1,"","kernel_size"],[14,1,1,"","padding"],[14,1,1,"","stride"]],"tensorkrowch.models.ConvUTree":[[14,1,1,"","dilation"],[14,2,1,"","forward"],[14,1,1,"","in_channels"],[14,1,1,"","kernel_size"],[14,1,1,"","padding"],[14,1,1,"","stride"]],"tensorkrowch.models.MPO":[[14,1,1,"","bond_dim"],[14,1,1,"","boundary"],[14,2,1,"","canonicalize"],[14,2,1,"","contract"],[14,2,1,"","copy"],[14,1,1,"","in_dim"],[14,2,1,"","initialize"],[14,1,1,"","left_node"],[14,1,1,"","mats_env"],[14,1,1,"","n_batches"],[14,1,1,"","n_features"],[14,1,1,"","out_dim"],[14,2,1,"","parameterize"],[14,1,1,"","right_node"],[14,2,1,"","set_data_nodes"],[14,1,1,"","tensors"],[14,2,1,"","update_bond_dim"]],"tensorkrowch.models.MPS":[[14,1,1,"","bond_dim"],[14,1,1,"","boundary"],[14,2,1,"","canonicalize"],[14,2,1,"","canonicalize_univocal"],[14,2,1,"","contract"],[14,2,1,"","copy"],[14,2,1,"","entropy"],[14,1,1,"","in_env"],[14,1,1,"","in_features"],[14,1,1,"","in_regions"],[14,2,1,"","initialize"],[14,1,1,"","left_node"],[14,1,1,"","mats_env"],[14,1,1,"","n_batches"],[14,1,1,"","n_features"],[14,2,1,"","norm"],[14,1,1,"","out_env"],[14,1,1,"","out_features"],[14,1,1,"","out_regions"],[14,2,1,"","parameterize"],[14,2,1,"","partial_density"],[14,1,1,"","phys_dim"],[14,1,1,"","right_node"],[14,2,1,"","set_data_nodes"],[14,1,1,"","tensors"],[14,2,1,"","update_bond_dim"]],"tensorkrowch.models.MPSData":[[14,2,1,"","add_data"],[14,1,1,"","bond_dim"],[14,1,1,"","boundary"],[14,2,1,"","initialize"],[14,1,1,"","left_node"],[14,1,1,"","mats_env"],[14,1,1,"","n_batches"],[14,1,1,"","n_features"],[14,1,1,"","phys_dim"],[14,1,1,"","right_node"]],"tensorkrowch.models.MPSLayer":[[14,2,1,"","copy"],[14,1,1,"","in_dim"],[14,2,1,"","initialize"],[14,1,1,"","out_dim"],[14,1,1,"","out_node"],[14,1,1,"","out_position"]],"tensorkrowch.models.PEPS":[[14,1,1,"","bond_dim"],[14,1,1,"","boundary"],[14,2,1,"","contract"],[14,1,1,"","in_dim"],[14,2,1,"","initialize"],[14,1,1,"","n_batches"],[14,1,1,"","n_cols"],[14,1,1,"","n_rows"],[14,2,1,"","set_data_nodes"]],"tensorkrowch.models.Tree":[[14,1,1,"","bond_dim"],[14,2,1,"","canonicalize"],[14,2,1,"","contract"],[14,2,1,"","initialize"],[14,1,1,"","n_batches"],[14,2,1,"","set_data_nodes"],[14,1,1,"","sites_per_layer"]],"tensorkrowch.models.UMPO":[[14,2,1,"","copy"],[14,2,1,"","initialize"],[14,2,1,"","parameterize"]],"tensorkrowch.models.UMPS":[[14,2,1,"","copy"],[14,2,1,"","initialize"],[14,2,1,"","parameterize"]],"tensorkrowch.models.UMPSLayer":[[14,2,1,"","copy"],[14,1,1,"","in_dim"],[14,2,1,"","initialize"],[14,1,1,"","out_dim"],[14,1,1,"","out_node"],[14,1,1,"","out_position"],[14,2,1,"","parameterize"]],"tensorkrowch.models.UPEPS":[[14,1,1,"","bond_dim"],[14,2,1,"","contract"],[14,1,1,"","in_dim"],[14,2,1,"","initialize"],[14,1,1,"","n_batches"],[14,1,1,"","n_cols"],[14,1,1,"","n_rows"],[14,2,1,"","set_data_nodes"]],"tensorkrowch.models.UTree":[[14,1,1,"","bond_dim"],[14,2,1,"","contract"],[14,2,1,"","initialize"],[14,1,1,"","n_batches"],[14,2,1,"","set_data_nodes"],[14,1,1,"","sites_per_layer"]],tensorkrowch:[[1,0,1,"","AbstractNode"],[1,0,1,"","Axis"],[1,0,1,"","Edge"],[1,0,1,"","Node"],[15,0,1,"","Operation"],[1,0,1,"","ParamNode"],[1,0,1,"","ParamStackNode"],[1,0,1,"","StackEdge"],[1,0,1,"","StackNode"],[1,0,1,"","Successor"],[1,0,1,"","TensorNetwork"],[15,3,1,"","add"],[15,3,1,"","connect"],[15,3,1,"","connect_stack"],[15,3,1,"","contract"],[15,3,1,"","contract_"],[15,3,1,"","contract_between"],[15,3,1,"","contract_between_"],[15,3,1,"","contract_edges"],[12,3,1,"","copy"],[15,3,1,"","disconnect"],[15,3,1,"","div"],[15,3,1,"","einsum"],[12,3,1,"","empty"],[15,3,1,"","mul"],[12,3,1,"","ones"],[15,3,1,"","permute"],[15,3,1,"","permute_"],[15,3,1,"","qr"],[15,3,1,"","qr_"],[12,3,1,"","rand"],[12,3,1,"","randn"],[15,3,1,"","renormalize"],[15,3,1,"","rq"],[15,3,1,"","rq_"],[15,3,1,"","split"],[15,3,1,"","split_"],[15,3,1,"","stack"],[15,3,1,"","stacked_einsum"],[15,3,1,"","sub"],[15,3,1,"","svd"],[15,3,1,"","svd_"],[15,3,1,"","svdr"],[15,3,1,"","svdr_"],[15,3,1,"","tprod"],[15,3,1,"","unbind"],[12,3,1,"","zeros"]]},objnames:{"0":["py","class","Python class"],"1":["py","property","Python property"],"2":["py","method","Python method"],"3":["py","function","Python function"]},objtypes:{"0":"py:class","1":"py:property","2":"py:method","3":"py:function"},terms:{"0":[1,3,4,6,7,8,9,10,11,14,15,17,19,21,22,23],"00":[4,7],"0000":4,"0000e":4,"0086":1,"01":[7,10],"0101":1,"0188":1,"02":7,"0234":1,"03":[9,10],"0371":1,"04":[7,9],"0412":1,"0440":1,"0445":1,"0465":1,"05":7,"0501":1,"0521":1,"06":[7,9],"0633":1,"0639":17,"07":[7,9],"0704":1,"0728":17,"0743":1,"0750":17,"08":[4,9],"0806":1,"0820":17,"08595":11,"09":[7,10,14],"0913":17,"0983":17,"0998":17,"1":[1,3,4,6,7,8,9,10,11,14,15,23],"10":[1,4,6,7,8,9,10,11,14,15,17,19,22,23],"100":[1,4,6,7,8,9,10,11,14,15,18,19,20,21],"10000":[17,23],"101":7,"1024":[17,23],"104":7,"106":7,"108":7,"1091":1,"11":[6,7,8,9,10],"110":7,"1123":17,"113":7,"115":7,"117":7,"119":7,"12":[6,7,9,10],"1211":1,"122":7,"124":7,"126":7,"128":7,"13":[6,7,9],"1308":17,"131":7,"133":7,"135":7,"137":7,"1371":1,"14":[6,7,8,9,10,23],"140":7,"142":7,"144":7,"146":7,"149":7,"1496":1,"15":[1,6,7,8,9,10,15,19],"151":7,"153":7,"155":7,"1573":17,"158":7,"159674":10,"159962":10,"16":[6,7,8,9,10],"160":7,"161204":17,"162":7,"164":7,"16406":9,"1654":1,"167":7,"169":7,"17":[6,7,9,10],"171":7,"173":7,"176":7,"178":7,"18":[6,7,10],"180":7,"182":7,"185":7,"187":7,"1878":23,"189":7,"19":[7,9,10],"191":7,"194":7,"1955":17,"196":7,"198":7,"1990":17,"1998":1,"1e":[6,7,8,9,10,14,17,22,23],"2":[1,4,6,7,8,9,10,14,15,23],"20":[1,7,10,14,15,23],"200":7,"203":7,"205":7,"2052":23,"207":7,"209":7,"2091":1,"2095":1,"21":[7,10],"2111":1,"212":7,"214":7,"216":7,"218":7,"22":[6,7,10],"2203":23,"221":7,"223":7,"2254":1,"23":[7,10],"2306":11,"2316":1,"2357":23,"236220":[10,17],"2380":1,"2390":1,"24":[7,8],"2449":1,"2461":1,"2477":1,"25":[7,8],"2503":1,"2517":1,"26":7,"2618":23,"27":[7,8],"2730":1,"2775":1,"27944":9,"2799":1,"28":[6,7,8,9,10,17,23],"2808":1,"2840":23,"2856":1,"2866":1,"2898":1,"29":[7,8],"2d":14,"2f":[6,7,8,9,10],"3":[1,4,6,7,8,9,10,11,14,15,21,23],"30":[7,9,23],"3083":17,"3088":1,"31":7,"3139":1,"3149":23,"32":[7,14,17],"3222":1,"33":[6,7,9],"3340":1,"3370":1,"3371":1,"3381":1,"3393":1,"34":7,"3427":1,"3489":1,"35":[6,7,9],"3508":1,"3513":1,"3585":1,"36":7,"37":[7,8],"3711e":4,"3714":23,"3760":1,"3784":1,"38":[6,7,8],"3821":1,"39":[6,7,8,9,10],"39760":9,"4":[1,4,6,7,8,9,10,14,15,19,21,23],"40":[6,7,10,23],"4005":1,"41":7,"4181":1,"4184":1,"42":[7,8],"4216":1,"43":7,"4383":1,"4385":1,"44":7,"4402":1,"4431":1,"4461":1,"45":[6,7,8,9],"4572":1,"4588":1,"46":7,"462803":6,"47":7,"4731":1,"4761":1,"48":7,"49":[7,8],"4974":1,"499320":23,"4f":[17,23],"5":[1,4,6,7,8,9,10,11,14,15,18,19,20,21,23],"50":[6,7,9,23],"500":[11,17,22,23],"5000":4,"5021":1,"5029":1,"5069":1,"51":7,"5161":1,"52":[7,8,9,10],"5224":23,"53":7,"54":7,"5401":1,"5406":1,"55":[6,7,10],"553036":6,"553186":23,"5567":1,"5570":1,"56":[7,9],"5676":17,"57":[7,9,10],"5731":1,"5760":1,"5797":1,"58":[7,10],"59":[7,8],"5920":1,"6":[1,4,6,7,8,9,10,14,23],"60":[7,23],"60000":[17,23],"6023":1,"61":[6,7],"6149":17,"61999999999999":9,"62":[7,8,9],"6225":1,"6227":1,"6295":1,"63":7,"6356":1,"6399":1,"64":[6,7,8,9,10],"6492":1,"6495":1,"65":[7,8,10],"6524":1,"6545":1,"6551":1,"66":7,"67":[7,10],"68":7,"6811":1,"69":[7,8,9,10],"6925":1,"6982":1,"7":[1,6,7,8,9,10,11,14,15,19,20,23],"70":[7,8,9,23],"71":7,"72":[7,10],"73":[7,9],"74":[7,10],"75":[4,7],"7500":4,"7592":1,"76":[7,10],"7688":1,"77":7,"7752":1,"78":7,"7812":1,"79":[6,7,10],"7997":1,"8":[6,7,8,9,10,11,14,17],"80":[6,7,23],"8090":1,"81":[6,7,8,9],"8147":1,"82":7,"8227":1,"83":[6,7,9,10],"8361":1,"8387":1,"84":[6,7,8,9,10],"8441":1,"8442":1,"85":[6,7,9],"8502":23,"86":[6,7,9],"8627":23,"8633":1,"8649":1,"87":[6,7,9],"8795":23,"88":[6,7,9],"8815":1,"8820":17,"8848":23,"8851":23,"8859":1,"89":[6,7,9],"8901":23,"8911":1,"8915":23,"8948":23,"8968":23,"8984":23,"9":[6,7,8,9,10,11,14,17,22,23],"90":[7,9,23],"9006":1,"9009":23,"9011":[17,23],"9026":23,"9048":23,"9053":17,"91":[7,10],"9125":23,"9145":1,"9174":23,"92":[7,10],"9231":23,"9265":1,"9284":23,"93":[7,10],"9320":1,"9371":17,"9396":17,"94":[7,9],"9400":17,"9432":1,"95":[6,7,8,9,10],"9509":17,"9526":17,"9551":1,"9561":1,"9585":17,"96":[7,8,9,10],"9600":17,"9618":1,"9621":17,"9625":17,"9668":17,"9677":17,"9696":17,"97":[7,8,10],"9700":17,"9721":17,"9729":17,"9731":17,"9734":17,"9736":17,"9738":17,"9743":17,"9768":17,"9775":17,"9793":17,"98":[6,7,8,10,23],"9844":1,"99":[6,7,17],"9925":1,"9942":1,"9957":1,"abstract":1,"boolean":[1,12,14],"break":[7,8],"byte":[17,23],"case":[1,3,14,20,21,22],"class":[0,1,6,7,8,9,14,17,19,22,23],"default":[1,4,14,20,21],"do":[1,14,17,18,20,21,22],"final":[1,3,14,19,22],"float":[1,3,6,7,8,9,10,14,15],"function":[1,14,15,19,23],"garc\u00eda":11,"import":[1,6,7,8,9,10,11,18,19,20,21,22,23],"int":[1,3,4,10,12,14,15],"n\u00ba":[17,23],"new":[1,4,14,15,17,18,19,20,22,23],"p\u00e9rez":11,"return":[1,3,4,6,7,8,9,10,12,14,15,17,18,19,20,22,23],"super":[1,6,7,8,9,22,23],"true":[1,6,7,8,9,10,11,12,14,15,17,19,20,21,22,23],"try":[10,19,23],"while":[1,7,8,11,19,20,21],A:[1,11,14,15,18],And:[20,23],As:[11,14,17,18,19,20],At:[1,18],Be:[1,19],But:[19,20,22,23],By:[1,4,11,14,17,18],For:[1,14,15,18,19,20,21,22],If:[1,3,4,11,14,15,18,20,22],In:[1,3,8,11,14,15,17,18,19,20,21,22,23],Is:14,It:[1,3,11,14,15,17,18,19,23],Its:[1,15],Not:22,Of:[20,22],On:1,One:[1,10,18],That:[1,3,4,14,15,19,20,22,23],The:[1,3,4,11,14,15,16,18,19,20,23],Then:[1,14,20],There:[1,14,19,21,22],These:[1,3,11,14,18,19,21],To:[1,3,4,11,13,14,15,17,18,19,20,21,22],With:[1,10,11,15,18,19,22],_:[1,6,7,8,9,10,14,15,17,18,22,23],__call__:1,__init__:[1,6,7,8,9,22,23],_channel:14,_copi:1,_dim:1,_left_nod:7,_mats_env:[7,8],_percentag:[1,3,14,15],_right_nod:7,_size:14,_size_0:14,_size_1:14,_size_:1,a_:15,abil:11,abl:[1,11,18,19,22],about:[1,15,18,19,20,21,22],abov:[1,18,22],abstractnod:[0,12,15],acc:[6,7,8,9,10,17,23],acceler:[1,9,10],accept:19,access:[1,18,19,20],accomplish:[1,3,14,21],accord:[1,15],accordingli:14,account:[1,14,21],accross:[1,15],accumul:[3,14],accuraci:[6,7,8,9,10,17,23],achiev:1,act:[1,14,18,20],action:1,activ:1,actual:[1,14,18,19,20,23],ad:[1,4,14,15,19,22],adam:[6,7,8,9,10,17,23],adapt:[11,15],add:[0,1,14,17,19,22,23],add_data:[1,9,14,21,22],add_on:[0,23],addit:[1,11,14,15],addition:1,address:[1,18,20],admit:[14,15],advanc:[1,11,16],advantag:[8,20,22],affect:[1,15],after:[1,3,8,14,17,23],afterward:[1,14,15],again:[8,10,14,17,20,22],against:14,aim:[3,14,17],alejandro:11,algorithm:[1,14,20,22,23],all:[1,3,4,8,10,14,15,17,18,19,20,21,22,23],allow:[1,11,14],almost:[1,19,20,21,23],along:[1,15],alreadi:[1,7,14,15,17,18,19,22],also:[1,3,8,11,13,14,15,17,18,19,20,21,22],alter:14,although:[1,10,18,19,20,21,22],alwai:[1,11,14,15,17,18,19,20,21,22],among:[3,14],amount:[15,17],an:[1,3,4,6,9,10,11,12,14,15,17,18,19,20,21,22],ancillari:[1,20,21],ani:[1,7,8,14,15,18,19,22],anoth:[1,14,15,18,19],antialia:[7,8,9,10],anymor:1,api:2,appear:[1,15,18],append:[6,7,8,19,20,21,22,23],appli:[1,11,14,15,19],approach:[8,10,11],appropi:[14,15,22,23],approxim:1,ar:[1,3,4,8,11,13,14,15,17,18,19,21,22,23],arang:[4,7,8],arbitrari:1,architectur:11,archiveprefix:11,arg:[1,6,7,8,9,12,14],argument:[1,3,12,14,15,22],aros:1,around:17,arrai:18,arrow:15,arxiv:11,assert:[1,11,14,15,18,19,20,21],assign:14,assum:[1,4,14,15],attach:[1,15,18],attribut:[1,14,22],author:11,auto_stack:[1,15,17,20,21,22,23],auto_unbind:[1,15,17,20,22,23],automat:[1,15,18,19,20],auxiliari:15,avail:[11,17,18],avoid:[1,3,14,15,20],awar:[1,19],ax:[1,7,8,14,15,18,19],axes_nam:[1,7,8,11,15,18,19,20,21,22],axi:[0,4,7,8,15,18,22,23],axis1:1,axis2:1,axis_0:1,axis_1:1,axis_2:1,axis_n:1,b:[4,14,15,19],b_1:3,b_:15,b_m:3,backend:[6,7,8,9,10],backpropag:[17,23],backward:[1,6,7,8,9,10,11,17,19,23],bar:[7,8],base:[1,4,10,14,15,19],basi:[0,10,14],basic:[1,11,18,19],batch:[1,3,4,10,11,14,15,17,18,19,21,22],batch_0:[4,14],batch_1:[1,14,22],batch_idx:[6,7,8,9,10],batch_m:1,batch_n:[4,14,22],batch_siz:[6,7,8,9,10,14,17,23],becaus:[1,14,20,23],becom:[1,11,14,15],been:[1,14,15,18,22],befor:[1,6,7,8,9,10,14,17,18,22,23],beforehand:18,beggin:8,begin:[4,17,18,23],behav:[1,20],behavior:[3,14],behaviour:[1,14,15,18,20,21],being:[1,3,4,14,15,19],belong:[1,14,17,18,19],besid:[1,14,15,18],best:[10,11],better:18,between:[1,3,4,10,11,14,15,18,20,21,23],bia:9,big:[14,19],bigger:14,binom:4,blank:1,block:[7,8],block_:8,block_length:[7,8],block_nod:[7,8],block_posit:7,bmatrix:4,bodi:18,bond:[3,8,14],bond_dim:[6,7,8,9,10,11,14,17,23],bool:[1,3,12,14],border:14,both:[1,14,15,18,19,20,21,22],bottom:[14,23],boudari:14,bound:[1,3,14,15],boundari:[3,7,8,9,10,14],bracket:1,bridg:11,bring:17,build:[1,6,11,16,19],built:[11,17,19,22],bunch:[1,19,22],c_:15,cach:[1,20],calcul:20,call:[1,14,15,17,19,22,23],callabl:15,can:[1,3,4,6,7,8,9,10,11,13,14,15,17,18,19,20,21,22,23],cannot:[1,7,14,15,19,21],canon:[6,10,14,17,23],canonic:[6,9,10,14,17,23],canonicalize_univoc:14,carri:[1,14,15,18],cast:1,cat:[6,23],caus:14,cdot:[3,4,14],center:14,central:[1,18,23],certain:[1,4,10,11,15],chang:[1,6,10,11,14,15,18,20,22,23],change_s:1,change_typ:1,channel:14,charact:1,check:[1,6,7,8,9,10,14,15,17,18,19,20,21,23],check_accuraci:[6,7,8,9,10],check_first:15,child:1,choic:10,choos:10,chose:21,classif:[14,17],classifi:[17,22],clone:[11,13,14],close:14,cmap:[6,7,8,9,10],cnn:[6,23],cnn_snake:[6,23],cnn_snakesb:[6,23],co:4,code:[1,10,11,18,23],coincid:[14,15,18],collect:[1,11,15,19,20],column:14,com:[11,13],combin:[1,6,10,14,18,22,23],come:[1,15,17,18,21,22],comma:15,command:[11,13],common:[1,14,17,22],compar:20,complementari:14,complet:[1,15],compon:[0,4,11,15,17,19],compos:[7,8,9,10,17,23],comput:[1,3,4,11,13,14,15,17,19,20,22,23],concaten:4,concept:11,condit:[3,14,15],configur:[10,11],conform:1,connect:[0,1,9,11,14,18,19,20,21,22],connect_stack:0,consecut:[3,14],consid:14,consist:[1,15],construct:[1,11,19,20],contain:[1,14,18,19,20,21],context:11,continu:17,contract:[0,1,6,7,8,9,10,11,14,16,17,18,20,21,22],contract_:[0,1,19],contract_between:[0,1,19],contract_between_:[0,1,7,8,19],contract_edg:[0,1,19],contract_edges_ip:[1,15],contrast:[10,14],contrat:14,control:[1,18,20],conv2d:[6,14,23],conv_mp:14,conv_mps_lay:14,conv_pep:14,conv_tre:14,conveni:[14,21],convent:[1,15,19,22],converg:10,convmp:0,convmpslay:[0,6,23],convolut:[6,14,22,23],convpep:0,convtre:0,convump:0,convumpslay:0,convupep:0,convutre:0,copi:[0,1,14],core:[8,10,14,18,23],corner:14,correct:[1,7,8,9,10,20],correctli:15,correspond:[1,3,4,14,15,18,19,20,22],costli:[1,14,20],could:[14,17,18,20,22],count:17,coupl:[1,18,21],cours:[20,22],cpu:[1,6,7,8,9,10,17,22,23],creat:[1,6,7,11,14,15,16,19,20,21,22],creation:[11,15],criterion:[6,7,8,9,10],crop:[1,14],crossentropyloss:[6,7,8,9,10,17,23],cuda:[1,6,7,8,9,10,17,22,23],cum:[1,3,14,15],cum_percentag:[1,3,6,7,8,9,10,14,15,17,23],current:[1,14],custom:[1,11,14,16],cut:[3,17,23],cutoff:[1,3,14,15],d:[4,11],d_1:3,d_n:3,dagger:[1,15],dangl:[1,15,17,18,19],data:[1,4,6,7,8,9,10,11,14,15,19,21,22,23],data_0:[1,21],data_1:1,data_nod:[1,7,8,19,21,22],data_node_:19,dataload:[6,7,8,9,10,17,23],dataset:[14,17,23],dataset_nam:[6,7,8,9,10],david:[4,11],ddot:4,de:[1,14,19],decompos:[3,15],decomposit:[0,1,9,14,15,17,19,23],decreas:1,dedic:14,deep:[11,17],deepcopi:1,def:[1,6,7,8,9,10,17,22,23],defin:[1,4,11,14,18,19,21,22,23],degre:[4,8,10],del:[1,15],delet:[1,15],delete_nod:1,demonstr:11,densiti:14,depend:[1,3,10],deriv:14,descent:[6,7,8,9,10,18,19],describ:[1,9,14,22],design:14,desir:[4,8,19,20,21,22],detach:9,detail:[1,11,14,19],determin:11,develop:11,devic:[1,6,7,8,9,10,14,17,22,23],devot:20,df:1,diagon:[1,12,15],diagram:18,dictionari:1,did:23,differ:[1,5,6,11,14,15,16,17,18,19,20,22,23],differenti:[11,16,18],dilat:14,dim:[4,6,7,10,17,23],dimens:[1,3,4,8,14,15,17,18,22],dimension:[18,23],direct:7,directli:[1,11,13,15,18,19,20,21],disconnect:[0,1,14,18],discret:[0,10,14],distinct:1,distinguish:21,distribut:[3,12,14],div:[0,19],divers:11,divid:[1,15],divis:15,divisor:15,dmrg:[5,10],document:[1,15],doe:[1,14,18,20],don:15,done:[1,3,14,18],down:14,down_bord:14,download:[6,7,8,9,10,11,13,23],drawn:12,drop_last:[17,23],dtype:1,due:14,duplic:14,dure:[1,8,17,20,21],dynam:14,e:[1,4,11,14,15,21],each:[1,3,4,8,14,15,17,18,19,20,21,22,23],earlier:18,easi:[1,11],easier:18,easili:[1,18,19,22,23],edg:[0,11,14,17,18,19,20,21,22,23],edge1:[1,15],edge2:[1,15],edgea:1,edgeb:1,edges_dict:1,effect:[1,19],effici:[1,11,18],einstein:19,einsum:[0,19],either:[14,15],element:[1,4,11,12,14,15,18],element_s:[17,23],elif:[6,7,8,9,10],els:[6,7,8,9,10,17,22,23],emb:[4,17,22],emb_a:4,emb_b:4,embed:[0,6,7,8,10,14,17,22,23],embedd:4,embedding_dim:[7,8,10],embedding_matric:14,empti:[0,1,14,18,19,20],enabl:[1,11,14,18,19,20],end:[1,4,8,15],engin:18,enhanc:11,enough:[1,14],ensur:[1,11],entail:[1,20],entangl:14,entir:1,entropi:14,enumer:[1,6,7,8,9,10,14],environ:14,epoch:[1,6,7,8,9,10,17,22,23],epoch_num:[17,23],eprint:11,equal:[1,7,14,22],equilibrium:17,equival:[1,4,14,18,23],error:14,essenti:[1,11],etc:[1,15,18,22],eval:[6,7,8,9,10],evalu:19,even:[1,3,8,11,14,18,20,22],evenli:[3,14],everi:[1,15,18,20,23],exact:1,exactli:1,exampl:[1,2,4,6,9,14,15,17,19,21,22],exce:7,exceed:14,excel:11,except:[12,14],exclud:[1,21],execut:15,exist:[1,14,15,19],exp:14,expand:[1,4,22],expect:[3,14],experi:[1,11,18,20],experiment:11,explain:[1,18,19,20],explan:[1,14,15],explicitli:[1,15,21,22],explod:[3,14],explor:[11,18],express:15,extend:1,extra:[3,14,15],extract:[3,14,18],extractor:23,ey:22,eye_tensor:22,f:[6,7,8,9,10,17,18,19,20,21,23],facilit:[1,11,15,18],fact:[1,21,22],factor:[3,14],fail:[14,15],fals:[1,3,6,7,8,9,10,12,14,15,17,19,20,22,23],familiar:[11,18],fashion:[8,19],fashion_mnist:[6,9],fashionmnist:[6,9,23],faster:[1,8,22],fastest:11,fc1:9,fc2:9,featur:[1,4,14,15,18,19,20,21,23],feature_dim:[1,22],feature_s:14,fed:23,feed:9,few:[8,11],fffc:9,file:11,fill:[1,12,18,19,22],find:11,finish:[18,22],finit:14,first:[1,4,10,11,14,15,16,18,19,20,21,23],fix:[1,18,19],flat:14,flatten:14,flavour:1,flip:[6,23],flips_x:6,fn_first:15,fn_next:15,folder:[11,13],follow:[1,11,13,14,15],forget:1,form:[1,14,17,18,19,21,23],former:[1,14,15],forward:[1,6,7,8,9,10,14,15,22,23],four:22,frac:[1,3,4,14,15],framework:11,free:14,friendli:11,from:[1,3,6,7,8,9,10,11,12,13,14,15,17,18,19,21,22,23],from_sid:14,from_siz:14,front:1,full:17,fulli:[9,11],func:[1,14],functool:23,fundament:11,further:[1,11],furthermor:[1,20,22],futur:[1,20],g:[1,14,15,21],gain:11,gap:11,garc:11,gaussian:14,ge:[1,3,14,15],gener:[1,20],get:[1,6,7,8,9,10,17,18,22,23],get_axi:[1,7,8,18],get_axis_num:[1,18],get_edg:1,git:[11,13],github:[11,13],give:[1,18,20,21],given:[1,4,6,14],glimps:17,go:[1,15,17,19,20,23],goal:11,goe:14,good:[1,6,7,8,9,10,17],gpc20:6,gpu:[17,22],grad:[1,11,19],gradient:[1,6,7,8,9,10,11,14,18,19],graph:[1,18,20,22],grasp:11,greater:[1,7,22],greatli:11,grei:[6,7,8,9,10],grid:14,grid_env:14,group:15,gt:[6,7,8,9,10],guid:11,ha:[1,3,8,14,15,17,18,20,21,22,23],had:[1,15,20],hand:[1,11,14,22],happen:[1,3,14,20,23],har:11,hat:4,have:[1,3,4,14,15,17,18,19,20,21,22,23],heavi:22,height:[14,17,22],help:[1,20],henc:[1,15,17,18,19,20,22],here:[1,7,8,10,14,19],hidden:[1,21],high:[1,4,6,7,8,9,10,12],highli:11,hint:1,hold:[19,21],hood:20,horizont:14,how:[1,6,7,8,9,10,11,14,15,16,17,19,21,23],howev:[1,11,14,15,18,19,20],http:[11,13],hundread:19,hybrid:[5,11,16],hyperparamet:[6,7,8,9,10],i:[1,3,6,7,8,11,14,15,18,19,20,21,22],i_1:12,i_n:12,ideal:11,ident:14,identif:11,idx:18,ignor:[6,10],ijb:[15,19],ijk:15,im:15,imag:[6,14,17,22,23],image_s:[6,7,8,9,10,17,22,23],immers:11,implement:[1,11,17,23],improv:17,imshow:[6,7,8,9,10],in_1:3,in_channel:[6,14,23],in_dim:[7,8,10,11,14,17],in_env:14,in_featur:14,in_n:3,in_region:14,in_which_axi:1,includ:[1,11,14,18],incorpor:11,inde:[1,14],independ:[1,15],index:[1,6,7,8,9,10,18,20],indic:[1,3,12,14,15,18,19,20,21],infer:[1,14,15,18,20,22],inform:[1,11,14,15,18,19,20],ingredi:[1,18],inherit:[1,14,15,21],inic:22,init:19,init_method:[1,6,7,8,10,14,17,18,19,23],initi:[0,1,7,8,9,10,14,17,18,19,22,23],inlin:14,inline_input:[6,9,10,14],inline_mat:[6,9,10,14],inner:1,input:[1,3,7,8,14,15,17,18,19,20,21,22,23],input_edg:[1,21,22],input_nod:22,input_s:[6,7,8,9,10],insid:[1,11,13],insight:19,instal:[2,17,18],instanc:[1,15,20,21,22],instanti:[1,3,14,18,20,21,22],instati:18,instead:[1,14,19,20,21,22,23],integ:4,integr:11,intend:[1,14],interior:14,intermedi:[1,19,21,22],intern:[14,15],intric:11,intricaci:11,introduc:[6,14],introduct:11,invari:[1,14,20,21],inverse_memori:1,involv:[1,15,20],is_attached_to:1,is_avail:[6,7,8,9,10,17,22,23],is_batch:[1,18],is_connected_to:1,is_dangl:[1,18],is_data:[1,21],is_leaf:[1,21],is_node1:1,is_result:[1,21],is_virtu:[1,21],isinst:[1,19],isn:[17,18],isometri:14,issu:1,item:[6,7,8,9,10,17,23],iter:[1,8,14,20],its:[1,11,12,14,15,18,20,22,23],itself:[1,14,22],itselv:14,j:[1,4,8,11,15],jkb:[15,19],jl:15,jo:11,joserapa98:[11,13],just:[1,11,14,18,20,21,22,23],k:[11,15],keep:[1,3,14,15,20],keepdim:1,kei:[1,10,11,18],kept:[1,3,14,15],kernel:14,kernel_s:[6,14,23],kerstjen:11,keyword:[1,12,14],kib:[15,19],kind:[1,17],klm:15,know:[1,18,19,20],known:22,kwarg:[1,6,7,8,9,12,14],l2_reg:[17,23],l:[4,15],label:[14,17,21,23],lambda:[17,23],larger:1,largest:1,last:[1,7,14,15,22,23],later:22,latter:[1,14],layer:[1,6,11,14,17,22,23],ldot:12,lead:[1,15,21],leaf:[1,15,21,22],leaf_nod:[1,21],learn:[1,8,11,15,17,18,19,20,21,22,23],learn_rat:[17,23],learnabl:19,learning_r:[6,7,8,9,10],least:[1,14,15,17,20,23],leav:[8,14,20],left1:19,left2:19,left:[1,7,8,11,14,15,18,19,20,21,22,23],left_bord:14,left_down_corn:14,left_nod:[7,8,14],left_up_corn:14,leg:1,len:[6,7,8,9,10,15,22],length:[1,14],let:[17,18,19,20,22,23],level:[1,4,10,18],leverag:18,lfloor:4,li:[1,11,18],librari:[11,18,23],like:[0,1,5,10,11,14,17,18,19,20,21,22,23],line:[11,14,23],linear:[9,11,22],link:1,list:[1,3,12,14,15,18,19,22],load:[6,7,8,9,10,17,22],load_state_dict:[9,10,22],loader:[6,7,8,9,10,17,23],local:[4,14],locat:[1,14],log_norm:14,log_scal:14,logarithm:[3,14],logarithmoc:14,logit:[17,23],longer:[1,20],look:[1,10],loop:[17,22],lose:17,loss:[6,7,8,9,10,23],loss_fun:[17,23],lot:[1,17],low:[1,4,6,7,8,9,10,12,14],lower:[1,3,14,15],lr:[6,7,8,9,10,17,23],lst_y:6,lt:10,lvert:4,m:[1,3,11,13,15],machin:[11,17],made:[1,15],mai:[1,3,10,11,14],main:[1,18,19,20,22],mainli:1,maintain:1,make:[1,8,18,19,20,21],make_tensor:[1,14],manag:[1,22],mandatori:[1,15],mani:[1,8,14,17,18,20,23],manipul:18,manual:[1,14,22],manual_se:[17,23],map:4,margin:14,marginalize_output:14,master:[11,13],mat:3,mat_to_mpo:[0,9],match:[1,10,14,15],matplotlib:[6,7,8,9,10],matric:[14,15,19,22],matrix:[1,3,4,9,11,14,15,17,18,20,22],mats_env:[7,8,14],mats_env_:[7,8],max:[6,7,8,9,10,17,23],max_bond:14,maximum:[4,14],maxpool2d:[6,23],mayb:15,mb:[17,23],mean:[1,12,14],megabyt:[17,23],mehtod:18,member:1,memori:[1,11,16,17,18,21,22,23],mention:[14,22],merg:[7,8],merge_block:7,method:[1,14,15,18,19,20,21,22],middl:14,middle_sit:14,might:[1,14,20,21,22],mile:4,mimic:22,minuend:15,misc:11,miscellan:[17,23],mit:11,mkdir:[6,7,8,9,10],mnist:[7,8,10,17],mod:4,mode:[1,6,14,15,17,21,22,23],model:[0,1,5,9,11,16,18,19,20,21],model_nam:[6,7,8,9,10],modif:1,modifi:[1,14,19],modul:[1,6,9,11,13,14,17,18,19,22,23],modulelist:[6,23],monomi:4,monturiol:11,mooth:11,more:[1,3,11,14,15,18,19,20,21],most:[1,11,18,21],move:[1,14,18],move_block_epoch:[7,8],move_nam:1,move_to_network:[1,15],movec:15,mp:[0,3,5,6,9,11,17,18,19,20,21,22,23],mpo:[0,3,9,22],mpo_tensor:9,mps_data:[9,14],mps_dmrg:7,mps_dmrg_hybrid:8,mps_hdmrg:8,mps_layer:[6,14],mps_tensor:9,mpsdata:[0,3,9],mpslayer:[0,7,8,10,11,17,22],mpss:6,much:[1,8,20,21,22,23],mul:[0,19],multi:18,multipl:[14,18,20],multipli:[14,15],must:[1,3,15,18,22],my_model:11,my_nod:[1,20],my_paramnod:1,my_stack:1,mybatch:1,n:[1,4,6,9,10,11,12,14,17,23],n_:[1,4],n_batch:[3,9,14],n_block:8,n_col:14,n_epoch:22,n_featur:[7,8,9,10,11,14,17,22],n_param:[6,9,10,17,23],n_row:14,name:[1,7,8,11,15,17,18,19,20,22,23],name_:1,necessari:[1,14,15,17,18,22,23],need:[1,11,14,15,17,18,19,20,22],neighbour:[1,7,8,14,19],nelement:[17,23],net2:1,net:[1,11,15,18,19,20,21],network:[0,5,7,8,10,11,14,15,16,20,21,22],neumann:14,neural:[5,11,14,16,17],never:[1,15,21],nevertheless:11,new_bond_dim:10,new_edg:[1,15],new_edgea:1,new_edgeb:1,new_mp:22,new_nodea:[1,15],new_nodeb:[1,15],new_tensor:20,next:[1,14,15,18,19,20,21],nn:[1,6,7,8,9,10,11,14,17,18,19,22,23],no_grad:[6,7,8,9,10,17,23],node1:[1,11,15,18,19,20,21],node1_ax:[1,7,8,15],node1_list:1,node1_lists_dict:1,node2:[1,11,15,18,19,20,21],node2_ax:[1,7,8,15],node3:[19,20],node:[0,3,7,8,11,12,14,16,17,20,22,23],node_0:1,node_1:1,node_:[18,19,20,21],node_left:[1,15],node_n:1,node_ref:1,node_right:[1,15],nodea:[1,15],nodeb:[1,15],nodec:[1,15],nodes_list:15,nodes_nam:1,nodesa:15,nodesb:15,nodesc:15,non:[1,14,15,19,22],none:[1,3,7,8,11,14,15,19,22],norm:[1,3,14,15],normal:[1,3,12,14,15],notabl:11,notat:18,note:[1,11,15,18,19,22],noth:[1,18,20],now:[1,18,19,20,22,23],npov15:9,nto16:10,nu_batch:14,num:1,num_batch:[17,23],num_batch_edg:[1,21,22],num_class:[6,7,8,9,10],num_correct:[6,7,8,9,10],num_epoch:[6,7,8,9,10,17,23],num_epochs_canon:17,num_sampl:[6,7,8,9,10],num_test:[17,23],num_train:[17,23],number:[1,3,14,15,17,19,22,23],numel:[1,6,9,10],numer:15,nummber:1,o:11,obc:[3,7,8,9,10,14],object:[1,18,23],obtain:[14,17],oc:14,occur:[1,14,20],off:[17,20,23],offer:11,often:[1,20],onc:[1,8,11,14,15,20],one:[1,3,4,6,7,9,10,14,15,17,18,19,20,21,22,23],ones:[0,1,4,6,14,18,19,21,23],ones_lik:[6,17,23],onli:[1,11,14,15,18,19,20,21,22],open:14,oper:[0,1,14,18,21,22],operand:[1,18,19],opposit:14,opt_einsum:[11,15,19],optim:[1,6,7,8,9,10,11,23],option:[1,3,4,6,10,11,14,15,18,22],order:[1,3,6,14,15,18,19,20,21,22],orient:14,origin:[1,4,14,15,17,21,23],orthogon:14,ot:14,other:[1,8,14,15,18,19,20,21,22,23],other_left:18,other_nod:20,otherwis:[1,14,15,23],otim:4,our:[6,7,8,9,10,17,18,19,20,23],out:[1,14,15,22],out_1:3,out_channel:[6,14,23],out_dim:[7,8,10,11,14,17],out_env:14,out_featur:14,out_n:3,out_nod:[7,8,14],out_posit:14,out_region:14,outdat:14,output:[1,3,4,6,7,8,14,15,17,22],output_dim:[6,7,8,10],output_nod:22,outsid:[11,13],over:[1,15,19],overcom:1,overhead:20,overload:1,overrid:[1,14,22],override_edg:1,override_nod:1,overriden:[1,19,22],own:[1,14,15,20,21],ownership:1,p:[1,6,9,10,11,15,17,23],packag:[11,13],pad:[6,14,23],pair:[1,8,14,23],pairwis:14,paper:[4,11,14,23],parallel:[1,14],param:[1,15,17,23],param_nod:[1,11,12,19,21],paramedg:1,paramet:[1,3,4,6,7,8,9,10,12,14,15,17,19,22,23],parameter:[1,7,8,14,19],parametr:[1,14,17,19,22,23],paramnod:[0,12,14,15,20,21,22],paramnode1:19,paramnode2:19,paramnode3:19,paramnodea:1,paramnodeb:1,paramstacknod:[0,15,20,21],pareja2023tensorkrowch:11,pareja:11,parent:[1,22],parenthesi:1,part:[1,14,19,21,22],partial:[14,23],partial_dens:14,particular:[1,22],pass:[14,17,22],patch:[14,22],pattern:23,pave:17,pbc:14,pep:[0,11,22],perform:[1,10,11,14,15,17,18,19,20,22,23],period:14,permut:[0,1,9,19,20],permute_:[0,1,19],phase:15,phi:4,phys_dim:[9,14],physic:[3,14,18],pi:4,piec:[18,22],pip:[11,13,17,18],pipelin:[11,17],pixel:[14,17,22,23],place:[1,14,15,19,20,22],plai:21,pleas:11,plt:[6,7,8,9,10],plu:14,plug:14,point:[1,17],poli:[0,8,10,22],pool:[6,23],pop:7,posit:[7,14,22],possibl:[1,6,7,8,9,10,14,17,18,19,20],potenti:11,power:[4,14,17],poza:11,practic:[1,11],practition:17,pre:9,precis:4,pred:[17,23],predict:[6,7,8,9,10,17,23],present:23,previou:[1,14,19,20,21,22,23],previous:19,primari:11,principl:[1,21],print:[1,6,7,8,9,10,14,15,17,23],probabl:17,problem:[1,20],process:[1,8,10,11,17],prod:6,product:[11,14,15,17,18,20,22],profici:11,project:14,properli:22,properti:[1,7,14,15,18],proport:[1,3,14,15],prove:14,provid:[1,3,11,14,15,18],prune:23,pt:[6,7,8,9,10,22],purpos:[1,18,20,21],put:[1,14,17,23],pyplot:[6,7,8,9,10],pytest:[11,13],python:[11,13,17],pytorch:[1,11,15,17,18,19,20,22,23],q:15,qr:[0,1,3,14,19],qr_:[0,1,14],quantiti:[1,3,14,15],quantum:18,qubit:14,quit:[11,23],r:[11,15],r_1:15,r_2:15,rais:[1,7],ram:11,rand:[0,1,4,6,10,14],randint:[4,6,7,8,9,10],randn:[0,1,4,6,10,11,14,15,18,19,20,21,22],randn_ey:[6,8,10,14,17,23],random:[14,15,19],random_ey:22,random_sampl:[6,7,8,9,10],rang:[1,6,7,8,9,10,11,14,15,17,18,19,20,21,22,23],rangl:4,rank:[1,3,4,7,8,14,15,19],rapid:11,rather:[1,14,15,18,20,21],re:[1,15,17,23],reach:17,readi:22,realli:[1,21],reamin:8,reattach:1,reattach_edg:1,recal:[1,22],recogn:19,recommend:[1,11,14],reconnect:[1,19],recov:[1,3,14],reduc:[1,14,15,17,23],redund:[1,15],refer:[1,2,10,15,18,19,20,21,22],referenc:1,regard:[1,15,19],regio:14,relat:18,relev:[1,18],reli:[11,15],relu:[6,9,11,23],remain:[8,14],remov:[1,14,15],renorm:[0,1,3,6,9,10,14,19],renorma:[1,15],repeat:[1,8,10,15],repeatedli:20,replac:1,repositori:[11,13],repres:[14,18],reproduc:[1,10,11,20],requir:[1,14,15,21],requires_grad:1,res1:19,res2:19,rescal:14,research:11,reserv:[1,15,20],reset:[1,6,7,8,9,10,14,15,20,21,22],reset_tensor_address:1,reshap:[3,7,8,9,10,15,20],resiz:[7,8,9,10,17,23],respect:[1,3,14,15,19,20],rest:[1,19],restrict:[1,15,21],result2:15,result:[1,3,7,8,9,10,11,14,15,19,20,21,22],result_mat:[7,8],resultant_nod:[1,21],retain:1,retriev:[1,18,20,21],reus:14,rez:11,rfloor:4,rho_a:14,rid:1,right1:19,right2:19,right:[1,7,8,11,14,15,18,19,20,21,22,23],right_bord:14,right_down_corn:14,right_nod:[7,8,14],right_up_corn:14,rightmost:14,ring:19,role:[1,14,21,22],root:[6,7,8,9,10],row:14,rowch:11,rq:[0,1],rq_:[0,1,14],run:[11,13,14,17,23],running_acc:17,running_test_acc:[17,23],running_train_acc:[17,23],running_train_loss:[17,23],s:[1,4,11,12,14,15,17,18,19,20,21,22,23],s_1:4,s_i:[1,3,14,15],s_j:4,s_n:4,sai:[1,20],same:[1,8,10,14,15,18,19,20,23],sampler:[17,23],satisfi:[1,3,14,15],save:[1,6,7,8,9,10,11,16,19,22],scalar:14,scale:[3,14],scenario:11,scheme:10,schmidt:14,schwab:4,score:[6,7,8,9,10,17,23],second:[1,14,15,20],secondli:22,section:[18,19,21,23],see:[1,6,7,8,9,10,11,14,15,21,23],seen:21,select:[1,15,18,19,22],self:[1,6,7,8,9,14,22,23],send:[17,22,23],sens:[17,21],sento:22,separ:[14,15],sepcifi:1,sequenc:[1,3,14,15,19,22],sequenti:[11,22],serv:[11,17],set:[1,7,8,14,15,20,21,22,23],set_data_nod:[1,7,8,9,14,21,22],set_param:[1,14],set_tensor:[1,14,20],set_tensor_from:[1,20,21,22],sever:[1,15],shall:[1,22],shape:[1,3,4,7,8,9,10,11,12,14,15,17,18,19,20,21,22],shape_all_nodes_layer_1:14,shape_all_nodes_layer_n:14,shape_node_1_layer_1:14,shape_node_1_layer_n:14,shape_node_i1_layer_1:14,shape_node_in_layer_n:14,share:[1,14,15,18,20,21],share_tensor:[1,14],should:[1,3,4,7,12,14,15,18,19,20,21,22],show:[6,7,8,9,10,18],showcas:11,shown:7,shuffl:[6,7,8,9,10],side:[1,7,8,14,15,23],similar:[1,14,15,18,19,21,22],simpl:[11,18,19],simpli:[1,18,20,22],simplifi:[1,11],simul:18,sin:4,sinc:[1,8,14,15,19,20,21,22,23],singl:[1,14,15,19,22],singular:[1,3,14,15,17,19,23],site:[7,14,18],sites_per_lay:14,situat:[1,15,21],size:[1,4,6,7,8,9,10,12,14,15,18,19,21,22,23],skip:1,skipp:20,slice:[1,15,20,21],slide:1,slower:[1,20],small:19,smaller:1,smooth:11,snake:[6,14,23],so:[1,14,15,20,22],some:[1,3,14,15,17,18,19,20,21,22],someth:18,sometim:1,sort:[1,14,18,20,21],sourc:[1,3,4,12,14,15],space:[1,17,22,23],special:[1,19,21],specif:[1,11,21],specifi:[1,3,14,15,18,19,21],split:[0,1,3,7,8,14,18,19],split_0:[1,15],split_1:[1,15],split_:[0,1,7,8,19],split_ip:[1,15],split_ip_0:[1,15],split_ip_1:[1,15],sqrt:4,squar:[14,15],squeez:[4,6,7,8,9,10],ss16:[7,10],stack:[0,1,4,6,14,17,19,20,21,22],stack_0:1,stack_1:1,stack_data:[1,15,22],stack_data_memori:[1,21],stack_data_nod:19,stack_input:22,stack_nod:[1,15,19,20,21],stack_result:[19,22],stackabl:15,stacked_einsum:[0,19],stackedg:[0,15,19],stacknod:[0,15,19,21],stai:1,stand:4,start:[1,14,18,20,22,23],state:[1,11,14,17,18,20,22],state_dict:[6,7,8,9,10,22],staticmethod:[6,23],std:[1,6,8,10,12,14,17,22,23],step:[1,6,7,8,9,10,11,16,23],stick:1,still:[1,14,15,19],store:[1,14,15,18,21,22],stoudenmir:4,str:[1,15],straightforward:11,strength:11,stride:[6,14,23],string:[1,14,15,21],structur:[1,11,14,18,22,23],sub:[0,19],subclass:[1,11,16,18,21,23],subsequ:[1,15,20],subsetrandomsampl:[17,23],substitut:1,subsystem:14,subtract:15,subtrahend:15,successfulli:10,successor:[0,15],suffix:1,suitabl:11,sum:[1,3,6,7,8,9,10,14,15,17,19,23],sum_:[1,3,14,15],summat:19,support:11,sv:[1,15],svd:[0,1,3,14,17],svd_:[0,1,14,19],svdr:[0,1,14],svdr_:[0,1,14],t:[14,15,17,18,21,22],t_:[12,15],tailor:11,take:[1,14,15,17,20,21,22],taken:[1,15],target:[6,7,8,9,10],task:[1,14,21],temporari:[1,21],tensor:[0,3,4,5,6,7,8,11,12,14,16,21,22],tensor_address:[1,14,20,21],tensorb:15,tensori:5,tensorkrowch:[1,3,4,6,7,8,9,10,12,13,14,15,16,19,21,22,23],tensornetwork:[1,11,15,16,19,21,23],termin:[11,13],test:[6,7,8,9,10,11,13,17,23],test_acc:[6,7,8,9,10],test_dataset:[6,7,8,9,10],test_load:[6,7,8,9,10],test_set:[17,23],texttt:14,th:14,than:[1,3,7,8,14,15,18,22],thank:18,thei:[1,11,13,14,15,18,19,21],them:[1,14,15,17,18,19,20,22,23],themselv:[14,15],therefor:[1,11,13,14,18,22],thi:[1,3,4,6,8,9,10,11,14,15,17,18,19,20,21,22,23],thing:[1,15,17,21,23],think:20,third:14,those:[1,20,21,22],though:[1,14,15,19,22],thought:1,three:[1,15],through:[1,11,14,15,17,22,23],thu:[1,3,8,11,14,15,18,22],time:[1,3,4,8,10,11,14,15,16,18,19,22],titl:11,tk:[1,4,6,7,8,9,10,11,14,15,17,18,19,20,21,22,23],tn1:9,tn:[9,22],tn_fffc:9,tn_linear:9,tn_model:9,tn_nn:9,togeth:[1,11,13,20,21],tool:[11,18,19],top:[1,11,14,17,19,23],torch:[1,3,4,6,7,8,9,10,11,12,14,15,17,18,19,20,21,22,23],torchvis:[6,7,8,9,10,17,23],total:[1,3,14,15,17,23],total_num:[17,23],totensor:[6,7,8,9,10,17,23],tprod:[0,19],trace:[1,6,7,8,9,10,14,15,17,21,22,23],trace_sit:14,track:[1,20],tradit:8,train:[1,5,11,18,19,20,22,23],train_acc:[6,7,8,9,10],train_dataset:[6,7,8,9,10],train_load:[6,7,8,9,10],train_set:[17,23],trainabl:[1,14,18,21,22,23],transform:[4,6,7,8,9,10,14,17,19,23],transit:14,translation:[1,14,20,21],transpos:[6,17,22,23],treat:1,tree:[0,22],tri:[1,15],triangular:15,trick:[20,23],tupl:[1,12,14,15],turn:[1,14,20],tutori:[1,2,17,18,19,20,21,22,23],two:[1,14,15,18,19,20],two_0:15,type:[1,3,4,6,7,8,9,10,11,12,14,15,16,18,19,20],typeerror:1,u:[1,12,15],ump:0,umpo:0,umpslay:0,unbind:[0,1,19,20,22],unbind_0:[1,15],unbind_result:19,unbinded_nod:[19,20],unbound:[1,15],under:[11,20],underli:20,underscor:[1,15],understand:[11,18],undesir:[1,3,14,15,21],unfold:14,uniform:[1,12,14,20,21,22],uniform_memori:22,uniform_nod:[20,21],uninform:17,uniqu:[14,20],unit:[0,6,7,10,14],unitari:[14,15],univoc:14,unix:[11,13],unless:1,unmerg:8,unmerge_block:7,unset:1,unset_data_nod:[1,14],unset_tensor:1,unsqueez:23,until:[1,10,14,15,17],up:[1,14,15,18],up_bord:14,updat:[8,14,17,23],update_bond_dim:[7,8,14],upep:0,upon:14,upper:[14,15],ur_1sr_2v:15,us:[1,3,4,7,11,14,15,17,18,19,20,21,22,23],usag:1,useless:17,user:[1,11],usual:[1,14,15,21,22],usv:15,util:[6,7,8,9,10,17,23],utre:0,v:[1,11,13,15],valid:1,valu:[1,3,4,14,15,17,19,22,23],valueerror:[1,7],vanilla:[18,19,20],vanish:14,vari:14,variabl:4,variant:[19,22],variat:1,variou:[11,14],vdot:4,vec:3,vec_to_mp:[0,9],vector:[3,4,14,17,22,23],veri:[1,17,18,20,22],verifi:[1,15],versa:14,versatil:11,version:[1,14,15,19],vertic:[1,14],via:[1,3,7,14,15,18,19,20,21],vice:14,view:[6,17,22,23],virtual:[1,15,20,21,22],virtual_nod:[1,21],virtual_result:[1,21],virtual_result_stack:[1,15,21],virtual_uniform:[1,14,21,22],virtual_uniform_mp:1,visit:1,von:14,wa:[1,6,14,22,23],wai:[1,5,8,14,17,18,22],want:[1,14,18,19,20,22],we:[1,6,7,8,10,17,18,19,20,21,22,23],weight:9,weight_decai:[6,7,8,9,10,17,23],well:[1,10,14,15],were:[1,14,15,19,21,22],what:[1,18,20,22],when:[1,14,15,17,18,19,20,21,22],whenev:[1,15],where:[1,4,8,14,15,17,18,19,20,22],whether:[1,3,12,14,18,20],which:[1,4,10,12,14,15,17,18,19,20,21,22],whilst:14,who:11,whole:[1,8,14,17,19,20,21,22],whose:[1,6,14,15,20,21],why:20,wide:[11,22],width:[14,17,22],wise:[1,15],wish:22,without:[1,12,14,15,17],won:[14,22],word:[1,18],work:[1,11,15,19,23],workflow:[1,22],worri:[1,20],would:[1,14,15,18,20,23],wouldn:21,wow:23,wrap:[1,18],written:[11,13],x:[4,6,7,8,9,10,11,14,17,22,23],x_1:4,x_j:4,x_n:4,y1:23,y2:23,y3:23,y4:23,y:[6,7,8,9,10,23],yet:[18,22],you:[11,13,17,18,19,20,21,22],your:[11,13,17,18,22],your_nod:20,yourself:11,zero:[0,1,6,7,8,9,10,14,17,22,23],zero_grad:[6,7,8,9,10,17,23],zeros_lik:20},titles:["API Reference","Components","<no title>","Decompositions","Embeddings","Examples","Hybrid Tensorial Neural Network model","DMRG-like training of MPS","Hybrid DMRG-like training of MPS","Tensorizing Neural Networks","Training MPS in different ways","TensorKrowch documentation","Initializers","Installation","Models","Operations","Tutorials","First Steps with TensorKrowch","Creating a Tensor Network in TensorKrowch","Contracting and Differentiating the Tensor Network","How to save Memory and Time with TensorKrowch (ADVANCED)","The different Types of Nodes (ADVANCED)","How to subclass TensorNetwork to build Custom Models","Creating a Hybrid Neural-Tensor Network Model"],titleterms:{"1":[17,18,19,20,21,22],"2":[17,18,19,20,21,22],"3":[17,18,19,20,22],"4":17,"5":17,"6":17,"7":17,"class":15,"function":17,"import":17,The:[21,22],abstractnod:1,add:15,add_on:4,advanc:[20,21],api:0,ar:20,axi:1,basi:4,between:19,build:[18,22],choos:17,cite:11,compon:[1,18,22],connect:15,connect_stack:15,content:2,contract:[15,19],contract_:15,contract_between:15,contract_between_:15,contract_edg:15,convmp:14,convmpslay:14,convpep:14,convtre:14,convump:14,convumpslay:14,convupep:14,convutre:14,copi:12,creat:[18,23],custom:22,data:17,dataset:[6,7,8,9,10],decomposit:3,defin:[6,7,8,9],differ:[10,21],differenti:19,disconnect:15,discret:4,distinguish:19,div:15,dmrg:[7,8],document:11,download:17,edg:[1,15],einsum:15,embed:4,empti:12,everyth:22,exampl:[5,11],faster:20,first:[17,22],how:[18,20,22],hybrid:[6,8,23],hyperparamet:17,initi:12,instal:[11,13],instanti:[10,17],introduct:[17,18,19,20,21,22],layer:9,librari:17,licens:11,like:[7,8,15],loss:17,manag:20,mat_to_mpo:3,matrix:19,memori:20,mode:20,model:[6,7,8,10,14,17,22,23],mp:[7,8,10,14],mpo:14,mpsdata:14,mpslayer:14,mul:15,name:21,network:[1,6,9,17,18,19,23],neural:[6,9,23],node:[1,15,18,19,21],notebook:11,ones:12,oper:[15,19,20],optim:17,our:22,paramnod:[1,19],paramstacknod:1,pep:14,permut:15,permute_:15,poli:4,product:19,prune:[10,17],put:22,qr:15,qr_:15,rand:12,randn:12,refer:0,renorm:15,requir:11,reserv:21,retrain:10,rq:15,rq_:15,run:20,save:20,set:17,setup:[17,18],skip:20,split:15,split_:15,stack:15,stacked_einsum:15,stackedg:1,stacknod:1,start:17,state:19,step:[17,18,19,20,21,22],store:20,sub:15,subclass:22,successor:1,svd:15,svd_:15,svdr:15,svdr_:15,tensor:[1,9,15,17,18,19,20,23],tensori:6,tensorkrowch:[11,17,18,20],tensornetwork:[18,20,22],time:20,togeth:22,tprod:15,train:[6,7,8,9,10,17],tree:14,tutori:[11,16],type:21,ump:14,umpo:14,umpslay:14,unbind:15,unit:4,upep:14,utre:14,vec_to_mp:3,wai:10,zero:12}}) \ No newline at end of file +Search.setIndex({docnames:["api","components","contents","decompositions","embeddings","examples","examples/hybrid_tnn_model","examples/mps_dmrg","examples/mps_dmrg_hybrid","examples/tensorizing_nn","examples/training_mps","index","initializers","installation","models","operations","tutorials","tutorials/0_first_steps","tutorials/1_creating_tensor_network","tutorials/2_contracting_tensor_network","tutorials/3_memory_management","tutorials/4_types_of_nodes","tutorials/5_subclass_tensor_network","tutorials/6_mix_with_pytorch"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":5,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":3,"sphinx.domains.rst":2,"sphinx.domains.std":2,"sphinx.ext.viewcode":1,nbsphinx:4,sphinx:56},filenames:["api.rst","components.rst","contents.rst","decompositions.rst","embeddings.rst","examples.rst","examples/hybrid_tnn_model.ipynb","examples/mps_dmrg.ipynb","examples/mps_dmrg_hybrid.ipynb","examples/tensorizing_nn.ipynb","examples/training_mps.ipynb","index.rst","initializers.rst","installation.rst","models.rst","operations.rst","tutorials.rst","tutorials/0_first_steps.rst","tutorials/1_creating_tensor_network.rst","tutorials/2_contracting_tensor_network.rst","tutorials/3_memory_management.rst","tutorials/4_types_of_nodes.rst","tutorials/5_subclass_tensor_network.rst","tutorials/6_mix_with_pytorch.rst"],objects:{"tensorkrowch.AbstractNode":[[1,1,1,"","axes"],[1,1,1,"","axes_names"],[1,2,1,"","contract_between"],[1,2,1,"","contract_between_"],[1,1,1,"","device"],[1,2,1,"","disconnect"],[1,1,1,"","dtype"],[1,1,1,"","edges"],[1,2,1,"","get_axis"],[1,2,1,"","get_axis_num"],[1,2,1,"","get_edge"],[1,2,1,"","in_which_axis"],[1,2,1,"","is_connected_to"],[1,2,1,"","is_data"],[1,2,1,"","is_leaf"],[1,2,1,"","is_node1"],[1,2,1,"","is_resultant"],[1,2,1,"","is_virtual"],[1,2,1,"","make_tensor"],[1,2,1,"","mean"],[1,2,1,"","move_to_network"],[1,1,1,"","name"],[1,2,1,"","neighbours"],[1,1,1,"","network"],[1,2,1,"","node_ref"],[1,2,1,"","norm"],[1,2,1,"","numel"],[1,2,1,"","permute"],[1,2,1,"","permute_"],[1,1,1,"","rank"],[1,2,1,"","reattach_edges"],[1,2,1,"","renormalize"],[1,2,1,"","reset_tensor_address"],[1,2,1,"","set_tensor"],[1,2,1,"","set_tensor_from"],[1,1,1,"","shape"],[1,2,1,"","size"],[1,2,1,"","split"],[1,2,1,"","split_"],[1,2,1,"","std"],[1,1,1,"","successors"],[1,2,1,"","sum"],[1,1,1,"","tensor"],[1,2,1,"","tensor_address"],[1,2,1,"","unset_tensor"]],"tensorkrowch.Axis":[[1,2,1,"","is_batch"],[1,2,1,"","is_node1"],[1,1,1,"","name"],[1,1,1,"","node"],[1,1,1,"","num"]],"tensorkrowch.Edge":[[1,1,1,"","axes"],[1,1,1,"","axis1"],[1,1,1,"","axis2"],[1,2,1,"","change_size"],[1,2,1,"","connect"],[1,2,1,"","contract"],[1,2,1,"","contract_"],[1,2,1,"","copy"],[1,2,1,"","disconnect"],[1,2,1,"","is_attached_to"],[1,2,1,"","is_batch"],[1,2,1,"","is_dangling"],[1,1,1,"","name"],[1,1,1,"","node1"],[1,1,1,"","node2"],[1,1,1,"","nodes"],[1,2,1,"","qr"],[1,2,1,"","qr_"],[1,2,1,"","rq"],[1,2,1,"","rq_"],[1,2,1,"","size"],[1,2,1,"","svd"],[1,2,1,"","svd_"],[1,2,1,"","svdr"],[1,2,1,"","svdr_"]],"tensorkrowch.Node":[[1,2,1,"","change_type"],[1,2,1,"","copy"],[1,2,1,"","parameterize"]],"tensorkrowch.ParamNode":[[1,2,1,"","change_type"],[1,2,1,"","copy"],[1,1,1,"","grad"],[1,2,1,"","parameterize"]],"tensorkrowch.ParamStackNode":[[1,1,1,"","edges_dict"],[1,1,1,"","node1_lists_dict"],[1,2,1,"","reconnect"],[1,2,1,"","unbind"]],"tensorkrowch.StackEdge":[[1,2,1,"","connect"],[1,1,1,"","edges"],[1,1,1,"","node1_list"]],"tensorkrowch.StackNode":[[1,1,1,"","edges_dict"],[1,1,1,"","node1_lists_dict"],[1,2,1,"","reconnect"],[1,2,1,"","unbind"]],"tensorkrowch.TensorNetwork":[[1,2,1,"","add_data"],[1,1,1,"","auto_stack"],[1,1,1,"","auto_unbind"],[1,2,1,"","contract"],[1,2,1,"","copy"],[1,1,1,"","data_nodes"],[1,2,1,"","delete_node"],[1,1,1,"","edges"],[1,2,1,"","forward"],[1,1,1,"","leaf_nodes"],[1,1,1,"","nodes"],[1,1,1,"","nodes_names"],[1,2,1,"","parameterize"],[1,2,1,"","reset"],[1,1,1,"","resultant_nodes"],[1,2,1,"","set_data_nodes"],[1,2,1,"","trace"],[1,2,1,"","unset_data_nodes"],[1,1,1,"","virtual_nodes"]],"tensorkrowch.decompositions":[[3,3,1,"","mat_to_mpo"],[3,3,1,"","vec_to_mps"]],"tensorkrowch.embeddings":[[4,3,1,"","add_ones"],[4,3,1,"","basis"],[4,3,1,"","discretize"],[4,3,1,"","poly"],[4,3,1,"","unit"]],"tensorkrowch.models":[[14,0,1,"","ConvMPS"],[14,0,1,"","ConvMPSLayer"],[14,0,1,"","ConvPEPS"],[14,0,1,"","ConvTree"],[14,0,1,"","ConvUMPS"],[14,0,1,"","ConvUMPSLayer"],[14,0,1,"","ConvUPEPS"],[14,0,1,"","ConvUTree"],[14,0,1,"","MPO"],[14,0,1,"","MPS"],[14,0,1,"","MPSData"],[14,0,1,"","MPSLayer"],[14,0,1,"","PEPS"],[14,0,1,"","Tree"],[14,0,1,"","UMPO"],[14,0,1,"","UMPS"],[14,0,1,"","UMPSLayer"],[14,0,1,"","UPEPS"],[14,0,1,"","UTree"]],"tensorkrowch.models.ConvMPS":[[14,2,1,"","copy"],[14,1,1,"","dilation"],[14,2,1,"","forward"],[14,1,1,"","in_channels"],[14,1,1,"","kernel_size"],[14,1,1,"","padding"],[14,1,1,"","stride"]],"tensorkrowch.models.ConvMPSLayer":[[14,2,1,"","copy"],[14,1,1,"","dilation"],[14,2,1,"","forward"],[14,1,1,"","in_channels"],[14,1,1,"","kernel_size"],[14,1,1,"","out_channels"],[14,1,1,"","padding"],[14,1,1,"","stride"]],"tensorkrowch.models.ConvPEPS":[[14,1,1,"","dilation"],[14,2,1,"","forward"],[14,1,1,"","in_channels"],[14,1,1,"","kernel_size"],[14,1,1,"","padding"],[14,1,1,"","stride"]],"tensorkrowch.models.ConvTree":[[14,1,1,"","dilation"],[14,2,1,"","forward"],[14,1,1,"","in_channels"],[14,1,1,"","kernel_size"],[14,1,1,"","padding"],[14,1,1,"","stride"]],"tensorkrowch.models.ConvUMPS":[[14,2,1,"","copy"],[14,1,1,"","dilation"],[14,2,1,"","forward"],[14,1,1,"","in_channels"],[14,1,1,"","kernel_size"],[14,1,1,"","padding"],[14,1,1,"","stride"]],"tensorkrowch.models.ConvUMPSLayer":[[14,2,1,"","copy"],[14,1,1,"","dilation"],[14,2,1,"","forward"],[14,1,1,"","in_channels"],[14,1,1,"","kernel_size"],[14,1,1,"","out_channels"],[14,1,1,"","padding"],[14,1,1,"","stride"]],"tensorkrowch.models.ConvUPEPS":[[14,1,1,"","dilation"],[14,2,1,"","forward"],[14,1,1,"","in_channels"],[14,1,1,"","kernel_size"],[14,1,1,"","padding"],[14,1,1,"","stride"]],"tensorkrowch.models.ConvUTree":[[14,1,1,"","dilation"],[14,2,1,"","forward"],[14,1,1,"","in_channels"],[14,1,1,"","kernel_size"],[14,1,1,"","padding"],[14,1,1,"","stride"]],"tensorkrowch.models.MPO":[[14,1,1,"","bond_dim"],[14,1,1,"","boundary"],[14,2,1,"","canonicalize"],[14,2,1,"","contract"],[14,2,1,"","copy"],[14,1,1,"","in_dim"],[14,2,1,"","initialize"],[14,1,1,"","left_node"],[14,1,1,"","mats_env"],[14,1,1,"","n_batches"],[14,1,1,"","n_features"],[14,1,1,"","out_dim"],[14,2,1,"","parameterize"],[14,1,1,"","right_node"],[14,2,1,"","set_data_nodes"],[14,1,1,"","tensors"],[14,2,1,"","update_bond_dim"]],"tensorkrowch.models.MPS":[[14,1,1,"","bond_dim"],[14,1,1,"","boundary"],[14,2,1,"","canonicalize"],[14,2,1,"","canonicalize_univocal"],[14,2,1,"","contract"],[14,2,1,"","copy"],[14,2,1,"","entropy"],[14,1,1,"","in_env"],[14,1,1,"","in_features"],[14,1,1,"","in_regions"],[14,2,1,"","initialize"],[14,1,1,"","left_node"],[14,1,1,"","mats_env"],[14,1,1,"","n_batches"],[14,1,1,"","n_features"],[14,2,1,"","norm"],[14,1,1,"","out_env"],[14,1,1,"","out_features"],[14,1,1,"","out_regions"],[14,2,1,"","parameterize"],[14,2,1,"","partial_density"],[14,1,1,"","phys_dim"],[14,1,1,"","right_node"],[14,2,1,"","set_data_nodes"],[14,1,1,"","tensors"],[14,2,1,"","update_bond_dim"]],"tensorkrowch.models.MPSData":[[14,2,1,"","add_data"],[14,1,1,"","bond_dim"],[14,1,1,"","boundary"],[14,2,1,"","initialize"],[14,1,1,"","left_node"],[14,1,1,"","mats_env"],[14,1,1,"","n_batches"],[14,1,1,"","n_features"],[14,1,1,"","phys_dim"],[14,1,1,"","right_node"]],"tensorkrowch.models.MPSLayer":[[14,2,1,"","copy"],[14,1,1,"","in_dim"],[14,2,1,"","initialize"],[14,1,1,"","out_dim"],[14,1,1,"","out_node"],[14,1,1,"","out_position"]],"tensorkrowch.models.PEPS":[[14,1,1,"","bond_dim"],[14,1,1,"","boundary"],[14,2,1,"","contract"],[14,1,1,"","in_dim"],[14,2,1,"","initialize"],[14,1,1,"","n_batches"],[14,1,1,"","n_cols"],[14,1,1,"","n_rows"],[14,2,1,"","set_data_nodes"]],"tensorkrowch.models.Tree":[[14,1,1,"","bond_dim"],[14,2,1,"","canonicalize"],[14,2,1,"","contract"],[14,2,1,"","initialize"],[14,1,1,"","n_batches"],[14,2,1,"","set_data_nodes"],[14,1,1,"","sites_per_layer"]],"tensorkrowch.models.UMPO":[[14,2,1,"","copy"],[14,2,1,"","initialize"],[14,2,1,"","parameterize"]],"tensorkrowch.models.UMPS":[[14,2,1,"","copy"],[14,2,1,"","initialize"],[14,2,1,"","parameterize"]],"tensorkrowch.models.UMPSLayer":[[14,2,1,"","copy"],[14,1,1,"","in_dim"],[14,2,1,"","initialize"],[14,1,1,"","out_dim"],[14,1,1,"","out_node"],[14,1,1,"","out_position"],[14,2,1,"","parameterize"]],"tensorkrowch.models.UPEPS":[[14,1,1,"","bond_dim"],[14,2,1,"","contract"],[14,1,1,"","in_dim"],[14,2,1,"","initialize"],[14,1,1,"","n_batches"],[14,1,1,"","n_cols"],[14,1,1,"","n_rows"],[14,2,1,"","set_data_nodes"]],"tensorkrowch.models.UTree":[[14,1,1,"","bond_dim"],[14,2,1,"","contract"],[14,2,1,"","initialize"],[14,1,1,"","n_batches"],[14,2,1,"","set_data_nodes"],[14,1,1,"","sites_per_layer"]],tensorkrowch:[[1,0,1,"","AbstractNode"],[1,0,1,"","Axis"],[1,0,1,"","Edge"],[1,0,1,"","Node"],[15,0,1,"","Operation"],[1,0,1,"","ParamNode"],[1,0,1,"","ParamStackNode"],[1,0,1,"","StackEdge"],[1,0,1,"","StackNode"],[1,0,1,"","Successor"],[1,0,1,"","TensorNetwork"],[15,3,1,"","add"],[15,3,1,"","connect"],[15,3,1,"","connect_stack"],[15,3,1,"","contract"],[15,3,1,"","contract_"],[15,3,1,"","contract_between"],[15,3,1,"","contract_between_"],[15,3,1,"","contract_edges"],[12,3,1,"","copy"],[15,3,1,"","disconnect"],[15,3,1,"","div"],[15,3,1,"","einsum"],[12,3,1,"","empty"],[15,3,1,"","mul"],[12,3,1,"","ones"],[15,3,1,"","permute"],[15,3,1,"","permute_"],[15,3,1,"","qr"],[15,3,1,"","qr_"],[12,3,1,"","rand"],[12,3,1,"","randn"],[15,3,1,"","renormalize"],[15,3,1,"","rq"],[15,3,1,"","rq_"],[15,3,1,"","split"],[15,3,1,"","split_"],[15,3,1,"","stack"],[15,3,1,"","stacked_einsum"],[15,3,1,"","sub"],[15,3,1,"","svd"],[15,3,1,"","svd_"],[15,3,1,"","svdr"],[15,3,1,"","svdr_"],[15,3,1,"","tprod"],[15,3,1,"","unbind"],[12,3,1,"","zeros"]]},objnames:{"0":["py","class","Python class"],"1":["py","property","Python property"],"2":["py","method","Python method"],"3":["py","function","Python function"]},objtypes:{"0":"py:class","1":"py:property","2":"py:method","3":"py:function"},terms:{"0":[1,3,4,6,7,8,9,10,11,14,15,17,19,21,22,23],"00":[4,7],"0000":4,"0000e":4,"0086":1,"01":[7,10],"0101":1,"0188":1,"02":7,"0234":1,"03":[9,10],"0371":1,"04":[7,9],"0412":1,"0440":1,"0445":1,"0465":1,"05":7,"0501":1,"0521":1,"06":[7,9],"0633":1,"0639":17,"07":[7,9],"0704":1,"0728":17,"0743":1,"0750":17,"08":[4,9],"0806":1,"0820":17,"08595":11,"09":[7,10,14],"0913":17,"0983":17,"0998":17,"1":[1,3,4,6,7,8,9,10,11,14,15,23],"10":[1,4,6,7,8,9,10,11,14,15,17,19,22,23],"100":[1,4,6,7,8,9,10,11,14,15,18,19,20,21],"10000":[17,23],"101":7,"1024":[17,23],"104":7,"106":7,"108":7,"1091":1,"11":[6,7,8,9,10],"110":7,"1123":17,"113":7,"115":7,"117":7,"119":7,"12":[6,7,9,10],"1211":1,"122":7,"124":7,"126":7,"128":7,"13":[6,7,9],"1308":17,"131":7,"133":7,"135":7,"137":7,"1371":1,"14":[6,7,8,9,10,23],"140":7,"142":7,"144":7,"146":7,"149":7,"1496":1,"15":[1,6,7,8,9,10,15,19],"151":7,"153":7,"155":7,"1573":17,"158":7,"159674":10,"159962":10,"16":[6,7,8,9,10],"160":7,"161204":17,"162":7,"164":7,"16406":9,"1654":1,"167":7,"169":7,"17":[6,7,9,10],"171":7,"173":7,"176":7,"178":7,"18":[6,7,10],"180":7,"182":7,"185":7,"187":7,"1878":23,"189":7,"19":[7,9,10],"191":7,"194":7,"1955":17,"196":7,"198":7,"1990":17,"1998":1,"1e":[6,7,8,9,10,14,17,22,23],"2":[1,4,6,7,8,9,10,14,15,23],"20":[1,7,10,14,15,23],"200":7,"203":7,"205":7,"2052":23,"207":7,"209":7,"2091":1,"2095":1,"21":[7,10],"2111":1,"212":7,"214":7,"216":7,"218":7,"22":[6,7,10],"2203":23,"221":7,"223":7,"2254":1,"23":[7,10],"2306":11,"2316":1,"2357":23,"236220":[10,17],"2380":1,"2390":1,"24":[7,8],"2449":1,"2461":1,"2477":1,"25":[7,8],"2503":1,"2517":1,"26":7,"2618":23,"27":[7,8],"2730":1,"2775":1,"27944":9,"2799":1,"28":[6,7,8,9,10,17,23],"2808":1,"2840":23,"2856":1,"2866":1,"2898":1,"29":[7,8],"2d":14,"2f":[6,7,8,9,10],"3":[1,4,6,7,8,9,10,11,14,15,21,23],"30":[7,9,23],"3083":17,"3088":1,"31":7,"3139":1,"3149":23,"32":[7,14,17],"3222":1,"33":[6,7,9],"3340":1,"3370":1,"3371":1,"3381":1,"3393":1,"34":7,"3427":1,"3489":1,"35":[6,7,9],"3508":1,"3513":1,"3585":1,"36":7,"37":[7,8],"3711e":4,"3714":23,"3760":1,"3784":1,"38":[6,7,8],"3821":1,"39":[6,7,8,9,10],"39760":9,"4":[1,4,6,7,8,9,10,14,15,19,21,23],"40":[6,7,10,23],"4005":1,"41":7,"4181":1,"4184":1,"42":[7,8],"4216":1,"43":7,"4383":1,"4385":1,"44":7,"4402":1,"4431":1,"4461":1,"45":[6,7,8,9],"4572":1,"4588":1,"46":7,"462803":6,"47":7,"4731":1,"4761":1,"48":7,"49":[7,8],"4974":1,"499320":23,"4f":[17,23],"5":[1,4,6,7,8,9,10,11,14,15,18,19,20,21,23],"50":[6,7,9,23],"500":[11,17,22,23],"5000":4,"5021":1,"5029":1,"5069":1,"51":7,"5161":1,"52":[7,8,9,10],"5224":23,"53":7,"54":7,"5401":1,"5406":1,"55":[6,7,10],"553036":6,"553186":23,"5567":1,"5570":1,"56":[7,9],"5676":17,"57":[7,9,10],"5731":1,"5760":1,"5797":1,"58":[7,10],"59":[7,8],"5920":1,"6":[1,4,6,7,8,9,10,14,23],"60":[7,23],"60000":[17,23],"6023":1,"61":[6,7],"6149":17,"61999999999999":9,"62":[7,8,9],"6225":1,"6227":1,"6295":1,"63":7,"6356":1,"6399":1,"64":[6,7,8,9,10],"6492":1,"6495":1,"65":[7,8,10],"6524":1,"6545":1,"6551":1,"66":7,"67":[7,10],"68":7,"6811":1,"69":[7,8,9,10],"6925":1,"6982":1,"7":[1,6,7,8,9,10,11,14,15,19,20,23],"70":[7,8,9,23],"71":7,"72":[7,10],"73":[7,9],"74":[7,10],"75":[4,7],"7500":4,"7592":1,"76":[7,10],"7688":1,"77":7,"7752":1,"78":7,"7812":1,"79":[6,7,10],"7997":1,"8":[6,7,8,9,10,11,14,17],"80":[6,7,23],"8090":1,"81":[6,7,8,9],"8147":1,"82":7,"8227":1,"83":[6,7,9,10],"8361":1,"8387":1,"84":[6,7,8,9,10],"8441":1,"8442":1,"85":[6,7,9],"8502":23,"86":[6,7,9],"8627":23,"8633":1,"8649":1,"87":[6,7,9],"8795":23,"88":[6,7,9],"8815":1,"8820":17,"8848":23,"8851":23,"8859":1,"89":[6,7,9],"8901":23,"8911":1,"8915":23,"8948":23,"8968":23,"8984":23,"9":[6,7,8,9,10,11,14,17,22,23],"90":[7,9,23],"9006":1,"9009":23,"9011":[17,23],"9026":23,"9048":23,"9053":17,"91":[7,10],"9125":23,"9145":1,"9174":23,"92":[7,10],"9231":23,"9265":1,"9284":23,"93":[7,10],"9320":1,"9371":17,"9396":17,"94":[7,9],"9400":17,"9432":1,"95":[6,7,8,9,10],"9509":17,"9526":17,"9551":1,"9561":1,"9585":17,"96":[7,8,9,10],"9600":17,"9618":1,"9621":17,"9625":17,"9668":17,"9677":17,"9696":17,"97":[7,8,10],"9700":17,"9721":17,"9729":17,"9731":17,"9734":17,"9736":17,"9738":17,"9743":17,"9768":17,"9775":17,"9793":17,"98":[6,7,8,10,23],"9844":1,"99":[6,7,17],"9925":1,"9942":1,"9957":1,"abstract":1,"boolean":[1,12,14],"break":[7,8],"byte":[17,23],"case":[1,3,11,14,20,21,22],"class":[0,1,6,7,8,9,14,17,19,22,23],"default":[1,4,14,20,21],"do":[1,14,17,18,20,21,22],"final":[1,3,14,19,22],"float":[1,3,6,7,8,9,10,14,15],"function":[1,14,15,19,23],"garc\u00eda":11,"import":[1,6,7,8,9,10,11,18,19,20,21,22,23],"int":[1,3,4,10,12,14,15],"n\u00ba":[17,23],"new":[1,4,14,15,17,18,19,20,22,23],"p\u00e9rez":11,"return":[1,3,4,6,7,8,9,10,12,14,15,17,18,19,20,22,23],"super":[1,6,7,8,9,22,23],"true":[1,6,7,8,9,10,11,12,14,15,17,19,20,21,22,23],"try":[10,19,23],"while":[1,7,8,11,19,20,21],A:[1,11,14,15,18],And:[20,23],As:[11,14,17,18,19,20],At:[1,18],Be:[1,19],But:[19,20,22,23],By:[1,4,11,14,17,18],For:[1,14,15,18,19,20,21,22],If:[1,3,4,11,14,15,18,20,22],In:[1,3,8,11,14,15,17,18,19,20,21,22,23],Is:14,It:[1,3,11,14,15,17,18,19,23],Its:[1,15],Not:22,Of:[20,22],On:1,One:[1,10,18],That:[1,3,4,14,15,19,20,22,23],The:[1,3,4,11,14,15,16,18,19,20,23],Then:[1,14,20],There:[1,14,19,21,22],These:[1,3,11,14,18,19,21],To:[1,3,4,11,13,14,15,17,18,19,20,21,22],With:[1,10,11,15,18,19,22],_:[1,6,7,8,9,10,14,15,17,18,22,23],__call__:1,__init__:[1,6,7,8,9,22,23],_channel:14,_copi:1,_dim:1,_left_nod:7,_mats_env:[7,8],_percentag:[1,3,14,15],_right_nod:7,_size:14,_size_0:14,_size_1:14,_size_:1,a_:15,abil:11,abl:[1,11,18,19,22],about:[1,15,18,19,20,21,22],abov:[1,18,22],abstractnod:[0,12,15],acc:[6,7,8,9,10,17,23],acceler:[1,9,10],accept:19,access:[1,18,19,20],accomplish:[1,3,14,21],accord:[1,15],accordingli:14,account:[1,14,21],accross:[1,15],accumul:[3,14],accuraci:[6,7,8,9,10,17,23],achiev:1,act:[1,14,18,20],action:1,activ:1,actual:[1,14,18,19,20,23],ad:[1,4,14,15,19,22],adam:[6,7,8,9,10,17,23],adapt:[11,15],add:[0,1,14,17,19,22,23],add_data:[1,9,14,21,22],add_on:[0,23],addit:[1,11,14,15],addition:1,address:[1,18,20],admit:[14,15],advanc:[1,11,16],advantag:[8,20,22],advis:11,affect:[1,15],after:[1,3,8,14,17,23],afterward:[1,14,15],again:[8,10,14,17,20,22],against:14,aim:[3,14,17],alejandro:11,algorithm:[1,14,20,22,23],all:[1,3,4,8,10,14,15,17,18,19,20,21,22,23],allow:[1,11,14],almost:[1,19,20,21,23],along:[1,15],alreadi:[1,7,14,15,17,18,19,22],also:[1,3,8,11,13,14,15,17,18,19,20,21,22],alter:14,although:[1,10,18,19,20,21,22],alwai:[1,11,14,15,17,18,19,20,21,22],among:[3,14],amount:[15,17],an:[1,3,4,6,9,10,11,12,14,15,17,18,19,20,21,22],ancillari:[1,20,21],ani:[1,7,8,14,15,18,19,22],anomali:11,anoth:[1,14,15,18,19],antialia:[7,8,9,10],anymor:1,api:2,appear:[1,15,18],append:[6,7,8,19,20,21,22,23],appli:[1,11,14,15,19],approach:[8,10,11],appropi:[14,15,22,23],approxim:1,ar:[1,3,4,8,11,13,14,15,17,18,19,21,22,23],arang:[4,7,8],arbitrari:1,architectur:11,archiveprefix:11,arg:[1,6,7,8,9,12,14],argument:[1,3,12,14,15,22],aros:1,around:17,arrai:18,arrow:15,arxiv:11,ascertain:11,assert:[1,11,14,15,18,19,20,21],assign:14,assum:[1,4,14,15],attach:[1,15,18],attribut:[1,14,22],author:11,auto_stack:[1,15,17,20,21,22,23],auto_unbind:[1,15,17,20,22,23],automat:[1,15,18,19,20],auxiliari:15,avail:[11,17,18],avoid:[1,3,14,15,20],awar:[1,19],ax:[1,7,8,14,15,18,19],axes_nam:[1,7,8,11,15,18,19,20,21,22],axi:[0,4,7,8,15,18,22,23],axis1:1,axis2:1,axis_0:1,axis_1:1,axis_2:1,axis_n:1,b:[4,14,15,19],b_1:3,b_:15,b_m:3,backend:[6,7,8,9,10],backpropag:[17,23],backward:[1,6,7,8,9,10,11,17,19,23],bar:[7,8],base:[1,4,10,14,15,19],basi:[0,10,14],basic:[1,11,18,19],batch:[1,3,4,10,11,14,15,17,18,19,21,22],batch_0:[4,14],batch_1:[1,14,22],batch_idx:[6,7,8,9,10],batch_m:1,batch_n:[4,14,22],batch_siz:[6,7,8,9,10,14,17,23],becaus:[1,14,20,23],becom:[1,11,14,15],been:[1,14,15,18,22],befor:[1,6,7,8,9,10,14,17,18,22,23],beforehand:18,beggin:8,begin:[4,17,18,23],behav:[1,20],behavior:[3,14],behaviour:[1,14,15,18,20,21],being:[1,3,4,14,15,19],belong:[1,14,17,18,19],besid:[1,14,15,18],best:[10,11],better:18,between:[1,3,4,10,11,14,15,18,20,21,23],bia:9,big:[14,19],bigger:14,binom:4,blank:1,block:[7,8],block_:8,block_length:[7,8],block_nod:[7,8],block_posit:7,bmatrix:4,bodi:18,bond:[3,8,14],bond_dim:[6,7,8,9,10,11,14,17,23],bool:[1,3,12,14],border:14,both:[1,14,15,18,19,20,21,22],bottom:[14,23],boudari:14,bound:[1,3,14,15],boundari:[3,7,8,9,10,14],bracket:1,bridg:11,bring:17,build:[1,6,11,16,19],built:[11,17,19,22],bunch:[1,19,22],c_:15,cach:[1,20],calcul:20,call:[1,14,15,17,19,22,23],callabl:15,can:[1,3,4,6,7,8,9,10,11,13,14,15,17,18,19,20,21,22,23],cannot:[1,7,14,15,19,21],canon:[6,10,14,17,23],canonic:[6,9,10,14,17,23],canonicalize_univoc:14,carri:[1,14,15,18],cast:1,cat:[6,23],caus:14,cdot:[3,4,14],center:14,central:[1,18,23],certain:[1,4,10,11,15],chang:[1,6,10,11,14,15,18,20,22,23],change_s:1,change_typ:1,channel:14,charact:1,check:[1,6,7,8,9,10,14,15,17,18,19,20,21,23],check_accuraci:[6,7,8,9,10],check_first:15,child:1,choic:10,choos:10,chose:21,classif:[14,17],classifi:[17,22],clone:[11,13,14],close:14,cmap:[6,7,8,9,10],cnn:[6,23],cnn_snake:[6,23],cnn_snakesb:[6,23],co:4,code:[1,10,11,18,23],coincid:[14,15,18],collect:[1,11,15,19,20],column:14,com:[11,13],combin:[1,6,10,14,18,22,23],come:[1,15,17,18,21,22],comma:15,command:[11,13],common:[1,14,17,22],compar:20,complementari:14,complet:[1,15],compon:[0,4,11,15,17,19],compos:[7,8,9,10,17,23],comput:[1,3,4,11,13,14,15,17,19,20,22,23],concaten:4,concept:11,condit:[3,14,15],configur:[10,11],conform:1,connect:[0,1,9,11,14,18,19,20,21,22],connect_stack:0,consecut:[3,14],consid:[11,14],consist:[1,15],constraint:11,construct:[1,11,19,20],contain:[1,14,18,19,20,21],context:11,continu:17,contract:[0,1,6,7,8,9,10,11,14,16,17,18,20,21,22],contract_:[0,1,19],contract_between:[0,1,19],contract_between_:[0,1,7,8,19],contract_edg:[0,1,19],contract_edges_ip:[1,15],contrast:[10,14],contrat:14,control:[1,18,20],conv2d:[6,14,23],conv_mp:14,conv_mps_lay:14,conv_pep:14,conv_tre:14,conveni:[14,21],convent:[1,15,19,22],converg:10,convmp:0,convmpslay:[0,6,23],convolut:[6,14,22,23],convpep:0,convtre:0,convump:0,convumpslay:0,convupep:0,convutre:0,copi:[0,1,14],core:[8,10,14,18,23],corner:14,correct:[1,7,8,9,10,20],correctli:15,correspond:[1,3,4,14,15,18,19,20,22],costli:[1,14,20],could:[14,17,18,20,22],count:17,coupl:[1,18,21],cours:[20,22],cpu:[1,6,7,8,9,10,17,22,23],creat:[1,6,7,11,14,15,16,19,20,21,22],creation:[11,15],criterion:[6,7,8,9,10],crop:[1,14],crossentropyloss:[6,7,8,9,10,17,23],cuda:[1,6,7,8,9,10,17,22,23],cum:[1,3,14,15],cum_percentag:[1,3,6,7,8,9,10,14,15,17,23],current:[1,14],custom:[1,11,14,16],cut:[3,17,23],cutoff:[1,3,14,15],d:[4,11],d_1:3,d_n:3,dagger:[1,15],dangl:[1,15,17,18,19],data:[1,4,6,7,8,9,10,11,14,15,19,21,22,23],data_0:[1,21],data_1:1,data_nod:[1,7,8,19,21,22],data_node_:19,dataload:[6,7,8,9,10,17,23],dataset:[14,17,23],dataset_nam:[6,7,8,9,10],david:[4,11],ddot:4,de:[1,14,19],decompos:[3,15],decomposit:[0,1,9,14,15,17,19,23],decreas:1,dedic:14,deep:[11,17],deepcopi:1,def:[1,6,7,8,9,10,17,22,23],defin:[1,4,11,14,18,19,21,22,23],degre:[4,8,10],del:[1,15],delet:[1,15],delete_nod:1,demonstr:11,densiti:14,depend:[1,3,10],deriv:14,descent:[6,7,8,9,10,18,19],describ:[1,9,14,22],design:14,desir:[4,8,19,20,21,22],detach:9,detail:[1,11,14,19],determin:11,develop:11,devic:[1,6,7,8,9,10,14,17,22,23],devot:20,df:1,diagon:[1,12,15],diagram:18,dictionari:1,did:23,differ:[1,5,6,11,14,15,16,17,18,19,20,22,23],differenti:[11,16,18],dilat:14,dim:[4,6,7,10,17,23],dimens:[1,3,4,8,14,15,17,18,22],dimension:[18,23],direct:7,directli:[1,11,13,15,18,19,20,21],disconnect:[0,1,14,18],discret:[0,10,14],distinct:1,distinguish:21,distribut:[3,12,14],div:[0,19],divers:11,divid:[1,15],divis:15,divisor:15,dmrg:[5,10],document:[1,15],doe:[1,14,18,20],don:15,done:[1,3,14,18],down:14,down_bord:14,download:[6,7,8,9,10,11,13,23],drawn:12,drop_last:[17,23],dtype:1,due:14,duplic:14,dure:[1,8,17,20,21],dynam:14,e:[1,4,11,14,15,21],each:[1,3,4,8,14,15,17,18,19,20,21,22,23],earlier:18,easi:[1,11],easier:18,easili:[1,18,19,22,23],edg:[0,11,14,17,18,19,20,21,22,23],edge1:[1,15],edge2:[1,15],edgea:1,edgeb:1,edges_dict:1,effect:[1,19],effici:[1,11,18],einstein:19,einsum:[0,19],either:[14,15],element:[1,4,11,12,14,15,18],element_s:[17,23],elif:[6,7,8,9,10],els:[6,7,8,9,10,17,22,23],emb:[4,17,22],emb_a:4,emb_b:4,embed:[0,6,7,8,10,14,17,22,23],embedd:4,embedding_dim:[7,8,10],embedding_matric:14,empti:[0,1,14,18,19,20],enabl:[1,11,14,18,19,20],end:[1,4,8,15],engin:18,enhanc:11,enough:[1,14],ensur:[1,11],entail:[1,20],entangl:14,entir:1,entropi:14,enumer:[1,6,7,8,9,10,14],environ:14,epoch:[1,6,7,8,9,10,17,22,23],epoch_num:[17,23],eprint:11,equal:[1,7,14,22],equilibrium:17,equival:[1,4,14,18,23],error:[11,14],essenti:[1,11],etc:[1,15,18,22],eval:[6,7,8,9,10],evalu:19,even:[1,3,8,11,14,18,20,22],evenli:[3,14],everi:[1,15,18,20,23],exact:1,exactli:1,exampl:[1,2,4,6,9,14,15,17,19,21,22],exce:7,exceed:14,excel:11,except:[12,14],exclud:[1,21],execut:15,exist:[1,14,15,19],exp:14,expand:[1,4,22],expect:[3,14],experi:[1,11,18,20],experiment:11,explain:[1,18,19,20],explan:[1,14,15],explicitli:[1,15,21,22],explod:[3,14],explor:[11,18],express:15,extend:1,extra:[3,14,15],extract:[3,14,18],extractor:23,ey:22,eye_tensor:22,f:[6,7,8,9,10,17,18,19,20,21,23],facilit:[1,11,15,18],fact:[1,21,22],factor:[3,14],fail:[14,15],failur:11,fals:[1,3,6,7,8,9,10,12,14,15,17,19,20,22,23],familiar:[11,18],fashion:[8,19],fashion_mnist:[6,9],fashionmnist:[6,9,23],faster:[1,8,22],fastest:11,fc1:9,fc2:9,featur:[1,4,14,15,18,19,20,21,23],feature_dim:[1,22],feature_s:14,fed:23,feed:9,few:[8,11],fffc:9,file:11,fill:[1,12,18,19,22],find:11,finish:[18,22],finit:14,first:[1,4,10,11,14,15,16,18,19,20,21,23],fix:[1,18,19],flat:14,flatten:14,flavour:1,flip:[6,23],flips_x:6,fn_first:15,fn_next:15,folder:[11,13],follow:[1,11,13,14,15],forget:1,form:[1,14,17,18,19,21,23],former:[1,14,15],forward:[1,6,7,8,9,10,14,15,22,23],four:22,frac:[1,3,4,14,15],framework:11,free:14,friendli:11,from:[1,3,6,7,8,9,10,11,12,13,14,15,17,18,19,21,22,23],from_sid:14,from_siz:14,front:1,full:17,fulli:[9,11],func:[1,14],functool:23,fundament:11,further:[1,11],furthermor:[1,20,22],futur:[1,20],g:[1,14,15,21],gain:11,gap:11,garc:11,gaussian:14,ge:[1,3,14,15],gener:[1,20],get:[1,6,7,8,9,10,17,18,22,23],get_axi:[1,7,8,18],get_axis_num:[1,18],get_edg:1,git:[11,13],github:[11,13],give:[1,18,20,21],given:[1,4,6,14],glimps:17,go:[1,15,17,19,20,23],goal:11,goe:14,good:[1,6,7,8,9,10,17],gpc20:6,gpu:[17,22],grad:[1,11,19],gradient:[1,6,7,8,9,10,11,14,18,19],graph:[1,18,20,22],grasp:11,greater:[1,7,22],greatli:11,grei:[6,7,8,9,10],grid:14,grid_env:14,group:15,gt:[6,7,8,9,10],guid:11,ha:[1,3,8,14,15,17,18,20,21,22,23],had:[1,15,20],hand:[1,11,14,22],happen:[1,3,14,20,23],har:11,hardwar:11,hat:4,have:[1,3,4,14,15,17,18,19,20,21,22,23],heavi:22,height:[14,17,22],help:[1,20],henc:[1,15,17,18,19,20,22],here:[1,7,8,10,14,19],hidden:[1,21],high:[1,4,6,7,8,9,10,12],highli:11,hint:1,hold:[19,21],hood:20,horizont:14,how:[1,6,7,8,9,10,11,14,15,16,17,19,21,23],howev:[1,11,14,15,18,19,20],http:[11,13],hundread:19,hybrid:[5,11,16],hyperparamet:[6,7,8,9,10],i:[1,3,6,7,8,11,14,15,18,19,20,21,22],i_1:12,i_n:12,ideal:11,ident:14,identif:11,idx:18,ignor:[6,10],ijb:[15,19],ijk:15,im:15,imag:[6,14,17,22,23],image_s:[6,7,8,9,10,17,22,23],immers:11,implement:[1,11,17,23],improv:17,imshow:[6,7,8,9,10],in_1:3,in_channel:[6,14,23],in_dim:[7,8,10,11,14,17],in_env:14,in_featur:14,in_n:3,in_region:14,in_which_axi:1,includ:[1,11,14,18],incorpor:11,inde:[1,14],independ:[1,15],index:[1,6,7,8,9,10,18,20],indic:[1,3,12,14,15,18,19,20,21],infer:[1,14,15,18,20,22],inform:[1,11,14,15,18,19,20],ingredi:[1,18],inherit:[1,14,15,21],inic:22,init:19,init_method:[1,6,7,8,10,14,17,18,19,23],initi:[0,1,7,8,9,10,14,17,18,19,22,23],inlin:14,inline_input:[6,9,10,14],inline_mat:[6,9,10,14],inner:1,input:[1,3,7,8,14,15,17,18,19,20,21,22,23],input_edg:[1,21,22],input_nod:22,input_s:[6,7,8,9,10],insid:[1,11,13],insight:19,instal:[2,17,18],instanc:[1,15,20,21,22],instanti:[1,3,14,18,20,21,22],instati:18,instead:[1,14,19,20,21,22,23],integ:4,integr:11,intend:[1,14],interior:14,intermedi:[1,19,21,22],intern:[14,15],intric:11,intricaci:11,introduc:[6,14],introduct:11,invari:[1,14,20,21],inverse_memori:1,involv:[1,15,20],is_attached_to:1,is_avail:[6,7,8,9,10,17,22,23],is_batch:[1,18],is_connected_to:1,is_dangl:[1,18],is_data:[1,21],is_leaf:[1,21],is_node1:1,is_result:[1,21],is_virtu:[1,21],isinst:[1,19],isn:[17,18],isometri:14,issu:1,item:[6,7,8,9,10,17,23],iter:[1,8,14,20],its:[1,11,12,14,15,18,20,22,23],itself:[1,14,22],itselv:14,j:[1,4,8,11,15],jkb:[15,19],jl:15,jo:11,joserapa98:[11,13],just:[1,11,14,18,20,21,22,23],k:[11,15],keep:[1,3,14,15,20],keepdim:1,kei:[1,10,11,18],kept:[1,3,14,15],kernel:14,kernel_s:[6,14,23],kerstjen:11,keyword:[1,12,14],kib:[15,19],kind:[1,17],klm:15,know:[1,18,19,20],known:22,kwarg:[1,6,7,8,9,12,14],l2_reg:[17,23],l:[4,15],label:[14,17,21,23],lambda:[17,23],larger:1,largest:1,last:[1,7,14,15,22,23],later:22,latter:[1,14],layer:[1,6,11,14,17,22,23],ldot:12,lead:[1,15,21],leaf:[1,15,21,22],leaf_nod:[1,21],learn:[1,8,11,15,17,18,19,20,21,22,23],learn_rat:[17,23],learnabl:19,learning_r:[6,7,8,9,10],least:[1,14,15,17,20,23],leav:[8,14,20],left1:19,left2:19,left:[1,7,8,11,14,15,18,19,20,21,22,23],left_bord:14,left_down_corn:14,left_nod:[7,8,14],left_up_corn:14,leg:1,len:[6,7,8,9,10,15,22],length:[1,14],let:[17,18,19,20,22,23],level:[1,4,10,18],leverag:18,lfloor:4,li:[1,11,18],librari:[11,18,23],like:[0,1,5,10,11,14,17,18,19,20,21,22,23],line:[11,14,23],linear:[9,11,22],link:1,list:[1,3,12,14,15,18,19,22],load:[6,7,8,9,10,17,22],load_state_dict:[9,10,22],loader:[6,7,8,9,10,17,23],local:[4,14],locat:[1,14],log_norm:14,log_scal:14,logarithm:[3,14],logarithmoc:14,logit:[17,23],longer:[1,20],look:[1,10],loop:[17,22],lose:17,loss:[6,7,8,9,10,23],loss_fun:[17,23],lot:[1,17],low:[1,4,6,7,8,9,10,12,14],lower:[1,3,14,15],lr:[6,7,8,9,10,17,23],lst_y:6,lt:10,lvert:4,m:[1,3,11,13,15],machin:[11,17],made:[1,15],mai:[1,3,10,11,14],main:[1,18,19,20,22],mainli:1,maintain:1,make:[1,8,18,19,20,21],make_tensor:[1,14],manag:[1,22],mandatori:[1,15],mani:[1,8,14,17,18,20,23],manipul:18,manual:[1,14,22],manual_se:[17,23],map:4,margin:14,marginalize_output:14,master:[11,13],mat:3,mat_to_mpo:[0,9],match:[1,10,14,15],matplotlib:[6,7,8,9,10],matric:[14,15,19,22],matrix:[1,3,4,9,11,14,15,17,18,20,22],mats_env:[7,8,14],mats_env_:[7,8],max:[6,7,8,9,10,17,23],max_bond:14,maximum:[4,14],maxpool2d:[6,23],mayb:15,mb:[17,23],mean:[1,12,14],megabyt:[17,23],mehtod:18,member:1,memori:[1,11,16,17,18,21,22,23],mention:[14,22],merg:[7,8],merge_block:7,messag:11,method:[1,14,15,18,19,20,21,22],middl:14,middle_sit:14,might:[1,14,20,21,22],mile:4,mimic:22,minuend:15,misc:11,miscellan:[17,23],mit:11,mkdir:[6,7,8,9,10],mnist:[7,8,10,17],mod:4,mode:[1,6,14,15,17,21,22,23],model:[0,1,5,9,11,16,18,19,20,21],model_nam:[6,7,8,9,10],modif:1,modifi:[1,14,19],modul:[1,6,9,11,13,14,17,18,19,22,23],modulelist:[6,23],monomi:4,monturiol:11,mooth:11,more:[1,3,11,14,15,18,19,20,21],most:[1,11,18,21],move:[1,14,18],move_block_epoch:[7,8],move_nam:1,move_to_network:[1,15],movec:15,mp:[0,3,5,6,9,11,17,18,19,20,21,22,23],mpo:[0,3,9,22],mpo_tensor:9,mps_data:[9,14],mps_dmrg:7,mps_dmrg_hybrid:8,mps_hdmrg:8,mps_layer:[6,14],mps_tensor:9,mpsdata:[0,3,9],mpslayer:[0,7,8,10,11,17,22],mpss:6,much:[1,8,20,21,22,23],mul:[0,19],multi:18,multipl:[14,18,20],multipli:[14,15],must:[1,3,15,18,22],my_model:11,my_nod:[1,20],my_paramnod:1,my_stack:1,mybatch:1,n:[1,4,6,9,10,11,12,14,17,23],n_:[1,4],n_batch:[3,9,14],n_block:8,n_col:14,n_epoch:22,n_featur:[7,8,9,10,11,14,17,22],n_param:[6,9,10,17,23],n_row:14,name:[1,7,8,11,15,17,18,19,20,22,23],name_:1,necessari:[1,14,15,17,18,22,23],need:[1,11,14,15,17,18,19,20,22],neighbour:[1,7,8,14,19],nelement:[17,23],net2:1,net:[1,11,15,18,19,20,21],network:[0,5,7,8,10,11,14,15,16,20,21,22],neumann:14,neural:[5,11,14,16,17],never:[1,15,21],nevertheless:11,new_bond_dim:10,new_edg:[1,15],new_edgea:1,new_edgeb:1,new_mp:22,new_nodea:[1,15],new_nodeb:[1,15],new_tensor:20,next:[1,14,15,18,19,20,21],nn:[1,6,7,8,9,10,11,14,17,18,19,22,23],no_grad:[6,7,8,9,10,17,23],node1:[1,11,15,18,19,20,21],node1_ax:[1,7,8,15],node1_list:1,node1_lists_dict:1,node2:[1,11,15,18,19,20,21],node2_ax:[1,7,8,15],node3:[19,20],node:[0,3,7,8,11,12,14,16,17,20,22,23],node_0:1,node_1:1,node_:[18,19,20,21],node_left:[1,15],node_n:1,node_ref:1,node_right:[1,15],nodea:[1,15],nodeb:[1,15],nodec:[1,15],nodes_list:15,nodes_nam:1,nodesa:15,nodesb:15,nodesc:15,non:[1,14,15,19,22],none:[1,3,7,8,11,14,15,19,22],norm:[1,3,14,15],normal:[1,3,12,14,15],notabl:11,notat:18,note:[1,11,15,18,19,22],noth:[1,18,20],now:[1,18,19,20,22,23],npov15:9,nto16:10,nu_batch:14,num:1,num_batch:[17,23],num_batch_edg:[1,21,22],num_class:[6,7,8,9,10],num_correct:[6,7,8,9,10],num_epoch:[6,7,8,9,10,17,23],num_epochs_canon:17,num_sampl:[6,7,8,9,10],num_test:[17,23],num_train:[17,23],number:[1,3,14,15,17,19,22,23],numel:[1,6,9,10],numer:15,nummber:1,o:11,obc:[3,7,8,9,10,14],object:[1,18,23],obtain:[14,17],oc:14,occur:[1,14,20],occurr:11,off:[17,20,23],offer:11,often:[1,20],onc:[1,8,11,14,15,20],one:[1,3,4,6,7,9,10,14,15,17,18,19,20,21,22,23],ones:[0,1,4,6,14,18,19,21,23],ones_lik:[6,17,23],onli:[1,11,14,15,18,19,20,21,22],open:14,oper:[0,1,14,18,21,22],operand:[1,18,19],opposit:14,opt_einsum:[11,15,19],optim:[1,6,7,8,9,10,11,23],option:[1,3,4,6,10,11,14,15,18,22],order:[1,3,6,14,15,18,19,20,21,22],orient:14,origin:[1,4,14,15,17,21,23],orthogon:14,ot:14,other:[1,8,14,15,18,19,20,21,22,23],other_left:18,other_nod:20,otherwis:[1,14,15,23],otim:4,our:[6,7,8,9,10,17,18,19,20,23],out:[1,14,15,22],out_1:3,out_channel:[6,14,23],out_dim:[7,8,10,11,14,17],out_env:14,out_featur:14,out_n:3,out_nod:[7,8,14],out_posit:14,out_region:14,outdat:14,output:[1,3,4,6,7,8,14,15,17,22],output_dim:[6,7,8,10],output_nod:22,outsid:[11,13],over:[1,15,19],overcom:1,overhead:20,overload:1,overrid:[1,14,22],override_edg:1,override_nod:1,overriden:[1,19,22],own:[1,14,15,20,21],ownership:1,p:[1,6,9,10,11,15,17,23],packag:[11,13],pad:[6,14,23],pair:[1,8,14,23],pairwis:14,paper:[4,11,14,23],parallel:[1,14],param:[1,15,17,23],param_nod:[1,11,12,19,21],paramedg:1,paramet:[1,3,4,6,7,8,9,10,12,14,15,17,19,22,23],parameter:[1,7,8,14,19],parametr:[1,14,17,19,22,23],paramnod:[0,12,14,15,20,21,22],paramnode1:19,paramnode2:19,paramnode3:19,paramnodea:1,paramnodeb:1,paramstacknod:[0,15,20,21],pareja2023tensorkrowch:11,pareja:11,parent:[1,22],parenthesi:1,part:[1,14,19,21,22],partial:[14,23],partial_dens:14,particular:[1,22],pass:[14,17,22],patch:[14,22],pattern:23,pave:17,pbc:14,pep:[0,11,22],perform:[1,10,11,14,15,17,18,19,20,22,23],period:14,permut:[0,1,9,19,20],permute_:[0,1,19],persist:11,phase:15,phi:4,phys_dim:[9,14],physic:[3,14,18],pi:4,piec:[18,22],pip:[11,13,17,18],pipelin:[11,17],pixel:[14,17,22,23],place:[1,14,15,19,20,22],plai:21,pleas:11,plt:[6,7,8,9,10],plu:14,plug:14,point:[1,17],poli:[0,8,10,22],pool:[6,23],pop:7,posit:[7,14,22],possibl:[1,6,7,8,9,10,14,17,18,19,20],potenti:11,power:[4,14,17],poza:11,practic:[1,11],practition:17,pre:9,precis:4,pred:[17,23],predict:[6,7,8,9,10,17,23],present:23,previou:[1,14,19,20,21,22,23],previous:19,primari:11,principl:[1,21],print:[1,6,7,8,9,10,14,15,17,23],probabl:17,problem:[1,20],process:[1,8,10,11,17],prod:6,product:[11,14,15,17,18,20,22],profici:11,project:14,properli:22,properti:[1,7,14,15,18],proport:[1,3,14,15],prove:14,provid:[1,3,11,14,15,18],prune:23,pt:[6,7,8,9,10,22],purpos:[1,18,20,21],put:[1,14,17,23],pyplot:[6,7,8,9,10],pytest:[11,13],python:[11,13,17],pytorch:[1,11,15,17,18,19,20,22,23],q:15,qr:[0,1,3,14,19],qr_:[0,1,14],quantiti:[1,3,14,15],quantum:18,qubit:14,quit:[11,23],r:[11,15],r_1:15,r_2:15,rais:[1,7],ram:11,rand:[0,1,4,6,10,14],randint:[4,6,7,8,9,10],randn:[0,1,4,6,10,11,14,15,18,19,20,21,22],randn_ey:[6,8,10,14,17,23],random:[14,15,19],random_ey:22,random_sampl:[6,7,8,9,10],rang:[1,6,7,8,9,10,11,14,15,17,18,19,20,21,22,23],rangl:4,rank:[1,3,4,7,8,14,15,19],rapid:11,rather:[1,14,15,18,20,21],re:[1,15,17,23],reach:17,readi:22,realli:[1,21],reamin:8,reattach:1,reattach_edg:1,recal:[1,22],recogn:19,recommend:[1,11,14],reconnect:[1,19],recov:[1,3,14],reduc:[1,14,15,17,23],redund:[1,15],refer:[1,2,10,15,18,19,20,21,22],referenc:1,regard:[1,15,19],regio:14,relat:18,relev:[1,18],reli:[11,15],relu:[6,9,11,23],remain:[8,14],remov:[1,14,15],renorm:[0,1,3,6,9,10,14,19],renorma:[1,15],repeat:[1,8,10,15],repeatedli:20,replac:1,repositori:[11,13],repres:[14,18],reproduc:[1,10,11,20],requir:[1,14,15,21],requires_grad:1,rerun:11,res1:19,res2:19,rescal:14,research:11,reserv:[1,15,20],reset:[1,6,7,8,9,10,14,15,20,21,22],reset_tensor_address:1,reshap:[3,7,8,9,10,15,20],resiz:[7,8,9,10,17,23],respect:[1,3,14,15,19,20],rest:[1,19],restrict:[1,15,21],result2:15,result:[1,3,7,8,9,10,11,14,15,19,20,21,22],result_mat:[7,8],resultant_nod:[1,21],retain:1,retriev:[1,18,20,21],reus:14,review:11,rez:11,rfloor:4,rho_a:14,rid:1,right1:19,right2:19,right:[1,7,8,11,14,15,18,19,20,21,22,23],right_bord:14,right_down_corn:14,right_nod:[7,8,14],right_up_corn:14,rightmost:14,ring:19,role:[1,14,21,22],root:[6,7,8,9,10],row:14,rowch:11,rq:[0,1],rq_:[0,1,14],run:[11,13,14,17,23],running_acc:17,running_test_acc:[17,23],running_train_acc:[17,23],running_train_loss:[17,23],s:[1,4,11,12,14,15,17,18,19,20,21,22,23],s_1:4,s_i:[1,3,14,15],s_j:4,s_n:4,sai:[1,20],same:[1,8,10,14,15,18,19,20,23],sampler:[17,23],satisfi:[1,3,14,15],save:[1,6,7,8,9,10,11,16,19,22],scalar:14,scale:[3,14],scenario:11,scheme:10,schmidt:14,schwab:4,score:[6,7,8,9,10,17,23],second:[1,14,15,20],secondli:22,section:[18,19,21,23],see:[1,6,7,8,9,10,11,14,15,21,23],seen:21,select:[1,15,18,19,22],self:[1,6,7,8,9,14,22,23],send:[17,22,23],sens:[17,21],sento:22,separ:[14,15],sepcifi:1,sequenc:[1,3,14,15,19,22],sequenti:[11,22],serv:[11,17],set:[1,7,8,14,15,20,21,22,23],set_data_nod:[1,7,8,9,14,21,22],set_param:[1,14],set_tensor:[1,14,20],set_tensor_from:[1,20,21,22],sever:[1,15],shall:[1,22],shape:[1,3,4,7,8,9,10,11,12,14,15,17,18,19,20,21,22],shape_all_nodes_layer_1:14,shape_all_nodes_layer_n:14,shape_node_1_layer_1:14,shape_node_1_layer_n:14,shape_node_i1_layer_1:14,shape_node_in_layer_n:14,share:[1,14,15,18,20,21],share_tensor:[1,14],should:[1,3,4,7,11,12,14,15,18,19,20,21,22],show:[6,7,8,9,10,18],showcas:11,shown:7,shuffl:[6,7,8,9,10],side:[1,7,8,14,15,23],similar:[1,14,15,18,19,21,22],simpl:[11,18,19],simpli:[1,18,20,22],simplifi:[1,11],simul:18,sin:4,sinc:[1,8,14,15,19,20,21,22,23],singl:[1,14,15,19,22],singular:[1,3,14,15,17,19,23],site:[7,14,18],sites_per_lay:14,situat:[1,15,21],size:[1,4,6,7,8,9,10,12,14,15,18,19,21,22,23],skip:1,skipp:20,slice:[1,15,20,21],slide:1,slower:[1,20],small:19,smaller:1,smooth:11,snake:[6,14,23],so:[1,14,15,20,22],some:[1,3,14,15,17,18,19,20,21,22],someth:18,sometim:1,sort:[1,14,18,20,21],sourc:[1,3,4,12,14,15],space:[1,17,22,23],special:[1,19,21],specif:[1,11,21],specifi:[1,3,14,15,18,19,21],split:[0,1,3,7,8,14,18,19],split_0:[1,15],split_1:[1,15],split_:[0,1,7,8,19],split_ip:[1,15],split_ip_0:[1,15],split_ip_1:[1,15],sqrt:4,squar:[14,15],squeez:[4,6,7,8,9,10],ss16:[7,10],stack:[0,1,4,6,14,17,19,20,21,22],stack_0:1,stack_1:1,stack_data:[1,15,22],stack_data_memori:[1,21],stack_data_nod:19,stack_input:22,stack_nod:[1,15,19,20,21],stack_result:[19,22],stackabl:15,stacked_einsum:[0,19],stackedg:[0,15,19],stacknod:[0,15,19,21],stai:1,stand:4,start:[1,14,18,20,22,23],state:[1,11,14,17,18,20,22],state_dict:[6,7,8,9,10,22],staticmethod:[6,23],statist:11,std:[1,6,8,10,12,14,17,22,23],stem:11,step:[1,6,7,8,9,10,11,16,23],stick:1,still:[1,14,15,19],store:[1,14,15,18,21,22],stoudenmir:4,str:[1,15],straightforward:11,strength:11,stride:[6,14,23],string:[1,14,15,21],structur:[1,11,14,18,22,23],sub:[0,19],subclass:[1,11,16,18,21,23],subsequ:[1,15,20],subsetrandomsampl:[17,23],substitut:1,subsystem:14,subtract:15,subtrahend:15,successfulli:10,successor:[0,15],suffix:1,suitabl:11,sum:[1,3,6,7,8,9,10,14,15,17,19,23],sum_:[1,3,14,15],summat:19,support:11,sv:[1,15],svd:[0,1,3,14,17],svd_:[0,1,14,19],svdr:[0,1,14],svdr_:[0,1,14],t:[14,15,17,18,21,22],t_:[12,15],tailor:11,take:[1,14,15,17,20,21,22],taken:[1,15],target:[6,7,8,9,10],task:[1,14,21],temporari:[1,21],tensor:[0,3,4,5,6,7,8,11,12,14,16,21,22],tensor_address:[1,14,20,21],tensorb:15,tensori:5,tensorkrowch:[1,3,4,6,7,8,9,10,12,13,14,15,16,19,21,22,23],tensornetwork:[1,11,15,16,19,21,23],termin:[11,13],test:[6,7,8,9,10,11,13,17,23],test_acc:[6,7,8,9,10],test_dataset:[6,7,8,9,10],test_load:[6,7,8,9,10],test_set:[17,23],texttt:14,th:14,than:[1,3,7,8,14,15,18,22],thank:18,thei:[1,11,13,14,15,18,19,21],them:[1,14,15,17,18,19,20,22,23],themselv:[14,15],therefor:[1,11,13,14,18,22],thi:[1,3,4,6,8,9,10,11,14,15,17,18,19,20,21,22,23],thing:[1,15,17,21,23],think:20,third:14,those:[1,20,21,22],though:[1,14,15,19,22],thought:1,three:[1,15],through:[1,11,14,15,17,22,23],thu:[1,3,8,11,14,15,18,22],time:[1,3,4,8,10,11,14,15,16,18,19,22],titl:11,tk:[1,4,6,7,8,9,10,11,14,15,17,18,19,20,21,22,23],tn1:9,tn:[9,22],tn_fffc:9,tn_linear:9,tn_model:9,tn_nn:9,togeth:[1,11,13,20,21],tool:[11,18,19],top:[1,11,14,17,19,23],torch:[1,3,4,6,7,8,9,10,11,12,14,15,17,18,19,20,21,22,23],torchvis:[6,7,8,9,10,17,23],total:[1,3,14,15,17,23],total_num:[17,23],totensor:[6,7,8,9,10,17,23],tprod:[0,19],trace:[1,6,7,8,9,10,14,15,17,21,22,23],trace_sit:14,track:[1,20],tradit:8,train:[1,5,11,18,19,20,22,23],train_acc:[6,7,8,9,10],train_dataset:[6,7,8,9,10],train_load:[6,7,8,9,10],train_set:[17,23],trainabl:[1,14,18,21,22,23],transform:[4,6,7,8,9,10,14,17,19,23],transit:14,translation:[1,14,20,21],transpos:[6,17,22,23],treat:1,tree:[0,22],tri:[1,15],triangular:15,trick:[20,23],tupl:[1,12,14,15],turn:[1,14,20],tutori:[1,2,17,18,19,20,21,22,23],two:[1,14,15,18,19,20],two_0:15,type:[1,3,4,6,7,8,9,10,11,12,14,15,16,18,19,20],typeerror:1,u:[1,12,15],ump:0,umpo:0,umpslay:0,unbind:[0,1,19,20,22],unbind_0:[1,15],unbind_result:19,unbinded_nod:[19,20],unbound:[1,15],under:[11,20],underli:20,underscor:[1,15],understand:[11,18],undesir:[1,3,14,15,21],unfold:14,uniform:[1,12,14,20,21,22],uniform_memori:22,uniform_nod:[20,21],uninform:17,uniqu:[14,20],unit:[0,6,7,10,14],unitari:[14,15],univoc:14,unix:[11,13],unless:1,unmerg:8,unmerge_block:7,unset:1,unset_data_nod:[1,14],unset_tensor:1,unsqueez:23,until:[1,10,14,15,17],up:[1,14,15,18],up_bord:14,updat:[8,14,17,23],update_bond_dim:[7,8,14],upep:0,upon:14,upper:[14,15],ur_1sr_2v:15,us:[1,3,4,7,11,14,15,17,18,19,20,21,22,23],usag:1,useless:17,user:[1,11],usual:[1,14,15,21,22],usv:15,util:[6,7,8,9,10,17,23],utre:0,v:[1,11,13,15],valid:1,valu:[1,3,4,14,15,17,19,22,23],valueerror:[1,7],vanilla:[18,19,20],vanish:14,vari:14,variabl:4,variant:[19,22],variat:1,variou:[11,14],vdot:4,vec:3,vec_to_mp:[0,9],vector:[3,4,14,17,22,23],veri:[1,17,18,20,22],verifi:[1,15],versa:14,versatil:11,version:[1,14,15,19],vertic:[1,14],via:[1,3,7,14,15,18,19,20,21],vice:14,view:[6,17,22,23],virtual:[1,15,20,21,22],virtual_nod:[1,21],virtual_result:[1,21],virtual_result_stack:[1,15,21],virtual_uniform:[1,14,21,22],virtual_uniform_mp:1,visit:1,von:14,wa:[1,6,14,22,23],wai:[1,5,8,14,17,18,22],want:[1,14,18,19,20,22],we:[1,6,7,8,10,11,17,18,19,20,21,22,23],weight:9,weight_decai:[6,7,8,9,10,17,23],well:[1,10,14,15],were:[1,14,15,19,21,22],what:[1,18,20,22],when:[1,14,15,17,18,19,20,21,22],whenev:[1,15],where:[1,4,8,14,15,17,18,19,20,22],whether:[1,3,12,14,18,20],which:[1,4,10,12,14,15,17,18,19,20,21,22],whilst:14,who:11,whole:[1,8,14,17,19,20,21,22],whose:[1,6,14,15,20,21],why:20,wide:[11,22],width:[14,17,22],wise:[1,15],wish:22,without:[1,12,14,15,17],won:[14,22],word:[1,18],work:[1,11,15,19,23],workflow:[1,22],worri:[1,20],would:[1,14,15,18,20,23],wouldn:21,wow:23,wrap:[1,18],written:[11,13],x:[4,6,7,8,9,10,11,14,17,22,23],x_1:4,x_j:4,x_n:4,y1:23,y2:23,y3:23,y4:23,y:[6,7,8,9,10,23],yet:[18,22],you:[11,13,17,18,19,20,21,22],your:[11,13,17,18,22],your_nod:20,yourself:11,zero:[0,1,6,7,8,9,10,14,17,22,23],zero_grad:[6,7,8,9,10,17,23],zeros_lik:20},titles:["API Reference","Components","<no title>","Decompositions","Embeddings","Examples","Hybrid Tensorial Neural Network model","DMRG-like training of MPS","Hybrid DMRG-like training of MPS","Tensorizing Neural Networks","Training MPS in different ways","TensorKrowch documentation","Initializers","Installation","Models","Operations","Tutorials","First Steps with TensorKrowch","Creating a Tensor Network in TensorKrowch","Contracting and Differentiating the Tensor Network","How to save Memory and Time with TensorKrowch (ADVANCED)","The different Types of Nodes (ADVANCED)","How to subclass TensorNetwork to build Custom Models","Creating a Hybrid Neural-Tensor Network Model"],titleterms:{"1":[17,18,19,20,21,22],"2":[17,18,19,20,21,22],"3":[17,18,19,20,22],"4":17,"5":17,"6":17,"7":17,"class":15,"function":17,"import":17,The:[21,22],abstractnod:1,add:15,add_on:4,advanc:[20,21],api:0,ar:20,axi:1,basi:4,between:19,build:[18,22],choos:17,cite:11,compon:[1,18,22],connect:15,connect_stack:15,content:2,contract:[15,19],contract_:15,contract_between:15,contract_between_:15,contract_edg:15,convmp:14,convmpslay:14,convpep:14,convtre:14,convump:14,convumpslay:14,convupep:14,convutre:14,copi:12,creat:[18,23],custom:22,data:17,dataset:[6,7,8,9,10],decomposit:3,defin:[6,7,8,9],differ:[10,21],differenti:19,disconnect:15,discret:4,distinguish:19,div:15,dmrg:[7,8],document:11,download:17,edg:[1,15],einsum:15,embed:4,empti:12,everyth:22,exampl:[5,11],faster:20,first:[17,22],how:[18,20,22],hybrid:[6,8,23],hyperparamet:17,initi:12,instal:[11,13],instanti:[10,17],introduct:[17,18,19,20,21,22],layer:9,librari:17,licens:11,like:[7,8,15],loss:17,manag:20,mat_to_mpo:3,matrix:19,memori:20,mode:20,model:[6,7,8,10,14,17,22,23],mp:[7,8,10,14],mpo:14,mpsdata:14,mpslayer:14,mul:15,name:21,network:[1,6,9,17,18,19,23],neural:[6,9,23],node:[1,15,18,19,21],notebook:11,ones:12,oper:[15,19,20],optim:17,our:22,paramnod:[1,19],paramstacknod:1,pep:14,permut:15,permute_:15,poli:4,product:19,prune:[10,17],put:22,qr:15,qr_:15,rand:12,randn:12,refer:0,renorm:15,requir:11,reserv:21,retrain:10,rq:15,rq_:15,run:20,save:20,set:17,setup:[17,18],skip:20,split:15,split_:15,stack:15,stacked_einsum:15,stackedg:1,stacknod:1,start:17,state:19,step:[17,18,19,20,21,22],store:20,sub:15,subclass:22,successor:1,svd:15,svd_:15,svdr:15,svdr_:15,tensor:[1,9,15,17,18,19,20,23],tensori:6,tensorkrowch:[11,17,18,20],tensornetwork:[18,20,22],time:20,togeth:22,tprod:15,train:[6,7,8,9,10,17],tree:14,tutori:[11,16],type:21,ump:14,umpo:14,umpslay:14,unbind:15,unit:4,upep:14,utre:14,vec_to_mp:3,wai:10,zero:12}}) \ No newline at end of file diff --git a/docs/index.rst b/docs/index.rst index 5e479a1..6eb9a01 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -45,6 +45,12 @@ Installation .. include:: installation.rst :start-line: 3 +.. note:: + Certain tests may experience failure as a result of statistical anomalies or + hardware constraints. We advise reviewing the error messages to determine if + these failures stem from such occurrences. Should this be the case, consider + rerunning the tests to ascertain if the errors persist. + Example =======