PhyslibSearch

Physlib.QFT.PerturbationTheory.WickContraction.UncontractedList

59 declarations

theorem

Strict Monotonicity Preserves Sortedness of Lists

#fin_list_sorted_monotone_sorted

For any natural numbers nn and mm, let ll be a list of elements of the finite set Fin n={0,1,,n1}\text{Fin } n = \{0, 1, \dots, n-1\}. If the list ll is sorted in non-decreasing order (i.e., it is pairwise \le) and f:Fin nFin mf: \text{Fin } n \to \text{Fin } m is a strictly monotonic function, then the list obtained by applying ff to each element of ll is also sorted in non-decreasing order.

theorem

The embedding i.succAboveEmbi.\text{succAboveEmb} preserves the sortedness of lists in Fin n\text{Fin } n

#fin_list_sorted_succAboveEmb_sorted

Let nn be a natural number and let ll be a list of elements from the set Fin n={0,1,,n1}\text{Fin } n = \{0, 1, \dots, n-1\}. If the list ll is sorted in non-decreasing order (i.e., its elements are pairwise \le), then for any iFin(n+1)i \in \text{Fin}(n+1), the list obtained by applying the embedding i.succAboveEmb:Fin nFin(n+1)i.\text{succAboveEmb}: \text{Fin } n \hookrightarrow \text{Fin}(n+1) to each element of ll is also sorted in non-decreasing order. The embedding i.succAboveEmbi.\text{succAboveEmb} maps an element xx to xx if x<ix < i and to x+1x+1 if xix \ge i.

theorem

(sort A).map f=sort(f(A))(\text{sort } A). \text{map } f = \text{sort}(f(A)) for strictly monotone ff

#fin_finset_sort_map_monotone

Let n,mNn, m \in \mathbb{N} and let AA be a finite subset of Fin n={0,1,,n1}\text{Fin } n = \{0, 1, \dots, n-1\}. Let f:Fin nFin mf: \text{Fin } n \hookrightarrow \text{Fin } m be a strictly monotone embedding. Then the list obtained by sorting the elements of AA in non-decreasing order and applying ff to each element is equal to the list obtained by sorting the image set f(A)={f(x)xA}f(A) = \{f(x) \mid x \in A\}. That is, (sort A).map f=sort(f(A))(\text{sort } A). \text{map } f = \text{sort}(f(A)).

theorem

A Sorted List ll of Finite Integers Splits into l<il_{< i} and lil_{\ge i}

#fin_list_sorted_split

Let ll be a list of elements from the set {0,1,,n1}\{0, 1, \dots, n-1\}. If ll is sorted in non-decreasing order, then for any natural number ii, the list ll is equal to the concatenation of two sublists: the sublist of elements xlx \in l such that x<ix < i and the sublist of elements xlx \in l such that xix \geq i. That is, l=[xlx<i] ++ [xlxi]l = [x \in l \mid x < i] \text{ ++ } [x \in l \mid x \geq i].

theorem

Index of ii in a sorted list filtered by xix \ge i is 0

#fin_list_sorted_indexOf_filter_le_mem

Let ll be a list of elements in {0,1,,n1}\{0, 1, \dots, n-1\} that is sorted in non-decreasing order. Let ii be an element belonging to ll. If ll' is the sublist of ll containing only those elements xx such that ixi \le x, then the index of the first occurrence of ii in ll' is 0.

theorem

The index of ii in a sorted list equals the number of elements less than ii

#fin_list_sorted_indexOf_mem

Let ll be a list of elements from the set {0,1,,n1}\{0, 1, \dots, n-1\} that is sorted in non-decreasing order. For any element ii belonging to ll, the index of the first occurrence of ii in ll is equal to the length of the sublist containing all elements xlx \in l such that x<ix < i.

theorem

Ordered Insertion into a Sorted List ll equals l<i ++ [i] ++ lil_{< i} \text{ ++ } [i] \text{ ++ } l_{\ge i}

#orderedInsert_of_fin_list_sorted

Let ll be a list of elements from the set {0,1,,n1}\{0, 1, \dots, n-1\}. Suppose ll is sorted in non-decreasing order. For any i{0,1,,n1}i \in \{0, 1, \dots, n-1\}, the ordered insertion of ii into ll (preserving the non-decreasing order) is equal to the concatenation of the sublist of elements xlx \in l such that x<ix < i, the element ii itself, and the sublist of elements xlx \in l such that xix \geq i. In symbols, if l<i=[xlx<i]l_{< i} = [x \in l \mid x < i] and li=[xlxi]l_{\ge i} = [x \in l \mid x \ge i], then orderedInsert(,i,l)=l<i ++ [i] ++ li\text{orderedInsert}(\le, i, l) = l_{< i} \text{ ++ } [i] \text{ ++ } l_{\ge i}

theorem

Ordered insertion into a sorted list ll equals insertion at index l<i|l_{<i}|

#orderedInsert_eq_insertIdx_of_fin_list_sorted

Let ll be a list of elements from the set {0,1,,n1}\{0, 1, \dots, n-1\} that is sorted in non-decreasing order. For any i{0,1,,n1}i \in \{0, 1, \dots, n-1\}, the ordered insertion of ii into ll (preserving the \le order) is equal to the result of inserting ii into ll at the specific index corresponding to the number of elements in ll that are strictly less than ii. In symbols, if l<il_{< i} denotes the sublist of elements xlx \in l such that x<ix < i, then: orderedInsert(,i,l)=insertIdx(length(l<i),i,l)\text{orderedInsert}(\le, i, l) = \text{insertIdx}(\text{length}(l_{< i}), i, l)

