Definitions for contractions (varipeps.contractions.Definitions)
- class varipeps.contractions.Definitions[source]
Bases:
objectClass to define the contractions used along in this package.
The convention used for the ordering of the tensors is for a single PEPS tensor:
single = [PEPS tensor, relevant CTM tensors starting at C1 and then clockwise]
which is repeated for each PEPS tensor and its environment in the ordering fixed x and all corresponding y values in increasing order and then the next x value in increasing order. For example for a quadratic four site the structure would look like:
(x, y) - (x, y+1) | | (x+1, y) - (x+1, y+1) tensors = [single(x, y), single(x, y+1), single(x+1, y), single(x+1, y+1)]
Using this convention each contraction is specified in the format:
contraction_name = { "tensors": [ [Relevant elements for first single PEPS tensors incl. env], [Relevant elements for second single PEPS tensors incl. env], ..., "Optional string elements indicating additional non-PEPS tensors (e.g. gates)" ], "network": [ [ (Axes for first element of the tensors for first PEPS Tensor), (Axes for second element of the tensors for first PEPS Tensor) ], [ (Axes for first element of the tensors for second PEPS Tensor), (Axes for second element of the tensors for second PEPS Tensor) ], ..., (Axes for additional non-PEPS tensors) ] }
The axes are hereby specified in the ncon format where positive numbers describes the axes to be contracted and negative number the open axes after the contraction. The elements are strings indicating the elements of the PEPS tensor object elements. Hereby the special element “tensor_conj” describes the conjugated and transposed PEPS tensor.
- ctmrg_absorption_bottom_C3: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_bottom_left'], 'filter_peps_tensors': [['T2', 'C3']], 'ncon_con_order': (1, 2, 3, 4), 'ncon_flat_network': (3, 4, 1, -2, 2, 1, 2, 4, 3, -1), 'ncon_network': [(3, 4, 1, -2), (2, 1), (2, 4, 3, -1)], 'ncon_out_order': (-1, -2), 'ncon_sizes': (4, 2, 4), 'network': [[(3, 4, 1, -2), (2, 1)], (2, 4, 3, -1)], 'network_additional_tensors': [(2, 4, 3, -1)], 'network_peps_tensors': [[(3, 4, 1, -2), (2, 1)]], 'tensors': [['T2', 'C3'], 'projector_bottom_left']}
Contraction for C3 during bottom absorption.
- ctmrg_absorption_bottom_C3_phase_1: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_bottom_left'], 'filter_peps_tensors': [['T2', 'C3_phase']], 'ncon_con_order': (1, 2, 3, 4), 'ncon_flat_network': (3, 4, 1, -2, 2, 1, 2, 4, 3, -1), 'ncon_network': [(3, 4, 1, -2), (2, 1), (2, 4, 3, -1)], 'ncon_out_order': (-1, -2), 'ncon_sizes': (4, 2, 4), 'network': [[(3, 4, 1, -2), (2, 1)], (2, 4, 3, -1)], 'network_additional_tensors': [(2, 4, 3, -1)], 'network_peps_tensors': [[(3, 4, 1, -2), (2, 1)]], 'tensors': [['T2', 'C3_phase'], 'projector_bottom_left']}
Contraction for C3 during bottom absorption. Here C3 is the tensor with structure factor phase included which is grown by a normal T2 tensor.
- ctmrg_absorption_bottom_C3_phase_2: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_bottom_left'], 'filter_peps_tensors': [['T2_phase', 'C3']], 'ncon_con_order': (1, 2, 3, 4), 'ncon_flat_network': (3, 4, 1, -2, 2, 1, 2, 4, 3, -1), 'ncon_network': [(3, 4, 1, -2), (2, 1), (2, 4, 3, -1)], 'ncon_out_order': (-1, -2), 'ncon_sizes': (4, 2, 4), 'network': [[(3, 4, 1, -2), (2, 1)], (2, 4, 3, -1)], 'network_additional_tensors': [(2, 4, 3, -1)], 'network_peps_tensors': [[(3, 4, 1, -2), (2, 1)]], 'tensors': [['T2_phase', 'C3'], 'projector_bottom_left']}
Contraction for C3 during bottom absorption. Here C3 is the tensor with structure factor phase not included yet which is grown by a T2 tensor which includes a phase already.
- ctmrg_absorption_bottom_C4: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_bottom_right'], 'filter_peps_tensors': [['C4', 'T4']], 'ncon_con_order': (1, 2, 3, 4), 'ncon_flat_network': (2, 1, 1, 4, 3, -2, -1, 2, 4, 3), 'ncon_network': [(2, 1), (1, 4, 3, -2), (-1, 2, 4, 3)], 'ncon_out_order': (-1, -2), 'ncon_sizes': (2, 4, 4), 'network': [[(2, 1), (1, 4, 3, -2)], (-1, 2, 4, 3)], 'network_additional_tensors': [(-1, 2, 4, 3)], 'network_peps_tensors': [[(2, 1), (1, 4, 3, -2)]], 'tensors': [['C4', 'T4'], 'projector_bottom_right']}
Contraction for C4 during bottom absorption.
- ctmrg_absorption_bottom_C4_phase_1: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_bottom_right'], 'filter_peps_tensors': [['C4_phase', 'T4']], 'ncon_con_order': (1, 2, 3, 4), 'ncon_flat_network': (2, 1, 1, 4, 3, -2, -1, 2, 4, 3), 'ncon_network': [(2, 1), (1, 4, 3, -2), (-1, 2, 4, 3)], 'ncon_out_order': (-1, -2), 'ncon_sizes': (2, 4, 4), 'network': [[(2, 1), (1, 4, 3, -2)], (-1, 2, 4, 3)], 'network_additional_tensors': [(-1, 2, 4, 3)], 'network_peps_tensors': [[(2, 1), (1, 4, 3, -2)]], 'tensors': [['C4_phase', 'T4'], 'projector_bottom_right']}
Contraction for C4 during bottom absorption. Here C4 is the tensor with structure factor phase included which is grown by a normal T4 tensor.
- ctmrg_absorption_bottom_C4_phase_2: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_bottom_right'], 'filter_peps_tensors': [['C4', 'T4_phase']], 'ncon_con_order': (1, 2, 3, 4), 'ncon_flat_network': (2, 1, 1, 4, 3, -2, -1, 2, 4, 3), 'ncon_network': [(2, 1), (1, 4, 3, -2), (-1, 2, 4, 3)], 'ncon_out_order': (-1, -2), 'ncon_sizes': (2, 4, 4), 'network': [[(2, 1), (1, 4, 3, -2)], (-1, 2, 4, 3)], 'network_additional_tensors': [(-1, 2, 4, 3)], 'network_peps_tensors': [[(2, 1), (1, 4, 3, -2)]], 'tensors': [['C4', 'T4_phase'], 'projector_bottom_right']}
Contraction for C4 during bottom absorption. Here C4 is the tensor with structure factor phase not included yet which is grown by a T4 tensor which includes a phase already.
- ctmrg_absorption_bottom_T3: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_bottom_left', 'projector_bottom_right'], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T3']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9), 'ncon_flat_network': (3, 2, 6, 8, -4, 5, 4, 6, 9, -3, 1, 7, 4, 2, 1, 5, 3, -1, -2, 7, 9, 8), 'ncon_network': [(3, 2, 6, 8, -4), (5, 4, 6, 9, -3), (1, 7, 4, 2), (1, 5, 3, -1), (-2, 7, 9, 8)], 'ncon_out_order': (-1, -2, -3, -4), 'ncon_sizes': (5, 5, 4, 4, 4), 'network': [[(3, 2, 6, 8, -4), (5, 4, 6, 9, -3), (1, 7, 4, 2)], (1, 5, 3, -1), (-2, 7, 9, 8)], 'network_additional_tensors': [(1, 5, 3, -1), (-2, 7, 9, 8)], 'network_peps_tensors': [[(3, 2, 6, 8, -4), (5, 4, 6, 9, -3), (1, 7, 4, 2)]], 'tensors': [['tensor', 'tensor_conj', 'T3'], 'projector_bottom_left', 'projector_bottom_right']}
Contraction for T3 during bottom absorption.
- ctmrg_absorption_bottom_T3_large_d: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_bottom_left', 'projector_bottom_right'], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T3']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9), 'ncon_flat_network': (4, 3, 2, 8, -4, 6, 5, 2, 9, -3, 1, 7, 5, 3, 1, 6, 4, -1, -2, 7, 9, 8), 'ncon_network': [(4, 3, 2, 8, -4), (6, 5, 2, 9, -3), (1, 7, 5, 3), (1, 6, 4, -1), (-2, 7, 9, 8)], 'ncon_out_order': (-1, -2, -3, -4), 'ncon_sizes': (5, 5, 4, 4, 4), 'network': [[(4, 3, 2, 8, -4), (6, 5, 2, 9, -3), (1, 7, 5, 3)], (1, 6, 4, -1), (-2, 7, 9, 8)], 'network_additional_tensors': [(1, 6, 4, -1), (-2, 7, 9, 8)], 'network_peps_tensors': [[(4, 3, 2, 8, -4), (6, 5, 2, 9, -3), (1, 7, 5, 3)]], 'tensors': [['tensor', 'tensor_conj', 'T3'], 'projector_bottom_left', 'projector_bottom_right']}
- ctmrg_absorption_bottom_T3_large_d_phase_1: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_bottom_left', 'projector_bottom_right'], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T3_phase']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9), 'ncon_flat_network': (4, 3, 2, 8, -4, 6, 5, 2, 9, -3, 1, 7, 5, 3, 1, 6, 4, -1, -2, 7, 9, 8), 'ncon_network': [(4, 3, 2, 8, -4), (6, 5, 2, 9, -3), (1, 7, 5, 3), (1, 6, 4, -1), (-2, 7, 9, 8)], 'ncon_out_order': (-1, -2, -3, -4), 'ncon_sizes': (5, 5, 4, 4, 4), 'network': [[(4, 3, 2, 8, -4), (6, 5, 2, 9, -3), (1, 7, 5, 3)], (1, 6, 4, -1), (-2, 7, 9, 8)], 'network_additional_tensors': [(1, 6, 4, -1), (-2, 7, 9, 8)], 'network_peps_tensors': [[(4, 3, 2, 8, -4), (6, 5, 2, 9, -3), (1, 7, 5, 3)]], 'tensors': [['tensor', 'tensor_conj', 'T3_phase'], 'projector_bottom_left', 'projector_bottom_right']}
- ctmrg_absorption_bottom_T3_large_d_phase_2: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_bottom_left', 'projector_bottom_right', 'structure_factor_gate'], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T3']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9, 10), 'ncon_flat_network': (5, 4, 2, 9, -4, 7, 6, 3, 10, -3, 1, 8, 6, 4, 1, 7, 5, -1, -2, 8, 10, 9, 2, 3), 'ncon_network': [(5, 4, 2, 9, -4), (7, 6, 3, 10, -3), (1, 8, 6, 4), (1, 7, 5, -1), (-2, 8, 10, 9), (2, 3)], 'ncon_out_order': (-1, -2, -3, -4), 'ncon_sizes': (5, 5, 4, 4, 4, 2), 'network': [[(5, 4, 2, 9, -4), (7, 6, 3, 10, -3), (1, 8, 6, 4)], (1, 7, 5, -1), (-2, 8, 10, 9), (2, 3)], 'network_additional_tensors': [(1, 7, 5, -1), (-2, 8, 10, 9), (2, 3)], 'network_peps_tensors': [[(5, 4, 2, 9, -4), (7, 6, 3, 10, -3), (1, 8, 6, 4)]], 'tensors': [['tensor', 'tensor_conj', 'T3'], 'projector_bottom_left', 'projector_bottom_right', 'structure_factor_gate']}
- ctmrg_absorption_left_C1: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_left_bottom'], 'filter_peps_tensors': [['C1', 'T1']], 'ncon_con_order': (1, 2, 3, 4), 'ncon_flat_network': (2, 1, 1, 3, 4, -2, -1, 2, 3, 4), 'ncon_network': [(2, 1), (1, 3, 4, -2), (-1, 2, 3, 4)], 'ncon_out_order': (-1, -2), 'ncon_sizes': (2, 4, 4), 'network': [[(2, 1), (1, 3, 4, -2)], (-1, 2, 3, 4)], 'network_additional_tensors': [(-1, 2, 3, 4)], 'network_peps_tensors': [[(2, 1), (1, 3, 4, -2)]], 'tensors': [['C1', 'T1'], 'projector_left_bottom']}
Contraction for C1 during left absorption.
- ctmrg_absorption_left_C1_phase_1: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_left_bottom'], 'filter_peps_tensors': [['C1_phase', 'T1']], 'ncon_con_order': (1, 2, 3, 4), 'ncon_flat_network': (2, 1, 1, 3, 4, -2, -1, 2, 3, 4), 'ncon_network': [(2, 1), (1, 3, 4, -2), (-1, 2, 3, 4)], 'ncon_out_order': (-1, -2), 'ncon_sizes': (2, 4, 4), 'network': [[(2, 1), (1, 3, 4, -2)], (-1, 2, 3, 4)], 'network_additional_tensors': [(-1, 2, 3, 4)], 'network_peps_tensors': [[(2, 1), (1, 3, 4, -2)]], 'tensors': [['C1_phase', 'T1'], 'projector_left_bottom']}
Contraction for C1 during left absorption. Here C1 is the tensor with structure factor phase included which is grown by a normal T1 tensor.
- ctmrg_absorption_left_C1_phase_2: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_left_bottom'], 'filter_peps_tensors': [['C1', 'T1_phase']], 'ncon_con_order': (1, 2, 3, 4), 'ncon_flat_network': (2, 1, 1, 3, 4, -2, -1, 2, 3, 4), 'ncon_network': [(2, 1), (1, 3, 4, -2), (-1, 2, 3, 4)], 'ncon_out_order': (-1, -2), 'ncon_sizes': (2, 4, 4), 'network': [[(2, 1), (1, 3, 4, -2)], (-1, 2, 3, 4)], 'network_additional_tensors': [(-1, 2, 3, 4)], 'network_peps_tensors': [[(2, 1), (1, 3, 4, -2)]], 'tensors': [['C1', 'T1_phase'], 'projector_left_bottom']}
Contraction for C1 during left absorption. Here C1 is the tensor with structure factor phase not included yet which is grown by a T1 tensor which includes a phase already.
- ctmrg_absorption_left_C4: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_left_top'], 'filter_peps_tensors': [['T3', 'C4']], 'ncon_con_order': (1, 2, 3, 4), 'ncon_flat_network': (1, -1, 4, 3, 1, 2, 2, 3, 4, -2), 'ncon_network': [(1, -1, 4, 3), (1, 2), (2, 3, 4, -2)], 'ncon_out_order': (-1, -2), 'ncon_sizes': (4, 2, 4), 'network': [[(1, -1, 4, 3), (1, 2)], (2, 3, 4, -2)], 'network_additional_tensors': [(2, 3, 4, -2)], 'network_peps_tensors': [[(1, -1, 4, 3), (1, 2)]], 'tensors': [['T3', 'C4'], 'projector_left_top']}
Contraction for C4 during left absorption.
- ctmrg_absorption_left_C4_phase_1: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_left_top'], 'filter_peps_tensors': [['T3', 'C4_phase']], 'ncon_con_order': (1, 2, 3, 4), 'ncon_flat_network': (1, -1, 4, 3, 1, 2, 2, 3, 4, -2), 'ncon_network': [(1, -1, 4, 3), (1, 2), (2, 3, 4, -2)], 'ncon_out_order': (-1, -2), 'ncon_sizes': (4, 2, 4), 'network': [[(1, -1, 4, 3), (1, 2)], (2, 3, 4, -2)], 'network_additional_tensors': [(2, 3, 4, -2)], 'network_peps_tensors': [[(1, -1, 4, 3), (1, 2)]], 'tensors': [['T3', 'C4_phase'], 'projector_left_top']}
Contraction for C4 during left absorption. Here C4 is the tensor with structure factor phase included which is grown by a normal T3 tensor.
- ctmrg_absorption_left_C4_phase_2: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_left_top'], 'filter_peps_tensors': [['T3_phase', 'C4']], 'ncon_con_order': (1, 2, 3, 4), 'ncon_flat_network': (1, -1, 4, 3, 1, 2, 2, 3, 4, -2), 'ncon_network': [(1, -1, 4, 3), (1, 2), (2, 3, 4, -2)], 'ncon_out_order': (-1, -2), 'ncon_sizes': (4, 2, 4), 'network': [[(1, -1, 4, 3), (1, 2)], (2, 3, 4, -2)], 'network_additional_tensors': [(2, 3, 4, -2)], 'network_peps_tensors': [[(1, -1, 4, 3), (1, 2)]], 'tensors': [['T3_phase', 'C4'], 'projector_left_top']}
Contraction for C4 during left absorption. Here C3 is the tensor with structure factor phase not included yet which is grown by a T3 tensor which includes a phase already.
- ctmrg_absorption_left_T4: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_left_top', 'projector_left_bottom'], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T4']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9), 'ncon_flat_network': (3, 8, 6, -3, 2, 4, 9, 6, -2, 5, 7, 4, 3, 1, 1, 2, 5, -4, -1, 7, 8, 9), 'ncon_network': [(3, 8, 6, -3, 2), (4, 9, 6, -2, 5), (7, 4, 3, 1), (1, 2, 5, -4), (-1, 7, 8, 9)], 'ncon_out_order': (-1, -2, -3, -4), 'ncon_sizes': (5, 5, 4, 4, 4), 'network': [[(3, 8, 6, -3, 2), (4, 9, 6, -2, 5), (7, 4, 3, 1)], (1, 2, 5, -4), (-1, 7, 8, 9)], 'network_additional_tensors': [(1, 2, 5, -4), (-1, 7, 8, 9)], 'network_peps_tensors': [[(3, 8, 6, -3, 2), (4, 9, 6, -2, 5), (7, 4, 3, 1)]], 'tensors': [['tensor', 'tensor_conj', 'T4'], 'projector_left_top', 'projector_left_bottom']}
Contraction for T4 during left absorption.
- ctmrg_absorption_left_T4_large_d: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_left_top', 'projector_left_bottom'], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T4']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9), 'ncon_flat_network': (4, 8, 2, -3, 3, 5, 9, 2, -2, 6, 7, 5, 4, 1, 1, 3, 6, -4, -1, 7, 8, 9), 'ncon_network': [(4, 8, 2, -3, 3), (5, 9, 2, -2, 6), (7, 5, 4, 1), (1, 3, 6, -4), (-1, 7, 8, 9)], 'ncon_out_order': (-1, -2, -3, -4), 'ncon_sizes': (5, 5, 4, 4, 4), 'network': [[(4, 8, 2, -3, 3), (5, 9, 2, -2, 6), (7, 5, 4, 1)], (1, 3, 6, -4), (-1, 7, 8, 9)], 'network_additional_tensors': [(1, 3, 6, -4), (-1, 7, 8, 9)], 'network_peps_tensors': [[(4, 8, 2, -3, 3), (5, 9, 2, -2, 6), (7, 5, 4, 1)]], 'tensors': [['tensor', 'tensor_conj', 'T4'], 'projector_left_top', 'projector_left_bottom']}
- ctmrg_absorption_left_T4_large_d_phase_1: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_left_top', 'projector_left_bottom'], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T4_phase']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9), 'ncon_flat_network': (4, 8, 2, -3, 3, 5, 9, 2, -2, 6, 7, 5, 4, 1, 1, 3, 6, -4, -1, 7, 8, 9), 'ncon_network': [(4, 8, 2, -3, 3), (5, 9, 2, -2, 6), (7, 5, 4, 1), (1, 3, 6, -4), (-1, 7, 8, 9)], 'ncon_out_order': (-1, -2, -3, -4), 'ncon_sizes': (5, 5, 4, 4, 4), 'network': [[(4, 8, 2, -3, 3), (5, 9, 2, -2, 6), (7, 5, 4, 1)], (1, 3, 6, -4), (-1, 7, 8, 9)], 'network_additional_tensors': [(1, 3, 6, -4), (-1, 7, 8, 9)], 'network_peps_tensors': [[(4, 8, 2, -3, 3), (5, 9, 2, -2, 6), (7, 5, 4, 1)]], 'tensors': [['tensor', 'tensor_conj', 'T4_phase'], 'projector_left_top', 'projector_left_bottom']}
- ctmrg_absorption_left_T4_large_d_phase_2: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_left_top', 'projector_left_bottom', 'structure_factor_gate'], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T4']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9, 10), 'ncon_flat_network': (5, 9, 2, -3, 4, 6, 10, 3, -2, 7, 8, 6, 5, 1, 1, 4, 7, -4, -1, 8, 9, 10, 2, 3), 'ncon_network': [(5, 9, 2, -3, 4), (6, 10, 3, -2, 7), (8, 6, 5, 1), (1, 4, 7, -4), (-1, 8, 9, 10), (2, 3)], 'ncon_out_order': (-1, -2, -3, -4), 'ncon_sizes': (5, 5, 4, 4, 4, 2), 'network': [[(5, 9, 2, -3, 4), (6, 10, 3, -2, 7), (8, 6, 5, 1)], (1, 4, 7, -4), (-1, 8, 9, 10), (2, 3)], 'network_additional_tensors': [(1, 4, 7, -4), (-1, 8, 9, 10), (2, 3)], 'network_peps_tensors': [[(5, 9, 2, -3, 4), (6, 10, 3, -2, 7), (8, 6, 5, 1)]], 'tensors': [['tensor', 'tensor_conj', 'T4'], 'projector_left_top', 'projector_left_bottom', 'structure_factor_gate']}
- ctmrg_absorption_right_C2: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_right_bottom'], 'filter_peps_tensors': [['T1', 'C2']], 'ncon_con_order': (1, 2, 3, 4), 'ncon_flat_network': (-1, 3, 4, 1, 1, 2, 2, 4, 3, -2), 'ncon_network': [(-1, 3, 4, 1), (1, 2), (2, 4, 3, -2)], 'ncon_out_order': (-1, -2), 'ncon_sizes': (4, 2, 4), 'network': [[(-1, 3, 4, 1), (1, 2)], (2, 4, 3, -2)], 'network_additional_tensors': [(2, 4, 3, -2)], 'network_peps_tensors': [[(-1, 3, 4, 1), (1, 2)]], 'tensors': [['T1', 'C2'], 'projector_right_bottom']}
Contraction for C2 during right absorption.
- ctmrg_absorption_right_C2_phase_1: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_right_bottom'], 'filter_peps_tensors': [['T1', 'C2_phase']], 'ncon_con_order': (1, 2, 3, 4), 'ncon_flat_network': (-1, 3, 4, 1, 1, 2, 2, 4, 3, -2), 'ncon_network': [(-1, 3, 4, 1), (1, 2), (2, 4, 3, -2)], 'ncon_out_order': (-1, -2), 'ncon_sizes': (4, 2, 4), 'network': [[(-1, 3, 4, 1), (1, 2)], (2, 4, 3, -2)], 'network_additional_tensors': [(2, 4, 3, -2)], 'network_peps_tensors': [[(-1, 3, 4, 1), (1, 2)]], 'tensors': [['T1', 'C2_phase'], 'projector_right_bottom']}
Contraction for C2 during right absorption. Here C2 is the tensor with structure factor phase included which is grown by a normal T1 tensor.
- ctmrg_absorption_right_C2_phase_2: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_right_bottom'], 'filter_peps_tensors': [['T1_phase', 'C2']], 'ncon_con_order': (1, 2, 3, 4), 'ncon_flat_network': (-1, 3, 4, 1, 1, 2, 2, 4, 3, -2), 'ncon_network': [(-1, 3, 4, 1), (1, 2), (2, 4, 3, -2)], 'ncon_out_order': (-1, -2), 'ncon_sizes': (4, 2, 4), 'network': [[(-1, 3, 4, 1), (1, 2)], (2, 4, 3, -2)], 'network_additional_tensors': [(2, 4, 3, -2)], 'network_peps_tensors': [[(-1, 3, 4, 1), (1, 2)]], 'tensors': [['T1_phase', 'C2'], 'projector_right_bottom']}
Contraction for C2 during right absorption. Here C2 is the tensor with structure factor phase not included yet which is grown by a T1 tensor which includes a phase already.
- ctmrg_absorption_right_C3: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_right_top'], 'filter_peps_tensors': [['C3', 'T3']], 'ncon_con_order': (1, 2, 3, 4), 'ncon_flat_network': (1, 2, -1, 1, 4, 3, -2, 2, 4, 3), 'ncon_network': [(1, 2), (-1, 1, 4, 3), (-2, 2, 4, 3)], 'ncon_out_order': (-1, -2), 'ncon_sizes': (2, 4, 4), 'network': [[(1, 2), (-1, 1, 4, 3)], (-2, 2, 4, 3)], 'network_additional_tensors': [(-2, 2, 4, 3)], 'network_peps_tensors': [[(1, 2), (-1, 1, 4, 3)]], 'tensors': [['C3', 'T3'], 'projector_right_top']}
Contraction for C3 during right absorption.
- ctmrg_absorption_right_C3_phase_1: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_right_top'], 'filter_peps_tensors': [['C3_phase', 'T3']], 'ncon_con_order': (1, 2, 3, 4), 'ncon_flat_network': (1, 2, -1, 1, 4, 3, -2, 2, 4, 3), 'ncon_network': [(1, 2), (-1, 1, 4, 3), (-2, 2, 4, 3)], 'ncon_out_order': (-1, -2), 'ncon_sizes': (2, 4, 4), 'network': [[(1, 2), (-1, 1, 4, 3)], (-2, 2, 4, 3)], 'network_additional_tensors': [(-2, 2, 4, 3)], 'network_peps_tensors': [[(1, 2), (-1, 1, 4, 3)]], 'tensors': [['C3_phase', 'T3'], 'projector_right_top']}
Contraction for C3 during right absorption. Here C3 is the tensor with structure factor phase included which is grown by a normal T3 tensor.
- ctmrg_absorption_right_C3_phase_2: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_right_top'], 'filter_peps_tensors': [['C3', 'T3_phase']], 'ncon_con_order': (1, 2, 3, 4), 'ncon_flat_network': (1, 2, -1, 1, 4, 3, -2, 2, 4, 3), 'ncon_network': [(1, 2), (-1, 1, 4, 3), (-2, 2, 4, 3)], 'ncon_out_order': (-1, -2), 'ncon_sizes': (2, 4, 4), 'network': [[(1, 2), (-1, 1, 4, 3)], (-2, 2, 4, 3)], 'network_additional_tensors': [(-2, 2, 4, 3)], 'network_peps_tensors': [[(1, 2), (-1, 1, 4, 3)]], 'tensors': [['C3', 'T3_phase'], 'projector_right_top']}
Contraction for C3 during right absorption. Here C3 is the tensor with structure factor phase not included yet which is grown by a T3 tensor which includes a phase already.
- ctmrg_absorption_right_T2: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_right_top', 'projector_right_bottom'], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T2']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9), 'ncon_flat_network': (-1, 8, 6, 3, 2, -2, 9, 6, 5, 4, 3, 5, 7, 1, -4, 1, 4, 2, 7, 9, 8, -3), 'ncon_network': [(-1, 8, 6, 3, 2), (-2, 9, 6, 5, 4), (3, 5, 7, 1), (-4, 1, 4, 2), (7, 9, 8, -3)], 'ncon_out_order': (-1, -2, -3, -4), 'ncon_sizes': (5, 5, 4, 4, 4), 'network': [[(-1, 8, 6, 3, 2), (-2, 9, 6, 5, 4), (3, 5, 7, 1)], (-4, 1, 4, 2), (7, 9, 8, -3)], 'network_additional_tensors': [(-4, 1, 4, 2), (7, 9, 8, -3)], 'network_peps_tensors': [[(-1, 8, 6, 3, 2), (-2, 9, 6, 5, 4), (3, 5, 7, 1)]], 'tensors': [['tensor', 'tensor_conj', 'T2'], 'projector_right_top', 'projector_right_bottom']}
Contraction for T2 during right absorption.
- ctmrg_absorption_right_T2_large_d: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_right_top', 'projector_right_bottom'], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T2']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9), 'ncon_flat_network': (-1, 8, 2, 4, 3, -2, 9, 2, 6, 5, 4, 6, 7, 1, -4, 1, 5, 3, 7, 9, 8, -3), 'ncon_network': [(-1, 8, 2, 4, 3), (-2, 9, 2, 6, 5), (4, 6, 7, 1), (-4, 1, 5, 3), (7, 9, 8, -3)], 'ncon_out_order': (-1, -2, -3, -4), 'ncon_sizes': (5, 5, 4, 4, 4), 'network': [[(-1, 8, 2, 4, 3), (-2, 9, 2, 6, 5), (4, 6, 7, 1)], (-4, 1, 5, 3), (7, 9, 8, -3)], 'network_additional_tensors': [(-4, 1, 5, 3), (7, 9, 8, -3)], 'network_peps_tensors': [[(-1, 8, 2, 4, 3), (-2, 9, 2, 6, 5), (4, 6, 7, 1)]], 'tensors': [['tensor', 'tensor_conj', 'T2'], 'projector_right_top', 'projector_right_bottom']}
- ctmrg_absorption_right_T2_large_d_phase_1: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_right_top', 'projector_right_bottom'], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T2_phase']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9), 'ncon_flat_network': (-1, 8, 2, 4, 3, -2, 9, 2, 6, 5, 4, 6, 7, 1, -4, 1, 5, 3, 7, 9, 8, -3), 'ncon_network': [(-1, 8, 2, 4, 3), (-2, 9, 2, 6, 5), (4, 6, 7, 1), (-4, 1, 5, 3), (7, 9, 8, -3)], 'ncon_out_order': (-1, -2, -3, -4), 'ncon_sizes': (5, 5, 4, 4, 4), 'network': [[(-1, 8, 2, 4, 3), (-2, 9, 2, 6, 5), (4, 6, 7, 1)], (-4, 1, 5, 3), (7, 9, 8, -3)], 'network_additional_tensors': [(-4, 1, 5, 3), (7, 9, 8, -3)], 'network_peps_tensors': [[(-1, 8, 2, 4, 3), (-2, 9, 2, 6, 5), (4, 6, 7, 1)]], 'tensors': [['tensor', 'tensor_conj', 'T2_phase'], 'projector_right_top', 'projector_right_bottom']}
- ctmrg_absorption_right_T2_large_d_phase_2: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_right_top', 'projector_right_bottom', 'structure_factor_gate'], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T2']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9, 10), 'ncon_flat_network': (-1, 9, 2, 5, 4, -2, 10, 3, 7, 6, 5, 7, 8, 1, -4, 1, 6, 4, 8, 10, 9, -3, 2, 3), 'ncon_network': [(-1, 9, 2, 5, 4), (-2, 10, 3, 7, 6), (5, 7, 8, 1), (-4, 1, 6, 4), (8, 10, 9, -3), (2, 3)], 'ncon_out_order': (-1, -2, -3, -4), 'ncon_sizes': (5, 5, 4, 4, 4, 2), 'network': [[(-1, 9, 2, 5, 4), (-2, 10, 3, 7, 6), (5, 7, 8, 1)], (-4, 1, 6, 4), (8, 10, 9, -3), (2, 3)], 'network_additional_tensors': [(-4, 1, 6, 4), (8, 10, 9, -3), (2, 3)], 'network_peps_tensors': [[(-1, 9, 2, 5, 4), (-2, 10, 3, 7, 6), (5, 7, 8, 1)]], 'tensors': [['tensor', 'tensor_conj', 'T2'], 'projector_right_top', 'projector_right_bottom', 'structure_factor_gate']}
- ctmrg_absorption_top_C1: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_top_right'], 'filter_peps_tensors': [['T4', 'C1']], 'ncon_con_order': (1, 2, 3, 4), 'ncon_flat_network': (-1, 4, 3, 1, 1, 2, 2, 3, 4, -2), 'ncon_network': [(-1, 4, 3, 1), (1, 2), (2, 3, 4, -2)], 'ncon_out_order': (-1, -2), 'ncon_sizes': (4, 2, 4), 'network': [[(-1, 4, 3, 1), (1, 2)], (2, 3, 4, -2)], 'network_additional_tensors': [(2, 3, 4, -2)], 'network_peps_tensors': [[(-1, 4, 3, 1), (1, 2)]], 'tensors': [['T4', 'C1'], 'projector_top_right']}
Contraction for C1 during top absorption.
- ctmrg_absorption_top_C1_phase_1: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_top_right'], 'filter_peps_tensors': [['T4', 'C1_phase']], 'ncon_con_order': (1, 2, 3, 4), 'ncon_flat_network': (-1, 4, 3, 1, 1, 2, 2, 3, 4, -2), 'ncon_network': [(-1, 4, 3, 1), (1, 2), (2, 3, 4, -2)], 'ncon_out_order': (-1, -2), 'ncon_sizes': (4, 2, 4), 'network': [[(-1, 4, 3, 1), (1, 2)], (2, 3, 4, -2)], 'network_additional_tensors': [(2, 3, 4, -2)], 'network_peps_tensors': [[(-1, 4, 3, 1), (1, 2)]], 'tensors': [['T4', 'C1_phase'], 'projector_top_right']}
Contraction for C1 during top absorption. Here C1 is the tensor with structure factor phase included which is grown by a normal T4 tensor.
- ctmrg_absorption_top_C1_phase_2: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_top_right'], 'filter_peps_tensors': [['T4_phase', 'C1']], 'ncon_con_order': (1, 2, 3, 4), 'ncon_flat_network': (-1, 4, 3, 1, 1, 2, 2, 3, 4, -2), 'ncon_network': [(-1, 4, 3, 1), (1, 2), (2, 3, 4, -2)], 'ncon_out_order': (-1, -2), 'ncon_sizes': (4, 2, 4), 'network': [[(-1, 4, 3, 1), (1, 2)], (2, 3, 4, -2)], 'network_additional_tensors': [(2, 3, 4, -2)], 'network_peps_tensors': [[(-1, 4, 3, 1), (1, 2)]], 'tensors': [['T4_phase', 'C1'], 'projector_top_right']}
Contraction for C1 during top absorption. Here C1 is the tensor with structure factor phase not included yet which is grown by a T4 tensor which includes a phase already.
- ctmrg_absorption_top_C2: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_top_left'], 'filter_peps_tensors': [['C2', 'T2']], 'ncon_con_order': (1, 2, 3, 4), 'ncon_flat_network': (2, 1, 3, 4, -2, 1, -1, 2, 3, 4), 'ncon_network': [(2, 1), (3, 4, -2, 1), (-1, 2, 3, 4)], 'ncon_out_order': (-1, -2), 'ncon_sizes': (2, 4, 4), 'network': [[(2, 1), (3, 4, -2, 1)], (-1, 2, 3, 4)], 'network_additional_tensors': [(-1, 2, 3, 4)], 'network_peps_tensors': [[(2, 1), (3, 4, -2, 1)]], 'tensors': [['C2', 'T2'], 'projector_top_left']}
Contraction for C2 during top absorption.
- ctmrg_absorption_top_C2_phase_1: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_top_left'], 'filter_peps_tensors': [['C2_phase', 'T2']], 'ncon_con_order': (1, 2, 3, 4), 'ncon_flat_network': (2, 1, 3, 4, -2, 1, -1, 2, 3, 4), 'ncon_network': [(2, 1), (3, 4, -2, 1), (-1, 2, 3, 4)], 'ncon_out_order': (-1, -2), 'ncon_sizes': (2, 4, 4), 'network': [[(2, 1), (3, 4, -2, 1)], (-1, 2, 3, 4)], 'network_additional_tensors': [(-1, 2, 3, 4)], 'network_peps_tensors': [[(2, 1), (3, 4, -2, 1)]], 'tensors': [['C2_phase', 'T2'], 'projector_top_left']}
Contraction for C2 during top absorption. Here C2 is the tensor with structure factor phase included which is grown by a normal T2 tensor.
- ctmrg_absorption_top_C2_phase_2: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_top_left'], 'filter_peps_tensors': [['C2', 'T2_phase']], 'ncon_con_order': (1, 2, 3, 4), 'ncon_flat_network': (2, 1, 3, 4, -2, 1, -1, 2, 3, 4), 'ncon_network': [(2, 1), (3, 4, -2, 1), (-1, 2, 3, 4)], 'ncon_out_order': (-1, -2), 'ncon_sizes': (2, 4, 4), 'network': [[(2, 1), (3, 4, -2, 1)], (-1, 2, 3, 4)], 'network_additional_tensors': [(-1, 2, 3, 4)], 'network_peps_tensors': [[(2, 1), (3, 4, -2, 1)]], 'tensors': [['C2', 'T2_phase'], 'projector_top_left']}
Contraction for C2 during top absorption. Here C2 is the tensor with structure factor phase not included yet which is grown by a T2 tensor which includes a phase already.
- ctmrg_absorption_top_T1: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_top_left', 'projector_top_right'], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T1']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9), 'ncon_flat_network': (3, -2, 6, 8, 2, 5, -3, 6, 9, 4, 1, 2, 4, 7, -1, 1, 3, 5, 7, 8, 9, -4), 'ncon_network': [(3, -2, 6, 8, 2), (5, -3, 6, 9, 4), (1, 2, 4, 7), (-1, 1, 3, 5), (7, 8, 9, -4)], 'ncon_out_order': (-1, -2, -3, -4), 'ncon_sizes': (5, 5, 4, 4, 4), 'network': [[(3, -2, 6, 8, 2), (5, -3, 6, 9, 4), (1, 2, 4, 7)], (-1, 1, 3, 5), (7, 8, 9, -4)], 'network_additional_tensors': [(-1, 1, 3, 5), (7, 8, 9, -4)], 'network_peps_tensors': [[(3, -2, 6, 8, 2), (5, -3, 6, 9, 4), (1, 2, 4, 7)]], 'tensors': [['tensor', 'tensor_conj', 'T1'], 'projector_top_left', 'projector_top_right']}
Contraction for T1 during top absorption.
- ctmrg_absorption_top_T1_large_d: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_top_left', 'projector_top_right'], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T1']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9), 'ncon_flat_network': (4, -2, 2, 8, 3, 6, -3, 2, 9, 5, 1, 3, 5, 7, -1, 1, 4, 6, 7, 8, 9, -4), 'ncon_network': [(4, -2, 2, 8, 3), (6, -3, 2, 9, 5), (1, 3, 5, 7), (-1, 1, 4, 6), (7, 8, 9, -4)], 'ncon_out_order': (-1, -2, -3, -4), 'ncon_sizes': (5, 5, 4, 4, 4), 'network': [[(4, -2, 2, 8, 3), (6, -3, 2, 9, 5), (1, 3, 5, 7)], (-1, 1, 4, 6), (7, 8, 9, -4)], 'network_additional_tensors': [(-1, 1, 4, 6), (7, 8, 9, -4)], 'network_peps_tensors': [[(4, -2, 2, 8, 3), (6, -3, 2, 9, 5), (1, 3, 5, 7)]], 'tensors': [['tensor', 'tensor_conj', 'T1'], 'projector_top_left', 'projector_top_right']}
- ctmrg_absorption_top_T1_large_d_phase_1: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_top_left', 'projector_top_right'], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T1_phase']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9), 'ncon_flat_network': (4, -2, 2, 8, 3, 6, -3, 2, 9, 5, 1, 3, 5, 7, -1, 1, 4, 6, 7, 8, 9, -4), 'ncon_network': [(4, -2, 2, 8, 3), (6, -3, 2, 9, 5), (1, 3, 5, 7), (-1, 1, 4, 6), (7, 8, 9, -4)], 'ncon_out_order': (-1, -2, -3, -4), 'ncon_sizes': (5, 5, 4, 4, 4), 'network': [[(4, -2, 2, 8, 3), (6, -3, 2, 9, 5), (1, 3, 5, 7)], (-1, 1, 4, 6), (7, 8, 9, -4)], 'network_additional_tensors': [(-1, 1, 4, 6), (7, 8, 9, -4)], 'network_peps_tensors': [[(4, -2, 2, 8, 3), (6, -3, 2, 9, 5), (1, 3, 5, 7)]], 'tensors': [['tensor', 'tensor_conj', 'T1_phase'], 'projector_top_left', 'projector_top_right']}
- ctmrg_absorption_top_T1_large_d_phase_2: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['projector_top_left', 'projector_top_right', 'structure_factor_gate'], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T1']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9, 10), 'ncon_flat_network': (5, -2, 2, 9, 4, 7, -3, 3, 10, 6, 1, 4, 6, 8, -1, 1, 5, 7, 8, 9, 10, -4, 2, 3), 'ncon_network': [(5, -2, 2, 9, 4), (7, -3, 3, 10, 6), (1, 4, 6, 8), (-1, 1, 5, 7), (8, 9, 10, -4), (2, 3)], 'ncon_out_order': (-1, -2, -3, -4), 'ncon_sizes': (5, 5, 4, 4, 4, 2), 'network': [[(5, -2, 2, 9, 4), (7, -3, 3, 10, 6), (1, 4, 6, 8)], (-1, 1, 5, 7), (8, 9, 10, -4), (2, 3)], 'network_additional_tensors': [(-1, 1, 5, 7), (8, 9, 10, -4), (2, 3)], 'network_peps_tensors': [[(5, -2, 2, 9, 4), (7, -3, 3, 10, 6), (1, 4, 6, 8)]], 'tensors': [['tensor', 'tensor_conj', 'T1'], 'projector_top_left', 'projector_top_right', 'structure_factor_gate']}
- ctmrg_bottom_left: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T3', 'C4', 'T4']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7), 'ncon_flat_network': (3, 4, 7, -3, -5, 5, 6, 7, -2, -6, 2, -1, 6, 4, 2, 1, 1, 5, 3, -4), 'ncon_network': [(3, 4, 7, -3, -5), (5, 6, 7, -2, -6), (2, -1, 6, 4), (2, 1), (1, 5, 3, -4)], 'ncon_out_order': (-1, -2, -3, -4, -5, -6), 'ncon_sizes': (5, 5, 4, 2, 4), 'network': [[(3, 4, 7, -3, -5), (5, 6, 7, -2, -6), (2, -1, 6, 4), (2, 1), (1, 5, 3, -4)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(3, 4, 7, -3, -5), (5, 6, 7, -2, -6), (2, -1, 6, 4), (2, 1), (1, 5, 3, -4)]], 'tensors': [['tensor', 'tensor_conj', 'T3', 'C4', 'T4']]}
Contraction for bottom left CTM corner.
- ctmrg_bottom_left_large_d: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T3', 'C4', 'T4']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7), 'ncon_flat_network': (4, 5, 3, -3, -5, 6, 7, 3, -2, -6, 2, -1, 7, 5, 2, 1, 1, 6, 4, -4), 'ncon_network': [(4, 5, 3, -3, -5), (6, 7, 3, -2, -6), (2, -1, 7, 5), (2, 1), (1, 6, 4, -4)], 'ncon_out_order': (-1, -2, -3, -4, -5, -6), 'ncon_sizes': (5, 5, 4, 2, 4), 'network': [[(4, 5, 3, -3, -5), (6, 7, 3, -2, -6), (2, -1, 7, 5), (2, 1), (1, 6, 4, -4)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(4, 5, 3, -3, -5), (6, 7, 3, -2, -6), (2, -1, 7, 5), (2, 1), (1, 6, 4, -4)]], 'tensors': [['tensor', 'tensor_conj', 'T3', 'C4', 'T4']]}
Contraction for bottom left CTM corner for high physical dimensions.
- ctmrg_bottom_right: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T2', 'T3', 'C3']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7), 'ncon_flat_network': (-6, 3, 7, 4, -3, -5, 5, 7, 6, -2, 4, 6, 2, -1, -4, 1, 5, 3, 1, 2), 'ncon_network': [(-6, 3, 7, 4, -3), (-5, 5, 7, 6, -2), (4, 6, 2, -1), (-4, 1, 5, 3), (1, 2)], 'ncon_out_order': (-1, -2, -3, -4, -5, -6), 'ncon_sizes': (5, 5, 4, 4, 2), 'network': [[(-6, 3, 7, 4, -3), (-5, 5, 7, 6, -2), (4, 6, 2, -1), (-4, 1, 5, 3), (1, 2)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(-6, 3, 7, 4, -3), (-5, 5, 7, 6, -2), (4, 6, 2, -1), (-4, 1, 5, 3), (1, 2)]], 'tensors': [['tensor', 'tensor_conj', 'T2', 'T3', 'C3']]}
Contraction for bottom right CTM corner.
- ctmrg_bottom_right_large_d: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T2', 'T3', 'C3']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7), 'ncon_flat_network': (-6, 4, 3, 5, -3, -5, 6, 3, 7, -2, 5, 7, 2, -1, -4, 1, 6, 4, 1, 2), 'ncon_network': [(-6, 4, 3, 5, -3), (-5, 6, 3, 7, -2), (5, 7, 2, -1), (-4, 1, 6, 4), (1, 2)], 'ncon_out_order': (-1, -2, -3, -4, -5, -6), 'ncon_sizes': (5, 5, 4, 4, 2), 'network': [[(-6, 4, 3, 5, -3), (-5, 6, 3, 7, -2), (5, 7, 2, -1), (-4, 1, 6, 4), (1, 2)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(-6, 4, 3, 5, -3), (-5, 6, 3, 7, -2), (5, 7, 2, -1), (-4, 1, 6, 4), (1, 2)]], 'tensors': [['tensor', 'tensor_conj', 'T2', 'T3', 'C3']]}
Contraction for bottom right CTM corner for high physical dimensions.
- ctmrg_gauge_fix_C2: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['left_unitary', 'bottom_unitary'], 'filter_peps_tensors': [['C2']], 'ncon_con_order': (1, 2), 'ncon_flat_network': (1, 2, -1, 1, -2, 2), 'ncon_network': [(1, 2), (-1, 1), (-2, 2)], 'ncon_out_order': (-1, -2), 'ncon_sizes': (2, 2, 2), 'network': [[(1, 2)], (-1, 1), (-2, 2)], 'network_additional_tensors': [(-1, 1), (-2, 2)], 'network_peps_tensors': [[(1, 2)]], 'tensors': [['C2'], 'left_unitary', 'bottom_unitary']}
- ctmrg_gauge_fix_C4: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['top_unitary', 'right_unitary'], 'filter_peps_tensors': [['C4']], 'ncon_con_order': (1, 2), 'ncon_flat_network': (1, 2, 2, -2, 1, -1), 'ncon_network': [(1, 2), (2, -2), (1, -1)], 'ncon_out_order': (-1, -2), 'ncon_sizes': (2, 2, 2), 'network': [[(1, 2)], (2, -2), (1, -1)], 'network_additional_tensors': [(2, -2), (1, -1)], 'network_peps_tensors': [[(1, 2)]], 'tensors': [['C4'], 'top_unitary', 'right_unitary']}
- ctmrg_gauge_fix_T1: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['left_unitary', 'right_unitary'], 'filter_peps_tensors': [['T1']], 'ncon_con_order': (1, 2), 'ncon_flat_network': (1, -2, -3, 2, -1, 1, -4, 2), 'ncon_network': [(1, -2, -3, 2), (-1, 1), (-4, 2)], 'ncon_out_order': (-1, -2, -3, -4), 'ncon_sizes': (4, 2, 2), 'network': [[(1, -2, -3, 2)], (-1, 1), (-4, 2)], 'network_additional_tensors': [(-1, 1), (-4, 2)], 'network_peps_tensors': [[(1, -2, -3, 2)]], 'tensors': [['T1'], 'left_unitary', 'right_unitary']}
- ctmrg_gauge_fix_T2: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['top_unitary', 'bottom_unitary'], 'filter_peps_tensors': [['T2']], 'ncon_con_order': (1, 2), 'ncon_flat_network': (-1, -2, 1, 2, -4, 2, -3, 1), 'ncon_network': [(-1, -2, 1, 2), (-4, 2), (-3, 1)], 'ncon_out_order': (-1, -2, -3, -4), 'ncon_sizes': (4, 2, 2), 'network': [[(-1, -2, 1, 2)], (-4, 2), (-3, 1)], 'network_additional_tensors': [(-4, 2), (-3, 1)], 'network_peps_tensors': [[(-1, -2, 1, 2)]], 'tensors': [['T2'], 'top_unitary', 'bottom_unitary']}
- ctmrg_gauge_fix_T3: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['left_unitary', 'right_unitary'], 'filter_peps_tensors': [['T3']], 'ncon_con_order': (1, 2), 'ncon_flat_network': (1, 2, -3, -4, 1, -1, 2, -2), 'ncon_network': [(1, 2, -3, -4), (1, -1), (2, -2)], 'ncon_out_order': (-1, -2, -3, -4), 'ncon_sizes': (4, 2, 2), 'network': [[(1, 2, -3, -4)], (1, -1), (2, -2)], 'network_additional_tensors': [(1, -1), (2, -2)], 'network_peps_tensors': [[(1, 2, -3, -4)]], 'tensors': [['T3'], 'left_unitary', 'right_unitary']}
- ctmrg_gauge_fix_T4: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['top_unitary', 'bottom_unitary'], 'filter_peps_tensors': [['T4']], 'ncon_con_order': (1, 2), 'ncon_flat_network': (1, -2, -3, 2, 2, -4, 1, -1), 'ncon_network': [(1, -2, -3, 2), (2, -4), (1, -1)], 'ncon_out_order': (-1, -2, -3, -4), 'ncon_sizes': (4, 2, 2), 'network': [[(1, -2, -3, 2)], (2, -4), (1, -1)], 'network_additional_tensors': [(2, -4), (1, -1)], 'network_peps_tensors': [[(1, -2, -3, 2)]], 'tensors': [['T4'], 'top_unitary', 'bottom_unitary']}
- ctmrg_top_left: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T4', 'C1', 'T1']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7), 'ncon_flat_network': (3, -2, 7, -5, 4, 5, -3, 7, -6, 6, -1, 5, 3, 1, 1, 2, 2, 4, 6, -4), 'ncon_network': [(3, -2, 7, -5, 4), (5, -3, 7, -6, 6), (-1, 5, 3, 1), (1, 2), (2, 4, 6, -4)], 'ncon_out_order': (-1, -2, -3, -4, -5, -6), 'ncon_sizes': (5, 5, 4, 2, 4), 'network': [[(3, -2, 7, -5, 4), (5, -3, 7, -6, 6), (-1, 5, 3, 1), (1, 2), (2, 4, 6, -4)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(3, -2, 7, -5, 4), (5, -3, 7, -6, 6), (-1, 5, 3, 1), (1, 2), (2, 4, 6, -4)]], 'tensors': [['tensor', 'tensor_conj', 'T4', 'C1', 'T1']]}
Contraction for top left CTM corner.
- ctmrg_top_left_large_d = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T4', 'C1', 'T1']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7), 'ncon_flat_network': (4, -2, 3, -5, 5, 6, -3, 3, -6, 7, -1, 6, 4, 1, 1, 2, 2, 5, 7, -4), 'ncon_network': [(4, -2, 3, -5, 5), (6, -3, 3, -6, 7), (-1, 6, 4, 1), (1, 2), (2, 5, 7, -4)], 'ncon_out_order': (-1, -2, -3, -4, -5, -6), 'ncon_sizes': (5, 5, 4, 2, 4), 'network': [[(4, -2, 3, -5, 5), (6, -3, 3, -6, 7), (-1, 6, 4, 1), (1, 2), (2, 5, 7, -4)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(4, -2, 3, -5, 5), (6, -3, 3, -6, 7), (-1, 6, 4, 1), (1, 2), (2, 5, 7, -4)]], 'tensors': [['tensor', 'tensor_conj', 'T4', 'C1', 'T1']]}
Contraction for top left CTM corner for high physical dimensions.
- ctmrg_top_right: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T1', 'C2', 'T2']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7), 'ncon_flat_network': (-2, -6, 7, 4, 3, -3, -5, 7, 6, 5, -1, 3, 5, 1, 1, 2, 4, 6, -4, 2), 'ncon_network': [(-2, -6, 7, 4, 3), (-3, -5, 7, 6, 5), (-1, 3, 5, 1), (1, 2), (4, 6, -4, 2)], 'ncon_out_order': (-1, -2, -3, -4, -5, -6), 'ncon_sizes': (5, 5, 4, 2, 4), 'network': [[(-2, -6, 7, 4, 3), (-3, -5, 7, 6, 5), (-1, 3, 5, 1), (1, 2), (4, 6, -4, 2)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(-2, -6, 7, 4, 3), (-3, -5, 7, 6, 5), (-1, 3, 5, 1), (1, 2), (4, 6, -4, 2)]], 'tensors': [['tensor', 'tensor_conj', 'T1', 'C2', 'T2']]}
Contraction for top right CTM corner.
- ctmrg_top_right_large_d: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T1', 'C2', 'T2']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7), 'ncon_flat_network': (-2, -6, 3, 5, 4, -3, -5, 3, 7, 6, -1, 4, 6, 1, 1, 2, 5, 7, -4, 2), 'ncon_network': [(-2, -6, 3, 5, 4), (-3, -5, 3, 7, 6), (-1, 4, 6, 1), (1, 2), (5, 7, -4, 2)], 'ncon_out_order': (-1, -2, -3, -4, -5, -6), 'ncon_sizes': (5, 5, 4, 2, 4), 'network': [[(-2, -6, 3, 5, 4), (-3, -5, 3, 7, 6), (-1, 4, 6, 1), (1, 2), (5, 7, -4, 2)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(-2, -6, 3, 5, 4), (-3, -5, 3, 7, 6), (-1, 4, 6, 1), (1, 2), (5, 7, -4, 2)]], 'tensors': [['tensor', 'tensor_conj', 'T1', 'C2', 'T2']]}
Contraction for top right CTM corner for high physical dimensions.
- density_matrix_four_sites_bottom_left: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T3', 'C4', 'T4']], 'ncon_con_order': (1, 2, 3, 4, 5, 6), 'ncon_flat_network': (3, 4, -1, -5, -7, 5, 6, -2, -4, -8, 2, -3, 6, 4, 2, 1, 1, 5, 3, -6), 'ncon_network': [(3, 4, -1, -5, -7), (5, 6, -2, -4, -8), (2, -3, 6, 4), (2, 1), (1, 5, 3, -6)], 'ncon_out_order': (-1, -2, -3, -4, -5, -6, -7, -8), 'ncon_sizes': (5, 5, 4, 2, 4), 'network': [[(3, 4, -1, -5, -7), (5, 6, -2, -4, -8), (2, -3, 6, 4), (2, 1), (1, 5, 3, -6)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(3, 4, -1, -5, -7), (5, 6, -2, -4, -8), (2, -3, 6, 4), (2, 1), (1, 5, 3, -6)]], 'tensors': [['tensor', 'tensor_conj', 'T3', 'C4', 'T4']]}
- density_matrix_four_sites_bottom_right: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T2', 'T3', 'C3']], 'ncon_con_order': (1, 2, 3, 4, 5, 6), 'ncon_flat_network': (-8, 3, -1, 4, -5, -7, 5, -2, 6, -4, 4, 6, 2, -3, -6, 1, 5, 3, 1, 2), 'ncon_network': [(-8, 3, -1, 4, -5), (-7, 5, -2, 6, -4), (4, 6, 2, -3), (-6, 1, 5, 3), (1, 2)], 'ncon_out_order': (-1, -2, -3, -4, -5, -6, -7, -8), 'ncon_sizes': (5, 5, 4, 4, 2), 'network': [[(-8, 3, -1, 4, -5), (-7, 5, -2, 6, -4), (4, 6, 2, -3), (-6, 1, 5, 3), (1, 2)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(-8, 3, -1, 4, -5), (-7, 5, -2, 6, -4), (4, 6, 2, -3), (-6, 1, 5, 3), (1, 2)]], 'tensors': [['tensor', 'tensor_conj', 'T2', 'T3', 'C3']]}
- density_matrix_four_sites_top_left: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T4', 'C1', 'T1']], 'ncon_con_order': (1, 2, 3, 4, 5, 6), 'ncon_flat_network': (3, -4, -1, -7, 4, 5, -5, -2, -8, 6, -3, 5, 3, 1, 1, 2, 2, 4, 6, -6), 'ncon_network': [(3, -4, -1, -7, 4), (5, -5, -2, -8, 6), (-3, 5, 3, 1), (1, 2), (2, 4, 6, -6)], 'ncon_out_order': (-1, -2, -3, -4, -5, -6, -7, -8), 'ncon_sizes': (5, 5, 4, 2, 4), 'network': [[(3, -4, -1, -7, 4), (5, -5, -2, -8, 6), (-3, 5, 3, 1), (1, 2), (2, 4, 6, -6)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(3, -4, -1, -7, 4), (5, -5, -2, -8, 6), (-3, 5, 3, 1), (1, 2), (2, 4, 6, -6)]], 'tensors': [['tensor', 'tensor_conj', 'T4', 'C1', 'T1']]}
- density_matrix_four_sites_top_right: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T1', 'C2', 'T2']], 'ncon_con_order': (1, 2, 3, 4, 5, 6), 'ncon_flat_network': (-4, -8, -1, 4, 3, -5, -7, -2, 6, 5, -3, 3, 5, 1, 1, 2, 4, 6, -6, 2), 'ncon_network': [(-4, -8, -1, 4, 3), (-5, -7, -2, 6, 5), (-3, 3, 5, 1), (1, 2), (4, 6, -6, 2)], 'ncon_out_order': (-1, -2, -3, -4, -5, -6, -7, -8), 'ncon_sizes': (5, 5, 4, 2, 4), 'network': [[(-4, -8, -1, 4, 3), (-5, -7, -2, 6, 5), (-3, 3, 5, 1), (1, 2), (4, 6, -6, 2)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(-4, -8, -1, 4, 3), (-5, -7, -2, 6, 5), (-3, 3, 5, 1), (1, 2), (4, 6, -6, 2)]], 'tensors': [['tensor', 'tensor_conj', 'T1', 'C2', 'T2']]}
- density_matrix_one_site: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'C1', 'T1', 'C2', 'T2', 'C3', 'T3', 'C4', 'T4']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16), 'ncon_flat_network': (6, 7, -1, 10, 9, 13, 14, -2, 15, 16, 2, 12, 12, 9, 16, 3, 3, 8, 10, 15, 4, 8, 11, 4, 1, 11, 14, 7, 1, 5, 5, 13, 6, 2), 'ncon_network': [(6, 7, -1, 10, 9), (13, 14, -2, 15, 16), (2, 12), (12, 9, 16, 3), (3, 8), (10, 15, 4, 8), (11, 4), (1, 11, 14, 7), (1, 5), (5, 13, 6, 2)], 'ncon_out_order': (-1, -2), 'ncon_sizes': (5, 5, 2, 4, 2, 4, 2, 4, 2, 4), 'network': [[(6, 7, -1, 10, 9), (13, 14, -2, 15, 16), (2, 12), (12, 9, 16, 3), (3, 8), (10, 15, 4, 8), (11, 4), (1, 11, 14, 7), (1, 5), (5, 13, 6, 2)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(6, 7, -1, 10, 9), (13, 14, -2, 15, 16), (2, 12), (12, 9, 16, 3), (3, 8), (10, 15, 4, 8), (11, 4), (1, 11, 14, 7), (1, 5), (5, 13, 6, 2)]], 'tensors': [['tensor', 'tensor_conj', 'C1', 'T1', 'C2', 'T2', 'C3', 'T3', 'C4', 'T4']]}
- density_matrix_one_site_C1_phase: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'C1_phase', 'T1', 'C2', 'T2', 'C3', 'T3', 'C4', 'T4']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16), 'ncon_flat_network': (6, 7, -1, 10, 9, 13, 14, -2, 15, 16, 2, 12, 12, 9, 16, 3, 3, 8, 10, 15, 4, 8, 11, 4, 1, 11, 14, 7, 1, 5, 5, 13, 6, 2), 'ncon_network': [(6, 7, -1, 10, 9), (13, 14, -2, 15, 16), (2, 12), (12, 9, 16, 3), (3, 8), (10, 15, 4, 8), (11, 4), (1, 11, 14, 7), (1, 5), (5, 13, 6, 2)], 'ncon_out_order': (-1, -2), 'ncon_sizes': (5, 5, 2, 4, 2, 4, 2, 4, 2, 4), 'network': [[(6, 7, -1, 10, 9), (13, 14, -2, 15, 16), (2, 12), (12, 9, 16, 3), (3, 8), (10, 15, 4, 8), (11, 4), (1, 11, 14, 7), (1, 5), (5, 13, 6, 2)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(6, 7, -1, 10, 9), (13, 14, -2, 15, 16), (2, 12), (12, 9, 16, 3), (3, 8), (10, 15, 4, 8), (11, 4), (1, 11, 14, 7), (1, 5), (5, 13, 6, 2)]], 'tensors': [['tensor', 'tensor_conj', 'C1_phase', 'T1', 'C2', 'T2', 'C3', 'T3', 'C4', 'T4']]}
- density_matrix_one_site_C2_phase: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'C1', 'T1', 'C2_phase', 'T2', 'C3', 'T3', 'C4', 'T4']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16), 'ncon_flat_network': (6, 7, -1, 10, 9, 13, 14, -2, 15, 16, 2, 12, 12, 9, 16, 3, 3, 8, 10, 15, 4, 8, 11, 4, 1, 11, 14, 7, 1, 5, 5, 13, 6, 2), 'ncon_network': [(6, 7, -1, 10, 9), (13, 14, -2, 15, 16), (2, 12), (12, 9, 16, 3), (3, 8), (10, 15, 4, 8), (11, 4), (1, 11, 14, 7), (1, 5), (5, 13, 6, 2)], 'ncon_out_order': (-1, -2), 'ncon_sizes': (5, 5, 2, 4, 2, 4, 2, 4, 2, 4), 'network': [[(6, 7, -1, 10, 9), (13, 14, -2, 15, 16), (2, 12), (12, 9, 16, 3), (3, 8), (10, 15, 4, 8), (11, 4), (1, 11, 14, 7), (1, 5), (5, 13, 6, 2)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(6, 7, -1, 10, 9), (13, 14, -2, 15, 16), (2, 12), (12, 9, 16, 3), (3, 8), (10, 15, 4, 8), (11, 4), (1, 11, 14, 7), (1, 5), (5, 13, 6, 2)]], 'tensors': [['tensor', 'tensor_conj', 'C1', 'T1', 'C2_phase', 'T2', 'C3', 'T3', 'C4', 'T4']]}
- density_matrix_one_site_C3_phase: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'C1', 'T1', 'C2', 'T2', 'C3_phase', 'T3', 'C4', 'T4']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16), 'ncon_flat_network': (6, 7, -1, 10, 9, 13, 14, -2, 15, 16, 2, 12, 12, 9, 16, 3, 3, 8, 10, 15, 4, 8, 11, 4, 1, 11, 14, 7, 1, 5, 5, 13, 6, 2), 'ncon_network': [(6, 7, -1, 10, 9), (13, 14, -2, 15, 16), (2, 12), (12, 9, 16, 3), (3, 8), (10, 15, 4, 8), (11, 4), (1, 11, 14, 7), (1, 5), (5, 13, 6, 2)], 'ncon_out_order': (-1, -2), 'ncon_sizes': (5, 5, 2, 4, 2, 4, 2, 4, 2, 4), 'network': [[(6, 7, -1, 10, 9), (13, 14, -2, 15, 16), (2, 12), (12, 9, 16, 3), (3, 8), (10, 15, 4, 8), (11, 4), (1, 11, 14, 7), (1, 5), (5, 13, 6, 2)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(6, 7, -1, 10, 9), (13, 14, -2, 15, 16), (2, 12), (12, 9, 16, 3), (3, 8), (10, 15, 4, 8), (11, 4), (1, 11, 14, 7), (1, 5), (5, 13, 6, 2)]], 'tensors': [['tensor', 'tensor_conj', 'C1', 'T1', 'C2', 'T2', 'C3_phase', 'T3', 'C4', 'T4']]}
- density_matrix_one_site_C4_phase: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'C1', 'T1', 'C2', 'T2', 'C3', 'T3', 'C4_phase', 'T4']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16), 'ncon_flat_network': (6, 7, -1, 10, 9, 13, 14, -2, 15, 16, 2, 12, 12, 9, 16, 3, 3, 8, 10, 15, 4, 8, 11, 4, 1, 11, 14, 7, 1, 5, 5, 13, 6, 2), 'ncon_network': [(6, 7, -1, 10, 9), (13, 14, -2, 15, 16), (2, 12), (12, 9, 16, 3), (3, 8), (10, 15, 4, 8), (11, 4), (1, 11, 14, 7), (1, 5), (5, 13, 6, 2)], 'ncon_out_order': (-1, -2), 'ncon_sizes': (5, 5, 2, 4, 2, 4, 2, 4, 2, 4), 'network': [[(6, 7, -1, 10, 9), (13, 14, -2, 15, 16), (2, 12), (12, 9, 16, 3), (3, 8), (10, 15, 4, 8), (11, 4), (1, 11, 14, 7), (1, 5), (5, 13, 6, 2)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(6, 7, -1, 10, 9), (13, 14, -2, 15, 16), (2, 12), (12, 9, 16, 3), (3, 8), (10, 15, 4, 8), (11, 4), (1, 11, 14, 7), (1, 5), (5, 13, 6, 2)]], 'tensors': [['tensor', 'tensor_conj', 'C1', 'T1', 'C2', 'T2', 'C3', 'T3', 'C4_phase', 'T4']]}
- density_matrix_one_site_T1_phase: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'C1', 'T1_phase', 'C2', 'T2', 'C3', 'T3', 'C4', 'T4']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16), 'ncon_flat_network': (6, 7, -1, 10, 9, 13, 14, -2, 15, 16, 2, 12, 12, 9, 16, 3, 3, 8, 10, 15, 4, 8, 11, 4, 1, 11, 14, 7, 1, 5, 5, 13, 6, 2), 'ncon_network': [(6, 7, -1, 10, 9), (13, 14, -2, 15, 16), (2, 12), (12, 9, 16, 3), (3, 8), (10, 15, 4, 8), (11, 4), (1, 11, 14, 7), (1, 5), (5, 13, 6, 2)], 'ncon_out_order': (-1, -2), 'ncon_sizes': (5, 5, 2, 4, 2, 4, 2, 4, 2, 4), 'network': [[(6, 7, -1, 10, 9), (13, 14, -2, 15, 16), (2, 12), (12, 9, 16, 3), (3, 8), (10, 15, 4, 8), (11, 4), (1, 11, 14, 7), (1, 5), (5, 13, 6, 2)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(6, 7, -1, 10, 9), (13, 14, -2, 15, 16), (2, 12), (12, 9, 16, 3), (3, 8), (10, 15, 4, 8), (11, 4), (1, 11, 14, 7), (1, 5), (5, 13, 6, 2)]], 'tensors': [['tensor', 'tensor_conj', 'C1', 'T1_phase', 'C2', 'T2', 'C3', 'T3', 'C4', 'T4']]}
- density_matrix_one_site_T2_phase: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'C1', 'T1', 'C2', 'T2_phase', 'C3', 'T3', 'C4', 'T4']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16), 'ncon_flat_network': (6, 7, -1, 10, 9, 13, 14, -2, 15, 16, 2, 12, 12, 9, 16, 3, 3, 8, 10, 15, 4, 8, 11, 4, 1, 11, 14, 7, 1, 5, 5, 13, 6, 2), 'ncon_network': [(6, 7, -1, 10, 9), (13, 14, -2, 15, 16), (2, 12), (12, 9, 16, 3), (3, 8), (10, 15, 4, 8), (11, 4), (1, 11, 14, 7), (1, 5), (5, 13, 6, 2)], 'ncon_out_order': (-1, -2), 'ncon_sizes': (5, 5, 2, 4, 2, 4, 2, 4, 2, 4), 'network': [[(6, 7, -1, 10, 9), (13, 14, -2, 15, 16), (2, 12), (12, 9, 16, 3), (3, 8), (10, 15, 4, 8), (11, 4), (1, 11, 14, 7), (1, 5), (5, 13, 6, 2)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(6, 7, -1, 10, 9), (13, 14, -2, 15, 16), (2, 12), (12, 9, 16, 3), (3, 8), (10, 15, 4, 8), (11, 4), (1, 11, 14, 7), (1, 5), (5, 13, 6, 2)]], 'tensors': [['tensor', 'tensor_conj', 'C1', 'T1', 'C2', 'T2_phase', 'C3', 'T3', 'C4', 'T4']]}
- density_matrix_one_site_T3_phase: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'C1', 'T1', 'C2', 'T2', 'C3', 'T3_phase', 'C4', 'T4']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16), 'ncon_flat_network': (6, 7, -1, 10, 9, 13, 14, -2, 15, 16, 2, 12, 12, 9, 16, 3, 3, 8, 10, 15, 4, 8, 11, 4, 1, 11, 14, 7, 1, 5, 5, 13, 6, 2), 'ncon_network': [(6, 7, -1, 10, 9), (13, 14, -2, 15, 16), (2, 12), (12, 9, 16, 3), (3, 8), (10, 15, 4, 8), (11, 4), (1, 11, 14, 7), (1, 5), (5, 13, 6, 2)], 'ncon_out_order': (-1, -2), 'ncon_sizes': (5, 5, 2, 4, 2, 4, 2, 4, 2, 4), 'network': [[(6, 7, -1, 10, 9), (13, 14, -2, 15, 16), (2, 12), (12, 9, 16, 3), (3, 8), (10, 15, 4, 8), (11, 4), (1, 11, 14, 7), (1, 5), (5, 13, 6, 2)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(6, 7, -1, 10, 9), (13, 14, -2, 15, 16), (2, 12), (12, 9, 16, 3), (3, 8), (10, 15, 4, 8), (11, 4), (1, 11, 14, 7), (1, 5), (5, 13, 6, 2)]], 'tensors': [['tensor', 'tensor_conj', 'C1', 'T1', 'C2', 'T2', 'C3', 'T3_phase', 'C4', 'T4']]}
- density_matrix_one_site_T4_phase: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'C1', 'T1', 'C2', 'T2', 'C3', 'T3', 'C4', 'T4_phase']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16), 'ncon_flat_network': (6, 7, -1, 10, 9, 13, 14, -2, 15, 16, 2, 12, 12, 9, 16, 3, 3, 8, 10, 15, 4, 8, 11, 4, 1, 11, 14, 7, 1, 5, 5, 13, 6, 2), 'ncon_network': [(6, 7, -1, 10, 9), (13, 14, -2, 15, 16), (2, 12), (12, 9, 16, 3), (3, 8), (10, 15, 4, 8), (11, 4), (1, 11, 14, 7), (1, 5), (5, 13, 6, 2)], 'ncon_out_order': (-1, -2), 'ncon_sizes': (5, 5, 2, 4, 2, 4, 2, 4, 2, 4), 'network': [[(6, 7, -1, 10, 9), (13, 14, -2, 15, 16), (2, 12), (12, 9, 16, 3), (3, 8), (10, 15, 4, 8), (11, 4), (1, 11, 14, 7), (1, 5), (5, 13, 6, 2)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(6, 7, -1, 10, 9), (13, 14, -2, 15, 16), (2, 12), (12, 9, 16, 3), (3, 8), (10, 15, 4, 8), (11, 4), (1, 11, 14, 7), (1, 5), (5, 13, 6, 2)]], 'tensors': [['tensor', 'tensor_conj', 'C1', 'T1', 'C2', 'T2', 'C3', 'T3', 'C4', 'T4_phase']]}
- density_matrix_three_sites_triangle_without_top_left: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['top-left', 'top-right', 'bottom-left', 'bottom-right'], 'filter_peps_tensors': [], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12), 'ncon_flat_network': (10, 11, 12, 1, 2, 3, -1, -4, 1, 2, 3, 4, 5, 6, -2, -5, 7, 8, 9, 10, 11, 12, -3, -6, 4, 5, 6, 7, 8, 9), 'ncon_network': [(10, 11, 12, 1, 2, 3), (-1, -4, 1, 2, 3, 4, 5, 6), (-2, -5, 7, 8, 9, 10, 11, 12), (-3, -6, 4, 5, 6, 7, 8, 9)], 'ncon_out_order': (-1, -2, -3, -4, -5, -6), 'ncon_sizes': (6, 8, 8, 8), 'network': [(10, 11, 12, 1, 2, 3), (-1, -4, 1, 2, 3, 4, 5, 6), (-2, -5, 7, 8, 9, 10, 11, 12), (-3, -6, 4, 5, 6, 7, 8, 9)], 'network_additional_tensors': [(10, 11, 12, 1, 2, 3), (-1, -4, 1, 2, 3, 4, 5, 6), (-2, -5, 7, 8, 9, 10, 11, 12), (-3, -6, 4, 5, 6, 7, 8, 9)], 'network_peps_tensors': [], 'tensors': ['top-left', 'top-right', 'bottom-left', 'bottom-right']}
- density_matrix_two_sites_bottom: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T2', 'C3', 'T3', 'C4', 'T4']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9, 10), 'ncon_flat_network': (4, 5, -5, 8, -2, 6, 7, -6, 9, -3, 8, 9, 2, -4, 10, 2, 1, 10, 7, 5, 1, 3, 3, 6, 4, -1), 'ncon_network': [(4, 5, -5, 8, -2), (6, 7, -6, 9, -3), (8, 9, 2, -4), (10, 2), (1, 10, 7, 5), (1, 3), (3, 6, 4, -1)], 'ncon_out_order': (-1, -2, -3, -4, -5, -6), 'ncon_sizes': (5, 5, 4, 2, 4, 2, 4), 'network': [[(4, 5, -5, 8, -2), (6, 7, -6, 9, -3), (8, 9, 2, -4), (10, 2), (1, 10, 7, 5), (1, 3), (3, 6, 4, -1)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(4, 5, -5, 8, -2), (6, 7, -6, 9, -3), (8, 9, 2, -4), (10, 2), (1, 10, 7, 5), (1, 3), (3, 6, 4, -1)]], 'tensors': [['tensor', 'tensor_conj', 'T2', 'C3', 'T3', 'C4', 'T4']]}
- density_matrix_two_sites_left: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'C1', 'T1', 'T3', 'C4', 'T4']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9, 10), 'ncon_flat_network': (5, 9, -1, -4, 4, 7, 10, -2, -5, 6, 1, 3, 3, 4, 6, -3, 2, -6, 10, 9, 2, 8, 8, 7, 5, 1), 'ncon_network': [(5, 9, -1, -4, 4), (7, 10, -2, -5, 6), (1, 3), (3, 4, 6, -3), (2, -6, 10, 9), (2, 8), (8, 7, 5, 1)], 'ncon_out_order': (-1, -2, -3, -4, -5, -6), 'ncon_sizes': (5, 5, 2, 4, 4, 2, 4), 'network': [[(5, 9, -1, -4, 4), (7, 10, -2, -5, 6), (1, 3), (3, 4, 6, -3), (2, -6, 10, 9), (2, 8), (8, 7, 5, 1)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(5, 9, -1, -4, 4), (7, 10, -2, -5, 6), (1, 3), (3, 4, 6, -3), (2, -6, 10, 9), (2, 8), (8, 7, 5, 1)]], 'tensors': [['tensor', 'tensor_conj', 'C1', 'T1', 'T3', 'C4', 'T4']]}
- density_matrix_two_sites_right: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T1', 'C2', 'T2', 'T3', 'C3']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9, 10), 'ncon_flat_network': (-2, 8, -5, 5, 4, -3, 9, -6, 7, 6, -1, 4, 6, 3, 3, 1, 5, 7, 10, 1, -4, 2, 9, 8, 2, 10), 'ncon_network': [(-2, 8, -5, 5, 4), (-3, 9, -6, 7, 6), (-1, 4, 6, 3), (3, 1), (5, 7, 10, 1), (-4, 2, 9, 8), (2, 10)], 'ncon_out_order': (-1, -2, -3, -4, -5, -6), 'ncon_sizes': (5, 5, 4, 2, 4, 4, 2), 'network': [[(-2, 8, -5, 5, 4), (-3, 9, -6, 7, 6), (-1, 4, 6, 3), (3, 1), (5, 7, 10, 1), (-4, 2, 9, 8), (2, 10)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(-2, 8, -5, 5, 4), (-3, 9, -6, 7, 6), (-1, 4, 6, 3), (3, 1), (5, 7, 10, 1), (-4, 2, 9, 8), (2, 10)]], 'tensors': [['tensor', 'tensor_conj', 'T1', 'C2', 'T2', 'T3', 'C3']]}
- density_matrix_two_sites_top: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'C1', 'T1', 'C2', 'T2', 'T4']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9, 10), 'ncon_flat_network': (8, -4, -1, 4, 5, 9, -5, -2, 6, 7, 2, 10, 10, 5, 7, 1, 1, 3, 4, 6, -6, 3, -3, 9, 8, 2), 'ncon_network': [(8, -4, -1, 4, 5), (9, -5, -2, 6, 7), (2, 10), (10, 5, 7, 1), (1, 3), (4, 6, -6, 3), (-3, 9, 8, 2)], 'ncon_out_order': (-1, -2, -3, -4, -5, -6), 'ncon_sizes': (5, 5, 2, 4, 2, 4, 4), 'network': [[(8, -4, -1, 4, 5), (9, -5, -2, 6, 7), (2, 10), (10, 5, 7, 1), (1, 3), (4, 6, -6, 3), (-3, 9, 8, 2)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(8, -4, -1, 4, 5), (9, -5, -2, 6, 7), (2, 10), (10, 5, 7, 1), (1, 3), (4, 6, -6, 3), (-3, 9, 8, 2)]], 'tensors': [['tensor', 'tensor_conj', 'C1', 'T1', 'C2', 'T2', 'T4']]}
- honeycomb_density_matrix_bottom: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T2', 'C3', 'T3', 'C4', 'T4']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11), 'ncon_flat_network': (4, 5, 11, -5, 8, -2, 6, 7, 11, -6, 9, -3, 8, 9, 2, -4, 10, 2, 1, 10, 7, 5, 1, 3, 3, 6, 4, -1), 'ncon_network': [(4, 5, 11, -5, 8, -2), (6, 7, 11, -6, 9, -3), (8, 9, 2, -4), (10, 2), (1, 10, 7, 5), (1, 3), (3, 6, 4, -1)], 'ncon_out_order': (-1, -2, -3, -4, -5, -6), 'ncon_sizes': (6, 6, 4, 2, 4, 2, 4), 'network': [[(4, 5, 11, -5, 8, -2), (6, 7, 11, -6, 9, -3), (8, 9, 2, -4), (10, 2), (1, 10, 7, 5), (1, 3), (3, 6, 4, -1)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(4, 5, 11, -5, 8, -2), (6, 7, 11, -6, 9, -3), (8, 9, 2, -4), (10, 2), (1, 10, 7, 5), (1, 3), (3, 6, 4, -1)]], 'tensors': [['tensor', 'tensor_conj', 'T2', 'C3', 'T3', 'C4', 'T4']]}
- honeycomb_density_matrix_left: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'C1', 'T1', 'T3', 'C4', 'T4']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11), 'ncon_flat_network': (5, 9, 11, -1, -4, 4, 7, 10, 11, -2, -5, 6, 1, 3, 3, 4, 6, -3, 2, -6, 10, 9, 2, 8, 8, 7, 5, 1), 'ncon_network': [(5, 9, 11, -1, -4, 4), (7, 10, 11, -2, -5, 6), (1, 3), (3, 4, 6, -3), (2, -6, 10, 9), (2, 8), (8, 7, 5, 1)], 'ncon_out_order': (-1, -2, -3, -4, -5, -6), 'ncon_sizes': (6, 6, 2, 4, 4, 2, 4), 'network': [[(5, 9, 11, -1, -4, 4), (7, 10, 11, -2, -5, 6), (1, 3), (3, 4, 6, -3), (2, -6, 10, 9), (2, 8), (8, 7, 5, 1)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(5, 9, 11, -1, -4, 4), (7, 10, 11, -2, -5, 6), (1, 3), (3, 4, 6, -3), (2, -6, 10, 9), (2, 8), (8, 7, 5, 1)]], 'tensors': [['tensor', 'tensor_conj', 'C1', 'T1', 'T3', 'C4', 'T4']]}
- honeycomb_density_matrix_right: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T1', 'C2', 'T2', 'T3', 'C3']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11), 'ncon_flat_network': (-2, 8, -5, 11, 5, 4, -3, 9, -6, 11, 7, 6, -1, 4, 6, 3, 3, 1, 5, 7, 10, 1, -4, 2, 9, 8, 2, 10), 'ncon_network': [(-2, 8, -5, 11, 5, 4), (-3, 9, -6, 11, 7, 6), (-1, 4, 6, 3), (3, 1), (5, 7, 10, 1), (-4, 2, 9, 8), (2, 10)], 'ncon_out_order': (-1, -2, -3, -4, -5, -6), 'ncon_sizes': (6, 6, 4, 2, 4, 4, 2), 'network': [[(-2, 8, -5, 11, 5, 4), (-3, 9, -6, 11, 7, 6), (-1, 4, 6, 3), (3, 1), (5, 7, 10, 1), (-4, 2, 9, 8), (2, 10)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(-2, 8, -5, 11, 5, 4), (-3, 9, -6, 11, 7, 6), (-1, 4, 6, 3), (3, 1), (5, 7, 10, 1), (-4, 2, 9, 8), (2, 10)]], 'tensors': [['tensor', 'tensor_conj', 'T1', 'C2', 'T2', 'T3', 'C3']]}
- honeycomb_density_matrix_top: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'C1', 'T1', 'C2', 'T2', 'T4']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11), 'ncon_flat_network': (8, -4, -1, 11, 4, 5, 9, -5, -2, 11, 6, 7, 2, 10, 10, 5, 7, 1, 1, 3, 4, 6, -6, 3, -3, 9, 8, 2), 'ncon_network': [(8, -4, -1, 11, 4, 5), (9, -5, -2, 11, 6, 7), (2, 10), (10, 5, 7, 1), (1, 3), (4, 6, -6, 3), (-3, 9, 8, 2)], 'ncon_out_order': (-1, -2, -3, -4, -5, -6), 'ncon_sizes': (6, 6, 2, 4, 2, 4, 4), 'network': [[(8, -4, -1, 11, 4, 5), (9, -5, -2, 11, 6, 7), (2, 10), (10, 5, 7, 1), (1, 3), (4, 6, -6, 3), (-3, 9, 8, 2)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(8, -4, -1, 11, 4, 5), (9, -5, -2, 11, 6, 7), (2, 10), (10, 5, 7, 1), (1, 3), (4, 6, -6, 3), (-3, 9, 8, 2)]], 'tensors': [['tensor', 'tensor_conj', 'C1', 'T1', 'C2', 'T2', 'T4']]}
- kagome_downward_triangle_bottom_left: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T3', 'C4', 'T4']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8), 'ncon_flat_network': (3, 4, 7, 8, -1, -5, -7, 5, 6, 7, 8, -2, -4, -8, 2, -3, 6, 4, 2, 1, 1, 5, 3, -6), 'ncon_network': [(3, 4, 7, 8, -1, -5, -7), (5, 6, 7, 8, -2, -4, -8), (2, -3, 6, 4), (2, 1), (1, 5, 3, -6)], 'ncon_out_order': (-1, -2, -3, -4, -5, -6, -7, -8), 'ncon_sizes': (7, 7, 4, 2, 4), 'network': [[(3, 4, 7, 8, -1, -5, -7), (5, 6, 7, 8, -2, -4, -8), (2, -3, 6, 4), (2, 1), (1, 5, 3, -6)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(3, 4, 7, 8, -1, -5, -7), (5, 6, 7, 8, -2, -4, -8), (2, -3, 6, 4), (2, 1), (1, 5, 3, -6)]], 'tensors': [['tensor', 'tensor_conj', 'T3', 'C4', 'T4']]}
- kagome_downward_triangle_bottom_right: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T2', 'T3', 'C3']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8), 'ncon_flat_network': (-8, 3, -1, 7, 8, 4, -5, -7, 5, -2, 7, 8, 6, -4, 4, 6, 2, -3, -6, 1, 5, 3, 1, 2), 'ncon_network': [(-8, 3, -1, 7, 8, 4, -5), (-7, 5, -2, 7, 8, 6, -4), (4, 6, 2, -3), (-6, 1, 5, 3), (1, 2)], 'ncon_out_order': (-1, -2, -3, -4, -5, -6, -7, -8), 'ncon_sizes': (7, 7, 4, 4, 2), 'network': [[(-8, 3, -1, 7, 8, 4, -5), (-7, 5, -2, 7, 8, 6, -4), (4, 6, 2, -3), (-6, 1, 5, 3), (1, 2)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(-8, 3, -1, 7, 8, 4, -5), (-7, 5, -2, 7, 8, 6, -4), (4, 6, 2, -3), (-6, 1, 5, 3), (1, 2)]], 'tensors': [['tensor', 'tensor_conj', 'T2', 'T3', 'C3']]}
- kagome_downward_triangle_top_left: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T4', 'C1', 'T1']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8), 'ncon_flat_network': (3, -4, 7, 8, -1, -7, 4, 5, -5, 7, 8, -2, -8, 6, -3, 5, 3, 1, 1, 2, 2, 4, 6, -6), 'ncon_network': [(3, -4, 7, 8, -1, -7, 4), (5, -5, 7, 8, -2, -8, 6), (-3, 5, 3, 1), (1, 2), (2, 4, 6, -6)], 'ncon_out_order': (-1, -2, -3, -4, -5, -6, -7, -8), 'ncon_sizes': (7, 7, 4, 2, 4), 'network': [[(3, -4, 7, 8, -1, -7, 4), (5, -5, 7, 8, -2, -8, 6), (-3, 5, 3, 1), (1, 2), (2, 4, 6, -6)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(3, -4, 7, 8, -1, -7, 4), (5, -5, 7, 8, -2, -8, 6), (-3, 5, 3, 1), (1, 2), (2, 4, 6, -6)]], 'tensors': [['tensor', 'tensor_conj', 'T4', 'C1', 'T1']]}
- kagome_downward_triangle_top_right: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T1', 'C2', 'T2']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8), 'ncon_flat_network': (-4, -8, 7, -1, 8, 4, 3, -5, -7, 7, -2, 8, 6, 5, -3, 3, 5, 1, 1, 2, 4, 6, -6, 2), 'ncon_network': [(-4, -8, 7, -1, 8, 4, 3), (-5, -7, 7, -2, 8, 6, 5), (-3, 3, 5, 1), (1, 2), (4, 6, -6, 2)], 'ncon_out_order': (-1, -2, -3, -4, -5, -6, -7, -8), 'ncon_sizes': (7, 7, 4, 2, 4), 'network': [[(-4, -8, 7, -1, 8, 4, 3), (-5, -7, 7, -2, 8, 6, 5), (-3, 3, 5, 1), (1, 2), (4, 6, -6, 2)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(-4, -8, 7, -1, 8, 4, 3), (-5, -7, 7, -2, 8, 6, 5), (-3, 3, 5, 1), (1, 2), (4, 6, -6, 2)]], 'tensors': [['tensor', 'tensor_conj', 'T1', 'C2', 'T2']]}
- kagome_pess3_single_site_mapping: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['up_simplex', 'down_simplex', 'site1', 'site2', 'site3'], 'filter_peps_tensors': [], 'ncon_con_order': (1, 2, 3, 4), 'ncon_flat_network': (1, 2, 3, -1, -7, 4, 4, -3, 1, -2, -4, 2, -6, -5, 3), 'ncon_network': [(1, 2, 3), (-1, -7, 4), (4, -3, 1), (-2, -4, 2), (-6, -5, 3)], 'ncon_out_order': (-1, -2, -3, -4, -5, -6, -7), 'ncon_sizes': (3, 3, 3, 3, 3), 'network': [(1, 2, 3), (-1, -7, 4), (4, -3, 1), (-2, -4, 2), (-6, -5, 3)], 'network_additional_tensors': [(1, 2, 3), (-1, -7, 4), (4, -3, 1), (-2, -4, 2), (-6, -5, 3)], 'network_peps_tensors': [], 'tensors': ['up_simplex', 'down_simplex', 'site1', 'site2', 'site3']}
- kagome_pess_mapping_upper_triangle: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['up', 'down', 'site_1', 'site_2', 'site_3'], 'filter_peps_tensors': [], 'ncon_con_order': (1, 2, 3, 4), 'ncon_flat_network': (1, 2, 3, -1, 4, -2, -7, -3, 1, 4, -4, 2, -6, -5, 3), 'ncon_network': [[1, 2, 3], [-1, 4, -2], [-7, -3, 1], [4, -4, 2], [-6, -5, 3]], 'ncon_out_order': (-1, -2, -3, -4, -5, -6, -7), 'ncon_sizes': (3, 3, 3, 3, 3), 'network': [[1, 2, 3], [-1, 4, -2], [-7, -3, 1], [4, -4, 2], [-6, -5, 3]], 'network_additional_tensors': [[1, 2, 3], [-1, 4, -2], [-7, -3, 1], [4, -4, 2], [-6, -5, 3]], 'network_peps_tensors': [], 'tensors': ['up', 'down', 'site_1', 'site_2', 'site_3']}
- maple_leaf_pess_mapping: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['t1', 't2', 't3', 'up', 'down'], 'filter_peps_tensors': [], 'ncon_con_order': (1, 2, 3, 4), 'ncon_flat_network': (-3, -1, 1, -4, -2, 2, -5, 4, 3, 1, 2, 4, 3, -7, -6), 'ncon_network': [(-3, -1, 1), (-4, -2, 2), (-5, 4, 3), (1, 2, 4), (3, -7, -6)], 'ncon_out_order': (-1, -2, -3, -4, -5, -6, -7), 'ncon_sizes': (3, 3, 3, 3, 3), 'network': [(-3, -1, 1), (-4, -2, 2), (-5, 4, 3), (1, 2, 4), (3, -7, -6)], 'network_additional_tensors': [(-3, -1, 1), (-4, -2, 2), (-5, 4, 3), (1, 2, 4), (3, -7, -6)], 'network_peps_tensors': [], 'tensors': ['t1', 't2', 't3', 'up', 'down']}
- square_kagome_pess_mapping: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['t1', 't2', 't3', 't4', 't5', 't6', 'simplex_left', 'simplex_top', 'simplex_right', 'simplex_bottom'], 'filter_peps_tensors': [], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9, 10), 'ncon_flat_network': (-2, -3, 9, 7, -4, 1, 5, -5, 2, 6, -6, 3, 8, -7, 4, -9, -8, 10, -1, 5, 1, -10, 8, 2, 10, 6, 4, 9, 7, 3), 'ncon_network': [(-2, -3, 9), (7, -4, 1), (5, -5, 2), (6, -6, 3), (8, -7, 4), (-9, -8, 10), (-1, 5, 1), (-10, 8, 2), (10, 6, 4), (9, 7, 3)], 'ncon_out_order': (-1, -2, -3, -4, -5, -6, -7, -8, -9, -10), 'ncon_sizes': (3, 3, 3, 3, 3, 3, 3, 3, 3, 3), 'network': [(-2, -3, 9), (7, -4, 1), (5, -5, 2), (6, -6, 3), (8, -7, 4), (-9, -8, 10), (-1, 5, 1), (-10, 8, 2), (10, 6, 4), (9, 7, 3)], 'network_additional_tensors': [(-2, -3, 9), (7, -4, 1), (5, -5, 2), (6, -6, 3), (8, -7, 4), (-9, -8, 10), (-1, 5, 1), (-10, 8, 2), (10, 6, 4), (9, 7, 3)], 'network_peps_tensors': [], 'tensors': ['t1', 't2', 't3', 't4', 't5', 't6', 'simplex_left', 'simplex_top', 'simplex_right', 'simplex_bottom']}
- triangular_pess_mapping: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': ['site', 'simplex'], 'filter_peps_tensors': [], 'ncon_con_order': (1,), 'ncon_flat_network': (-1, 1, -2, -3, -5, 1, -4), 'ncon_network': [(-1, 1, -2, -3), (-5, 1, -4)], 'ncon_out_order': (-1, -2, -3, -4, -5), 'ncon_sizes': (4, 3), 'network': [(-1, 1, -2, -3), (-5, 1, -4)], 'network_additional_tensors': [(-1, 1, -2, -3), (-5, 1, -4)], 'network_peps_tensors': [], 'tensors': ['site', 'simplex']}
- unitcell_bond_dim_change_bottom: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T2', 'C3', 'T3', 'C4', 'T4']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11), 'ncon_flat_network': (4, 5, 11, 8, -1, 6, 7, 11, 9, -4, 8, 9, 2, -3, 10, 2, 1, 10, 7, 5, 1, 3, 3, 6, 4, -2), 'ncon_network': [(4, 5, 11, 8, -1), (6, 7, 11, 9, -4), (8, 9, 2, -3), (10, 2), (1, 10, 7, 5), (1, 3), (3, 6, 4, -2)], 'ncon_out_order': (-1, -2, -3, -4), 'ncon_sizes': (5, 5, 4, 2, 4, 2, 4), 'network': [[(4, 5, 11, 8, -1), (6, 7, 11, 9, -4), (8, 9, 2, -3), (10, 2), (1, 10, 7, 5), (1, 3), (3, 6, 4, -2)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(4, 5, 11, 8, -1), (6, 7, 11, 9, -4), (8, 9, 2, -3), (10, 2), (1, 10, 7, 5), (1, 3), (3, 6, 4, -2)]], 'tensors': [['tensor', 'tensor_conj', 'T2', 'C3', 'T3', 'C4', 'T4']]}
- unitcell_bond_dim_change_left: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'C1', 'T1', 'T3', 'C4', 'T4']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11), 'ncon_flat_network': (5, 9, 11, -4, 4, 7, 10, 11, -3, 6, 1, 3, 3, 4, 6, -1, 2, -2, 10, 9, 2, 8, 8, 7, 5, 1), 'ncon_network': [(5, 9, 11, -4, 4), (7, 10, 11, -3, 6), (1, 3), (3, 4, 6, -1), (2, -2, 10, 9), (2, 8), (8, 7, 5, 1)], 'ncon_out_order': (-1, -2, -3, -4), 'ncon_sizes': (5, 5, 2, 4, 4, 2, 4), 'network': [[(5, 9, 11, -4, 4), (7, 10, 11, -3, 6), (1, 3), (3, 4, 6, -1), (2, -2, 10, 9), (2, 8), (8, 7, 5, 1)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(5, 9, 11, -4, 4), (7, 10, 11, -3, 6), (1, 3), (3, 4, 6, -1), (2, -2, 10, 9), (2, 8), (8, 7, 5, 1)]], 'tensors': [['tensor', 'tensor_conj', 'C1', 'T1', 'T3', 'C4', 'T4']]}
- unitcell_bond_dim_change_right: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'T1', 'C2', 'T2', 'T3', 'C3']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11), 'ncon_flat_network': (-1, 8, 11, 5, 4, -4, 9, 11, 7, 6, -2, 4, 6, 3, 3, 1, 5, 7, 10, 1, -3, 2, 9, 8, 2, 10), 'ncon_network': [(-1, 8, 11, 5, 4), (-4, 9, 11, 7, 6), (-2, 4, 6, 3), (3, 1), (5, 7, 10, 1), (-3, 2, 9, 8), (2, 10)], 'ncon_out_order': (-1, -2, -3, -4), 'ncon_sizes': (5, 5, 4, 2, 4, 4, 2), 'network': [[(-1, 8, 11, 5, 4), (-4, 9, 11, 7, 6), (-2, 4, 6, 3), (3, 1), (5, 7, 10, 1), (-3, 2, 9, 8), (2, 10)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(-1, 8, 11, 5, 4), (-4, 9, 11, 7, 6), (-2, 4, 6, 3), (3, 1), (5, 7, 10, 1), (-3, 2, 9, 8), (2, 10)]], 'tensors': [['tensor', 'tensor_conj', 'T1', 'C2', 'T2', 'T3', 'C3']]}
- unitcell_bond_dim_change_top: Dict[str, List[List[str | List[str]] | List[Tuple[int] | List[Tuple[int]]]]] = {'filter_additional_tensors': [], 'filter_peps_tensors': [['tensor', 'tensor_conj', 'C1', 'T1', 'C2', 'T2', 'T4']], 'ncon_con_order': (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11), 'ncon_flat_network': (8, -4, 11, 4, 5, 9, -3, 11, 6, 7, 2, 10, 10, 5, 7, 1, 1, 3, 4, 6, -2, 3, -1, 9, 8, 2), 'ncon_network': [(8, -4, 11, 4, 5), (9, -3, 11, 6, 7), (2, 10), (10, 5, 7, 1), (1, 3), (4, 6, -2, 3), (-1, 9, 8, 2)], 'ncon_out_order': (-1, -2, -3, -4), 'ncon_sizes': (5, 5, 2, 4, 2, 4, 4), 'network': [[(8, -4, 11, 4, 5), (9, -3, 11, 6, 7), (2, 10), (10, 5, 7, 1), (1, 3), (4, 6, -2, 3), (-1, 9, 8, 2)]], 'network_additional_tensors': [], 'network_peps_tensors': [[(8, -4, 11, 4, 5), (9, -3, 11, 6, 7), (2, 10), (10, 5, 7, 1), (1, 3), (4, 6, -2, 3), (-1, 9, 8, 2)]], 'tensors': [['tensor', 'tensor_conj', 'C1', 'T1', 'C2', 'T2', 'T4']]}