definition

Sorted list of uncontracted indices of a Wick contraction cc

#uncontractedList

Given a Wick contraction cc on nn indices, the uncontracted list is the list of all indices i{0,1,,n1}i \in \{0, 1, \dots, n-1\} that are not part of any contracted pair in cc, ordered such that the indices are in strictly increasing order.

theorem

ic.uncontractedList    ic.uncontractedi \in c.\text{uncontractedList} \iff i \in c.\text{uncontracted}

#uncontractedList_mem_iff

For a Wick contraction cc on nn indices, an index i{0,1,,n1}i \in \{0, 1, \dots, n-1\} belongs to the sorted list of uncontracted indices c.uncontractedListc.\text{uncontractedList} if and only if it belongs to the set of uncontracted indices c.uncontractedc.\text{uncontracted}.

theorem

The `uncontractedList` of the empty Wick contraction is the list of all indices [0,1,,n1][0, 1, \dots, n-1]

#uncontractedList_empty

For the empty Wick contraction on nn indices, where no elements are paired, the sorted list of uncontracted indices is equal to the list of all indices from 00 to n1n-1 in strictly increasing order, denoted as `List.finRange n`.

theorem

The uncontracted list for an empty contraction on 0 indices is [][ ]

#nil_zero_uncontractedList

For an empty Wick contraction on a set of n=0n = 0 indices, the list of uncontracted indices is the empty list [][ ].

theorem

`uncontractedList` commutes with index congruence n=mn = m

#congr_uncontractedList

Let n,mNn, m \in \mathbb{N} be such that n=mn = m, and let cc be a Wick contraction on nn indices. The uncontracted list of the Wick contraction cc when re-indexed to mm indices (via the equality h:n=mh: n = m) is equal to the list obtained by applying the index transformation mapping finCongr(h)\text{finCongr}(h) to each element of the uncontracted list of cc.

theorem

The ii-th element of c.uncontractedListc.\text{uncontractedList} is in c.uncontractedc.\text{uncontracted}

#uncontractedList_get_mem_uncontracted

Let cc be a Wick contraction on nn indices {0,1,,n1}\{0, 1, \dots, n-1\}. Let c.uncontractedListc.\text{uncontractedList} be the sorted list of uncontracted indices and c.uncontractedc.\text{uncontracted} be the set of uncontracted indices. For any valid index ii into the list (i.e., 0i<length(c.uncontractedList)0 \le i < \text{length}(c.\text{uncontractedList})), the ii-th element of c.uncontractedListc.\text{uncontractedList} is an element of the set c.uncontractedc.\text{uncontracted}.

theorem

The list of uncontracted indices is non-decreasing (\le)

#uncontractedList_sorted

For a Wick contraction cc on nn indices, the list of uncontracted indices is non-decreasing. That is, for any two elements in the list, the element appearing at an earlier position is less than or equal to any element appearing at a subsequent position.

theorem

The list of uncontracted indices is strictly increasing.

#uncontractedList_sorted_lt

For a Wick contraction cc on nn indices {0,1,,n1}\{0, 1, \dots, n-1\}, the list of uncontracted indices is strictly increasing. That is, for any two indices in the list, the element at the earlier position is strictly less than the element at any subsequent position.

theorem

The list of uncontracted indices has no duplicates

#uncontractedList_nodup

For a Wick contraction cc on the set of indices {0,1,,n1}\{0, 1, \dots, n-1\}, the list of uncontracted indices contains no duplicate elements.

theorem

The set of elements in the uncontracted list equals the uncontracted set

#uncontractedList_toFinset

For a Wick contraction cc on nn indices {0,1,,n1}\{0, 1, \dots, n-1\}, the set of elements contained in the sorted list of uncontracted indices is equal to the set of uncontracted indices of cc.

theorem

c.uncontractedListc.\text{uncontractedList} equals the sorted set c.uncontractedc.\text{uncontracted}

#uncontractedList_eq_sort

For a Wick contraction cc on the set of indices {0,1,,n1}\{0, 1, \dots, n-1\}, the list of uncontracted indices c.uncontractedListc.\text{uncontractedList} is equal to the list obtained by sorting the set of uncontracted indices c.uncontractedc.\text{uncontracted} in non-decreasing order with respect to \le.

theorem

Length of c.uncontractedListc.\text{uncontractedList} equals c.uncontracted|c.\text{uncontracted}|

#uncontractedList_length_eq_card

For a Wick contraction cc on the set of indices {0,1,,n1}\{0, 1, \dots, n-1\}, the length of the sorted list of uncontracted indices c.uncontractedListc.\text{uncontractedList} is equal to the cardinality of the set of uncontracted indices, denoted as c.uncontracted|c.\text{uncontracted}|.

theorem

Filtering c.uncontractedListc.\text{uncontractedList} equals the sorted filtered set c.uncontractedc.\text{uncontracted}

#filter_uncontractedList

For a Wick contraction cc on nn indices {0,1,,n1}\{0, 1, \dots, n-1\} and a decidable predicate pp on these indices, filtering the sorted list of uncontracted indices c.uncontractedListc.\text{uncontractedList} by pp results in the same list as sorting the set of uncontracted indices that satisfy pp (i.e., {ic.uncontractedp(i)}\{i \in c.\text{uncontracted} \mid p(i)\}) in non-decreasing order with respect to \le.

definition

Equivalence between positions in c.uncontractedListc.\text{uncontractedList} and elements of c.uncontractedc.\text{uncontracted}

#uncontractedIndexEquiv

For a Wick contraction cc on nn indices, let c.uncontractedListc.\text{uncontractedList} be the list of indices not involved in any contracted pair, sorted in increasing order, and let c.uncontractedc.\text{uncontracted} be the set of these same indices. The equivalence `uncontractedIndexEquiv` is the bijection between the set of positions in the list, represented by the finite type {0,1,,length(c.uncontractedList)1}\{0, 1, \dots, \text{length}(c.\text{uncontractedList}) - 1\}, and the set of uncontracted indices. Under this bijection, an index ii is mapped to the ii-th element of the sorted list c.uncontractedListc.\text{uncontractedList}.

theorem

The element of c.uncontractedListc.\text{uncontractedList} at position c.uncontractedIndexEquiv1(k)c.\text{uncontractedIndexEquiv}^{-1}(k) is kk

#uncontractedList_getElem_uncontractedIndexEquiv_symm

For a Wick contraction cc on nn indices, let c.uncontractedListc.\text{uncontractedList} be the list of indices not part of any contracted pair, sorted in strictly increasing order, and let c.uncontractedc.\text{uncontracted} be the set of these indices. For any uncontracted index kc.uncontractedk \in c.\text{uncontracted}, the element at the position in c.uncontractedListc.\text{uncontractedList} corresponding to kk under the inverse bijection c.uncontractedIndexEquiv1c.\text{uncontractedIndexEquiv}^{-1} is equal to kk itself.

theorem

The index of an uncontracted element kk in c.uncontractedListc.\text{uncontractedList} equals the count of uncontracted elements less than kk

#uncontractedIndexEquiv_symm_eq_filter_length

Let cc be a Wick contraction on nn indices. Let c.uncontractedc.\text{uncontracted} be the set of indices not involved in any contracted pair, and let c.uncontractedListc.\text{uncontractedList} be the list containing these indices sorted in strictly increasing order. For any uncontracted index kc.uncontractedk \in c.\text{uncontracted}, the position (index) of kk in c.uncontractedListc.\text{uncontractedList} is equal to the number of elements in c.uncontractedListc.\text{uncontractedList} that are strictly less than kk.

theorem

The prefix of c.uncontractedListc.\text{uncontractedList} up to the position of kk equals the sublist of elements strictly less than kk

#take_uncontractedIndexEquiv_symm

For a Wick contraction cc on nn indices, let c.uncontractedListc.\text{uncontractedList} be the list of indices not involved in any contracted pair, sorted in strictly increasing order. For any uncontracted index kc.uncontractedk \in c.\text{uncontracted}, the sublist consisting of the first mm elements of c.uncontractedListc.\text{uncontractedList}, where mm is the position (index) of kk in the list, is equal to the sublist of elements in c.uncontractedListc.\text{uncontractedList} that are strictly less than kk.

definition

List of uncontracted field operators [Λ]uc[\Lambda]^{uc}

#uncontractedListGet

Given a list of field operators ϕs\phi_s and a Wick contraction Λ\Lambda on that list, the function returns the sub-list of operators in ϕs\phi_s whose indices are uncontracted by Λ\Lambda. Specifically, if {i1,i2,,ik}\{i_1, i_2, \dots, i_k\} is the sorted list of indices in {0,,ϕs1}\{0, \dots, |\phi_s|-1\} that do not participate in any contraction in Λ\Lambda, the function returns the list [ϕs[i1],ϕs[i2],,ϕs[ik]][\phi_s[i_1], \phi_s[i_2], \dots, \phi_s[i_k]]. This list is denoted by the notation [Λ]uc[\Lambda]^{uc}.

definition

List of uncontracted field operators [Λ]uc[\Lambda]^{uc}

#term[_]ᵘᶜ

Given a Wick contraction Λ\Lambda on a sequence of field operators ϕs\phi_s, the notation [Λ]uc[\Lambda]^{uc} denotes the sub-list of field operators in ϕs\phi_s that remain uncontracted (i.e., those operators not paired with another by the contraction Λ\Lambda).

theorem

[Λ]uc=ϕs[\Lambda_{\emptyset}]^{uc} = \phi_s

#uncontractedListGet_empty

For a list of field operators ϕs\phi_s, let Λ\Lambda_{\emptyset} be the empty Wick contraction (where no operators are paired). The list of uncontracted field operators [Λ]uc[\Lambda_{\emptyset}]^{uc} is equal to the original list ϕs\phi_s.

definition

Equivalence between optional uncontracted indices and positions in [Λ]uc[\Lambda]^{uc}

#uncontractedFieldOpEquiv

For a list of field operators ϕs\phi_s and a Wick contraction Λ\Lambda acting on those operators, let U\mathcal{U} be the set of indices not involved in any contraction, and let [Λ]uc[\Lambda]^{uc} be the list of field operators corresponding to these uncontracted indices (sorted by their original positions). This definition establishes a bijection (equivalence) between U{none}\mathcal{U} \cup \{\text{none}\} and the set of positions in the list [Λ]uc[\Lambda]^{uc} plus a "none" element, i.e., {0,1,,[Λ]uc1}{none}\{0, 1, \dots, |[\Lambda]^{uc}| - 1\} \cup \{\text{none}\}. Under this bijection, an index iUi \in \mathcal{U} is mapped to its position in the sorted list, and the value `none` is mapped to `none`.

theorem

`uncontractedFieldOpEquiv` of `none` equals `none`

#uncontractedFieldOpEquiv_none

For a list of field operators ϕs\phi_s and a Wick contraction Λ\Lambda on those operators, let EE be the equivalence `uncontractedFieldOpEquiv` that maps between the optional uncontracted indices U{none}\mathcal{U} \cup \{\text{none}\} and the optional positions in the sorted list of uncontracted field operators {0,1,,[Λ]uc1}{none}\{0, 1, \dots, |[\Lambda]^{uc}| - 1\} \cup \{\text{none}\}. The mapping satisfies E(none)=noneE(\text{none}) = \text{none}.

theorem

Summation identity for the equivalence between uncontracted indices and positions in [Λ]uc[\Lambda]^{uc}

#uncontractedFieldOpEquiv_list_sum

Let ϕs\phi_s be a list of field operators and Λ\Lambda a Wick contraction on its indices. Let U\mathcal{U} be the set of indices in {0,,ϕs1}\{0, \dots, |\phi_s|-1\} that are uncontracted by Λ\Lambda, and let [Λ]uc[\Lambda]^{uc} be the list of field operators corresponding to these uncontracted indices (sorted by their original positions). Let ψ\psi be the bijection `uncontractedFieldOpEquiv` that maps the set U{none}\mathcal{U} \cup \{\text{none}\} to the set of positions in [Λ]uc[\Lambda]^{uc} plus a "none" element, i.e., {0,,[Λ]uc1}{none}\{0, \dots, |[\Lambda]^{uc}| - 1\} \cup \{\text{none}\}. For any function ff mapping from {0,,[Λ]uc1}{none}\{0, \dots, |[\Lambda]^{uc}| - 1\} \cup \{\text{none}\} to an additive commutative monoid α\alpha, the sum of ff over its domain is equal to the sum of fψf \circ \psi over the set U{none}\mathcal{U} \cup \{\text{none}\}: i{0,,[Λ]uc1}{none}f(i)=jU{none}f(ψ(j))\sum_{i \in \{0, \dots, |[\Lambda]^{uc}| - 1\} \cup \{\text{none}\}} f(i) = \sum_{j \in \mathcal{U} \cup \{\text{none}\}} f(\psi(j))

definition

Embedding of uncontracted list indices into original indices ϕs\phi_s

#uncontractedListEmd

For a list of field operators ϕs\phi_s and a Wick contraction Λ\Lambda acting on them, let [Λ]uc[\Lambda]^{uc} denote the list of field operators that remain uncontracted, sorted by their original positions. This function is an embedding f:{0,1,,length([Λ]uc)1}{0,1,,length(ϕs)1}f: \{0, 1, \dots, \text{length}([\Lambda]^{uc}) - 1\} \hookrightarrow \{0, 1, \dots, \text{length}(\phi_s) - 1\} that maps the index of an operator in the uncontracted list to its corresponding original index in the list ϕs\phi_s.

theorem

Λ=Λ\Lambda = \Lambda' implies equality of uncontracted index embeddings

#uncontractedListEmd_congr

Let ϕs\phi_s be a list of field operators and let Λ\Lambda and Λ\Lambda' be two Wick contractions on ϕs\phi_s. If Λ=Λ\Lambda = \Lambda', then the embedding fΛ:{0,1,,[Λ]uc1}{0,1,,ϕs1}f_{\Lambda} : \{0, 1, \dots, |[\Lambda]^{uc}| - 1\} \hookrightarrow \{0, 1, \dots, |\phi_s| - 1\}, which maps the index of an operator in the uncontracted list [Λ]uc[\Lambda]^{uc} to its original index in ϕs\phi_s, is equal to the composition of the index congruence map (identifying the index sets of the two identical uncontracted lists) and the embedding fΛf_{\Lambda'}.

theorem

`uncontractedListEmd` equals `get` on `uncontractedList`

#uncontractedListEmd_toFun_eq_get

For a list of field operators ϕs\phi_s and a Wick contraction Λ\Lambda acting on them, let LL be the list of indices in {0,1,,length(ϕs)1}\{0, 1, \dots, \text{length}(\phi_s) - 1\} that are not part of any contracted pair in Λ\Lambda, ordered such that they are strictly increasing. The embedding function ff (defined by `uncontractedListEmd`), which maps an index ii from the set {0,1,,length([Λ]uc)1}\{0, 1, \dots, \text{length}([\Lambda]^{uc}) - 1\} to its original index in ϕs\phi_s, is equal to the function that retrieves the ii-th element of the list LL. Here, [Λ]uc[\Lambda]^{uc} denotes the list of field operators that remain uncontracted.

theorem

The Uncontracted List Embedding is Strictly Increasing

#uncontractedListEmd_strictMono

For a list of field operators ϕs\phi_s and a Wick contraction Λ\Lambda acting on them, let [Λ]uc[\Lambda]^{uc} be the list of uncontracted field operators sorted by their original positions. Let ff be the embedding (the function `uncontractedListEmd`) that maps the index ii of an operator in the uncontracted list [Λ]uc[\Lambda]^{uc} to its corresponding original index in the list ϕs\phi_s. Then ff is strictly increasing: for any two indices i,ji, j in the domain of ff, if i<ji < j, then f(i)<f(j)f(i) < f(j).

theorem

uncontractedListEmd(i)Λ.uncontracted\text{uncontractedListEmd}(i) \in \Lambda.\text{uncontracted}

#uncontractedListEmd_mem_uncontracted

For a field specification F\mathcal{F}, a list of field operators ϕs\phi_s, and a Wick contraction Λ\Lambda acting on ϕs\phi_s, let [Λ]uc[\Lambda]^{uc} be the list of field operators that remain uncontracted. For any index i{0,1,,length([Λ]uc)1}i \in \{0, 1, \dots, \text{length}([\Lambda]^{uc}) - 1\}, the original index in ϕs\phi_s corresponding to the ii-th uncontracted operator (given by the embedding uncontractedListEmd(i)\text{uncontractedListEmd}(i)) is an element of the set of uncontracted indices of the contraction Λ\Lambda.

theorem

Surjectivity of uncontractedListEmd\text{uncontractedListEmd} onto the set of uncontracted indices

#uncontractedListEmd_surjective_mem_uncontracted

For a list of field operators ϕs\phi_s and a Wick contraction Λ\Lambda acting on them, let i{0,1,,ϕs1}i \in \{0, 1, \dots, |\phi_s|-1\} be an index that is uncontracted under Λ\Lambda. Then there exists an index j{0,1,,[Λ]uc1}j \in \{0, 1, \dots, |[\Lambda]^{uc}|-1\} in the list of uncontracted field operators [Λ]uc[\Lambda]^{uc} such that the embedding function uncontractedListEmd\text{uncontractedListEmd} maps jj to ii.

theorem

Mapped uncontracted indices are disjoint from contracted pairs bΛb \in \Lambda

#uncontractedListEmd_finset_disjoint_left

For a list of field operators ϕs\phi_s and a Wick contraction Λ\Lambda on ϕs\phi_s, let [Λ]uc[\Lambda]^{uc} be the list of field operators remaining uncontracted and ff be the embedding (`uncontractedListEmd`) that maps an index of the uncontracted list to its original index in ϕs\phi_s. For any finite set of indices aa of the uncontracted list and any pair bb that is part of the contraction Λ\Lambda (bΛb \in \Lambda), the set of original indices {f(i)ia}\{f(i) \mid i \in a\} and the set bb are disjoint.

theorem

The image of a set of uncontracted indices is not a contracted pair in Λ\Lambda

#uncontractedListEmd_finset_not_mem

For a list of field operators ϕs\phi_s and a Wick contraction Λ\Lambda on that list, let [Λ]uc[\Lambda]^{uc} denote the list of field operators that remain uncontracted. Let ff be the embedding (`uncontractedListEmd`) that maps an index of the uncontracted list to its corresponding original index in ϕs\phi_s. For any finite set of indices aa from the uncontracted list, the set of mapped indices {f(i)ia}\{f(i) \mid i \in a\} is not a member of the set of contracted pairs in Λ\Lambda.

theorem

The kk-th uncontracted operator equals the operator at its original index [Λ]uc[k]=ϕs[f(k)][\Lambda]^{uc}[k] = \phi_s[f(k)]

#getElem_uncontractedListEmd

For a list of field operators ϕs\phi_s and a Wick contraction Λ\Lambda acting on them, let [Λ]uc[\Lambda]^{uc} be the list of uncontracted field operators and ff be the embedding (the `uncontractedListEmd`) that maps an index kk in the list [Λ]uc[\Lambda]^{uc} to its original index in ϕs\phi_s. For any index k{0,,length([Λ]uc)1}k \in \{0, \dots, \text{length}([\Lambda]^{uc}) - 1\}, the kk-th element of the uncontracted list is equal to the element of the original list ϕs\phi_s at index f(k)f(k): [Λ]uc[k]=ϕs[f(k)][\Lambda]^{uc}[k] = \phi_s[f(k)]

theorem

The `uncontractedListEmd` of the empty Wick contraction is the identity embedding

#uncontractedListEmd_empty

For a list of field operators ϕs\phi_s of length nn, let empty\text{empty} be the Wick contraction where no operators are paired. The embedding f:{0,1,,n1}{0,1,,n1}f: \{0, 1, \dots, n-1\} \hookrightarrow \{0, 1, \dots, n-1\} that maps the index of an operator in the uncontracted list to its original index in ϕs\phi_s is the canonical identity embedding.

theorem

The list i.succAboveEmb(c.uncontractedList)i.\text{succAboveEmb}(c.\text{uncontractedList}) is sorted

#uncontractedList_succAboveEmb_sorted

For a Wick contraction cc on nn indices, let c.uncontractedListc.\text{uncontractedList} be the list of indices in {0,1,,n1}\{0, 1, \dots, n-1\} that are not part of any contracted pair, ordered in strictly increasing order. For any index i{0,1,,n}i \in \{0, 1, \dots, n\}, the list obtained by applying the embedding i.succAboveEmb:Fin nFin (n+1)i.\text{succAboveEmb} : \text{Fin } n \hookrightarrow \text{Fin } (n+1) to each element of c.uncontractedListc.\text{uncontractedList} is non-decreasingly sorted (i.e., its elements are pairwise \le). The embedding i.succAboveEmbi.\text{succAboveEmb} maps an index xx to xx if x<ix < i and to x+1x+1 if xix \ge i.

theorem

The list i.succAboveEmb(c.uncontractedList)i.\text{succAboveEmb}(c.\text{uncontractedList}) has no duplicates

#uncontractedList_succAboveEmb_nodup

For a Wick contraction cc on nn indices, let c.uncontractedListc.\text{uncontractedList} be the list of indices in {0,1,,n1}\{0, 1, \dots, n-1\} that are not part of any contracted pair in cc, ordered in strictly increasing order. For any index i{0,1,,n}i \in \{0, 1, \dots, n\}, let i.succAboveEmb:{0,1,,n1}{0,1,,n}i.\text{succAboveEmb} : \{0, 1, \dots, n-1\} \hookrightarrow \{0, 1, \dots, n\} be the embedding that maps an index xx to xx if x<ix < i and to x+1x+1 if xix \ge i. Then the list obtained by applying i.succAboveEmbi.\text{succAboveEmb} to each element of c.uncontractedListc.\text{uncontractedList} contains no duplicate elements.

theorem

The list formed by ordered insertion of ii into the mapped uncontracted list has no duplicates

#uncontractedList_succAbove_orderedInsert_nodup

For a Wick contraction cc on nn indices, let c.uncontractedListc.\text{uncontractedList} be the list of all indices in {0,1,,n1}\{0, 1, \dots, n-1\} that are not part of any contracted pair, ordered in strictly increasing order. For any index i{0,1,,n}i \in \{0, 1, \dots, n\}, let i.succAboveEmb:{0,1,,n1}{0,1,,n}i.\text{succAboveEmb} : \{0, 1, \dots, n-1\} \hookrightarrow \{0, 1, \dots, n\} be the embedding that maps an index xx to xx if x<ix < i and to x+1x+1 if xix \ge i. Then, the list obtained by performing an ordered insertion of ii (with respect to the \le relation) into the list formed by applying i.succAboveEmbi.\text{succAboveEmb} to each element of c.uncontractedListc.\text{uncontractedList} contains no duplicate elements.

theorem

The ordered insertion of ii into the mapped uncontracted list is sorted

#uncontractedList_succAbove_orderedInsert_sorted

For a Wick contraction cc on nn indices, let c.uncontractedListc.\text{uncontractedList} be the strictly increasing list of indices in {0,1,,n1}\{0, 1, \dots, n-1\} that are not part of any contracted pair. For any index i{0,1,,n}i \in \{0, 1, \dots, n\}, let i.succAboveEmb:{0,,n1}{0,,n}i.\text{succAboveEmb} : \{0, \dots, n-1\} \to \{0, \dots, n\} be the embedding that maps xx to xx if x<ix < i and to x+1x+1 if xix \ge i. Then the list formed by performing an ordered insertion of ii (maintaining the \le relation) into the list obtained by applying i.succAboveEmbi.\text{succAboveEmb} to each element of c.uncontractedListc.\text{uncontractedList} is sorted non-decreasingly.

theorem

The set of the ordered insertion of ii into the mapped uncontracted list equals the insertion of ii into the mapped uncontracted set

#uncontractedList_succAbove_orderedInsert_toFinset

For a Wick contraction cc on nn indices, let c.uncontractedListc.\text{uncontractedList} be the sorted list of indices that are not part of any contracted pair, and let c.uncontractedc.\text{uncontracted} be the set of these indices. Given an index i{0,1,,n}i \in \{0, 1, \dots, n\}, let i.succAboveEmb:{0,,n1}{0,,n}i.\text{succAboveEmb}: \{0, \dots, n-1\} \to \{0, \dots, n\} be the embedding that "skips" ii (mapping j<ij < i to jj and jij \ge i to j+1j+1). Then, the set of elements in the list formed by an ordered insertion of ii into the list of mapped uncontracted indices is equal to the set formed by inserting ii into the set of mapped uncontracted indices.

theorem

Ordered insertion into the mapped uncontracted list equals the sorted insertion into the mapped uncontracted set

#uncontractedList_succAbove_orderedInsert_eq_sort

For a Wick contraction cc on nn indices, let c.uncontractedListc.\text{uncontractedList} be the list of uncontracted indices in strictly increasing order, and let c.uncontractedc.\text{uncontracted} be the set of these indices. For any index i{0,1,,n}i \in \{0, 1, \dots, n\}, let fi:{0,1,,n1}{0,1,,n}f_i: \{0, 1, \dots, n-1\} \hookrightarrow \{0, 1, \dots, n\} be the embedding (known as `succAboveEmb`) that maps xx to xx if x<ix < i and to x+1x+1 if xix \ge i. Then, the list obtained by performing an ordered insertion of ii (maintaining the \le relation) into the list formed by applying fif_i to each element of c.uncontractedListc.\text{uncontractedList} is equal to the list obtained by sorting the set {fi(u)uc.uncontracted}{i}\{f_i(u) \mid u \in c.\text{uncontracted}\} \cup \{i\} in non-decreasing order.

theorem

Sorted uncontracted list of ϕi1(c,none)\phi_i^{-1}(c, \text{none}) equals the ordered insertion of ii into the mapped list

#uncontractedList_extractEquiv_symm_none

For a Wick contraction cc on nn indices, let L(c)L(c) be the list of its uncontracted indices sorted in strictly increasing order. Let ϕi:Wn+1cWnOption(U(c))\phi_i : \mathcal{W}_{n+1} \cong \sum_{c \in \mathcal{W}_n} \text{Option}(U(c)) be the equivalence defined by extracting the index i{0,,n}i \in \{0, \dots, n\}, and let c=ϕi1(c,none)c' = \phi_i^{-1}(c, \text{none}) be the Wick contraction on n+1n+1 indices formed by inserting ii as an uncontracted index. Then the sorted list of uncontracted indices of cc' is given by: \[ L(c') = \text{ordered\_insert}_{\le}(i, [f_i(j) \mid j \in L(c)]) \] where fi:{0,,n1}{0,,n}f_i: \{0, \dots, n-1\} \to \{0, \dots, n\} is the increasing embedding that skips ii (mapping jj to jj if j<ij < i and to j+1j+1 if jij \geq i), and ordered_insert\text{ordered\_insert}_{\le} denotes the operation of inserting an element into a list while maintaining non-decreasing order.

theorem

Set of mapped uncontracted list with kk-th index erased equals mapped uncontracted set with image of kk-th element removed

#uncontractedList_succAboveEmb_eraseIdx_toFinset

For a Wick contraction cc on nn indices, let c.uncontractedc.\text{uncontracted} be the set of indices that are not part of any contracted pair, and let c.uncontractedListc.\text{uncontractedList} be the list of these indices sorted in strictly increasing order. For any index i{0,1,,n}i \in \{0, 1, \dots, n\}, let fi:{0,1,,n1}{0,1,,n}f_i: \{0, 1, \dots, n-1\} \hookrightarrow \{0, 1, \dots, n\} be the embedding (known as `succAboveEmb`) that maps xx to xx if x<ix < i and to x+1x+1 if xix \ge i. For any natural number kk less than the number of uncontracted indices, the set of elements in the list obtained by applying fif_i to c.uncontractedListc.\text{uncontractedList} and then removing the element at position kk is equal to the set {fi(u)uc.uncontracted}\{f_i(u) \mid u \in c.\text{uncontracted}\} with the element fi(c.uncontractedList[k])f_i(c.\text{uncontractedList}[k]) removed.

theorem

The embedded uncontracted list of a Wick contraction remains sorted after an element is removed

#uncontractedList_succAboveEmb_eraseIdx_sorted

Let cc be a Wick contraction on nn indices and let c.uncontractedListc.\text{uncontractedList} be the list of indices in {0,1,,n1}\{0, 1, \dots, n-1\} that are not part of any contracted pair, ordered in strictly increasing order. For any index i{0,1,,n}i \in \{0, 1, \dots, n\}, let i.succAboveEmb:Fin nFin (n+1)i.\text{succAboveEmb} : \text{Fin } n \hookrightarrow \text{Fin } (n+1) be the embedding that maps an index xx to xx if x<ix < i and to x+1x+1 if xix \ge i. For any kNk \in \mathbb{N}, the list formed by applying i.succAboveEmbi.\text{succAboveEmb} to each element of c.uncontractedListc.\text{uncontractedList} and then removing the element at index kk is sorted in non-decreasing order (i.e., its elements are pairwise \le).

theorem

The list i.succAboveEmb(c.uncontractedList)i.\text{succAboveEmb}(c.\text{uncontractedList}) with index kk removed has no duplicates

#uncontractedList_succAboveEmb_eraseIdx_nodup

For a Wick contraction cc on nn indices, let c.uncontractedListc.\text{uncontractedList} be the list of uncontracted indices in {0,1,,n1}\{0, 1, \dots, n-1\} sorted in strictly increasing order. For any index i{0,1,,n}i \in \{0, 1, \dots, n\}, let i.succAboveEmb:{0,1,,n1}{0,1,,n}i.\text{succAboveEmb} : \{0, 1, \dots, n-1\} \hookrightarrow \{0, 1, \dots, n\} be the embedding that maps xx to xx if x<ix < i and to x+1x+1 if xix \ge i. For any natural number kk, the list obtained by applying i.succAboveEmbi.\text{succAboveEmb} to each element of c.uncontractedListc.\text{uncontractedList} and then removing the element at position kk contains no duplicate elements.

theorem

Erasing from the mapped uncontracted list equals sorting the erased mapped uncontracted set

#uncontractedList_succAboveEmb_eraseIdx_eq_sort

Let cc be a Wick contraction on nn indices {0,1,,n1}\{0, 1, \dots, n-1\}. Let Uc{0,1,,n1}U_c \subset \{0, 1, \dots, n-1\} be the set of uncontracted indices of cc, and let LcL_c be the list of these indices sorted in strictly increasing order. For any index i{0,1,,n}i \in \{0, 1, \dots, n\}, let fi:{0,1,,n1}{0,1,,n}f_i: \{0, 1, \dots, n-1\} \hookrightarrow \{0, 1, \dots, n\} be the "successor-above" embedding defined by fi(x)=xf_i(x) = x if x<ix < i and fi(x)=x+1f_i(x) = x + 1 if xix \ge i. For any natural number kk less than the length of LcL_c, the list obtained by applying fif_i to each element of LcL_c and then removing the element at position kk is equal to the list obtained by taking the image of the set UcU_c under fif_i, removing the element fi(Lc[k])f_i(L_c[k]), and sorting the resulting set in non-decreasing order.

theorem

Uncontracted list after inserting index ii and contracting it with kk is the shifted list LcL_c with kk erased

#uncontractedList_extractEquiv_symm_some

Let cc be a Wick contraction on nn indices {0,,n1}\{0, \dots, n-1\}, and let LcL_c be the list of its uncontracted indices sorted in strictly increasing order. For any index i{0,,n}i \in \{0, \dots, n\} and any uncontracted index kk of cc, let fi:{0,,n1}{0,,n}f_i: \{0, \dots, n-1\} \hookrightarrow \{0, \dots, n\} be the successor-above embedding (where fi(x)=xf_i(x) = x if x<ix < i and fi(x)=x+1f_i(x) = x + 1 if xix \ge i). Consider the Wick contraction on n+1n+1 indices obtained by inserting the new index ii and contracting it with kk (via the inverse of the extraction equivalence (extractEquiv i)1( \text{extractEquiv } i )^{-1}). The sorted list of uncontracted indices for this new contraction is equal to the list obtained by applying fif_i to each element of LcL_c and then removing the element at the position where kk was originally located.

theorem

The set of the mapped uncontracted list equals the mapped uncontracted set

#uncontractedList_succAboveEmb_toFinset

For a Wick contraction cc on nn indices, let LcL_c be the sorted list of uncontracted indices and UcU_c be the finite set of uncontracted indices. For any index i{0,1,,n}i \in \{0, 1, \dots, n\}, let ei:{0,1,,n1}{0,1,,n}e_i: \{0, 1, \dots, n-1\} \to \{0, 1, \dots, n\} be the successor-above embedding (defined as ei(j)=je_i(j) = j if j<ij < i and ei(j)=j+1e_i(j) = j + 1 if jij \ge i). Then, the set of elements in the list obtained by mapping eie_i over LcL_c is equal to the image of UcU_c under eie_i.

definition

Number of uncontracted indices less than ii

#uncontractedListOrderPos

Given a Wick contraction cc on nn indices and an index i{0,1,,n}i \in \{0, 1, \dots, n\}, this function calculates the number of uncontracted indices in cc that are strictly less than ii. Formally, if LcL_c is the sorted list of indices in {0,1,,n1}\{0, 1, \dots, n-1\} that are not part of any contracted pair in cc, the result is the length of the sublist containing all xLcx \in L_c such that x<ix < i. This represents the position or index at which ii would be inserted into LcL_c to maintain its sorted order.

theorem

Pc,ilength(Lc)P_{c,i} \le \text{length}(L_c) for a Wick contraction cc

#uncontractedListOrderPos_le_length

For a Wick contraction cc on nn indices, let LcL_c be the sorted list of uncontracted indices (indices not part of any contracted pair). For any index i{0,1,,n}i \in \{0, 1, \dots, n\}, let Pc,iP_{c,i} be the number of uncontracted indices in cc that are strictly less than ii. Then Pc,iP_{c,i} is less than or equal to the total length of LcL_c.

theorem

The First Pc,iP_{c,i} Elements of the Uncontracted List are Exactly Those Less Than ii

#take_uncontractedListOrderPos_eq_filter

Let cc be a Wick contraction on nn indices and LcL_c be the sorted list of its uncontracted indices (those indices not part of any contracted pair). For any index i{0,1,,n}i \in \{0, 1, \dots, n\}, let Pc,iP_{c,i} be the number of uncontracted indices strictly less than ii. Then, the sublist formed by the first Pc,iP_{c,i} elements of LcL_c is equal to the sublist of all elements xLcx \in L_c such that x<ix < i.

theorem

The first Pc,iP_{c,i} elements of LcL_c equals the sorted set of uncontracted indices less than ii

#take_uncontractedListOrderPos_eq_filter_sort

For a Wick contraction cc on nn indices, let LcL_c be the sorted list of uncontracted indices and ScS_c be the set of uncontracted indices. For any index i{0,1,,n}i \in \{0, 1, \dots, n\}, let Pc,iP_{c,i} be the number of uncontracted indices strictly less than ii. Then, the sublist formed by the first Pc,iP_{c,i} elements of LcL_c is equal to the list obtained by sorting the set of uncontracted indices {xScx<i}\{x \in S_c \mid x < i\} in non-decreasing order.

theorem

Ordered insertion of ii into the shifted uncontracted list is insertion at index Pc,iP_{c,i}

#orderedInsert_succAboveEmb_uncontractedList_eq_insertIdx

Let cc be a Wick contraction on nn indices and i{0,1,,n}i \in \{0, 1, \dots, n\}. Let LcL_c be the sorted list of uncontracted indices of cc (those indices in {0,1,,n1}\{0, 1, \dots, n-1\} that are not part of any contracted pair). Let fi:{0,1,,n1}{0,1,,n}f_i: \{0, 1, \dots, n-1\} \hookrightarrow \{0, 1, \dots, n\} be the embedding (`succAboveEmb`) that maps xx to xx if x<ix < i and to x+1x+1 if xix \ge i. Let Pc,iP_{c,i} be the number of uncontracted indices in cc that are strictly less than ii. Then, the ordered insertion of ii into the list fi(Lc)f_i(L_c) (preserving the \le order) is equal to inserting ii into fi(Lc)f_i(L_c) at index Pc,iP_{c,i}. In symbols: orderedInsert(,i,fi(Lc))=insertIdx(Pc,i,i,fi(Lc))\text{orderedInsert}(\le, i, f_i(L_c)) = \text{insertIdx}(P_{c,i}, i, f_i(L_c))