PhyslibSearch

Physlib.Relativity.Tensors.Evaluation

9 declarations

definition

bb-th basis coefficient of the ii-th vector in a pure tensor pp

#evalPCoeff

Let SS be a tensor species over a field kk and cc be a sequence of colors representing a collection of vector spaces {Vcj}j=0n\{V_{c_j}\}_{j=0}^n. A pure tensor pPure(S,c)p \in \text{Pure}(S, c) is defined as an element of the dependent product j=0nVcj\prod_{j=0}^n V_{c_j}, representing the tensor v0v1vnv_0 \otimes v_1 \otimes \dots \otimes v_n. Given an index i{0,,n}i \in \{0, \dots, n\} and a basis index b{0,,dim(Vci)1}b \in \{0, \dots, \dim(V_{c_i}) - 1\}, the function `evalPCoeff` returns the bb-th coordinate of the ii-th component vector viv_i with respect to the basis of VciV_{c_i} provided by the tensor species.

theorem

`evalPCoeff` after `update` at the same index equals the new vector's coefficient

#evalPCoeff_update_self

Let SS be a tensor species over a field kk and c:{0,,n}Cc: \{0, \dots, n\} \to C be a sequence of colors representing a collection of vector spaces {Vcj}j=0n\{V_{c_j}\}_{j=0}^n. Let pPure(S,c)p \in \text{Pure}(S, c) be a pure tensor, representing the product v0v1vnv_0 \otimes v_1 \otimes \dots \otimes v_n. Let evalPCoeff(i,b,p)\text{evalPCoeff}(i, b, p) be the function that returns the bb-th coordinate of the ii-th component vector viv_i with respect to the basis of VciV_{c_i} provided by the species. For any index i{0,,n}i \in \{0, \dots, n\}, basis index b{0,,dim(Vci)1}b \in \{0, \dots, \dim(V_{c_i}) - 1\}, and vector xVcix \in V_{c_i}, the bb-th basis coefficient of the ii-th component of the pure tensor updated at index ii with xx is equal to the bb-th basis coefficient of xx: evalPCoeff(i,b,update(p,i,x))=repr(x)b \text{evalPCoeff}(i, b, \text{update}(p, i, x)) = \text{repr}(x)_b where repr(x)b\text{repr}(x)_b denotes the bb-th coordinate of xx in the basis of VciV_{c_i}.

theorem

`evalPCoeff` is invariant under `update` at distinct indices

#evalPCoeff_update_succAbove

Let SS be a tensor species over a field kk and c:{0,,n}Cc: \{0, \dots, n\} \to C be a sequence of colors representing a collection of vector spaces {Vcm}m=0n\{V_{c_m}\}_{m=0}^n. Let pp be a pure tensor, defined as an element of the dependent product m=0nVcm\prod_{m=0}^n V_{c_m}, which represents the simple tensor v0v1vnv_0 \otimes v_1 \otimes \dots \otimes v_n. Let evalPCoeff(i,b,p)\text{evalPCoeff}(i, b, p) be the function that returns the bb-th coordinate of the ii-th component vector viv_i with respect to the basis of VciV_{c_i}. For any index i{0,,n}i \in \{0, \dots, n\} and j{0,,n1}j \in \{0, \dots, n-1\}, let k=i.succAbove jk = i.\text{succAbove } j denote an index in {0,,n}\{0, \dots, n\} distinct from ii. If the kk-th component of pp is updated with a new vector xVckx \in V_{c_k}, the bb-th basis coefficient of the ii-th component vector remains unchanged: evalPCoeff(i,b,update pkx)=evalPCoeff(i,b,p) \text{evalPCoeff}(i, b, \text{update } p \, k \, x) = \text{evalPCoeff}(i, b, p)

definition

Evaluation of the ii-th index of a pure tensor pp at basis index bb

#evalP

Let SS be a tensor species over a field kk and c:{0,,n}Cc: \{0, \dots, n\} \to C be a sequence of colors. A pure tensor pp of type cc is a family of vectors (v0,v1,,vn)(v_0, v_1, \dots, v_n) representing the tensor product v0v1vnv_0 \otimes v_1 \otimes \dots \otimes v_n, where each vjv_j belongs to the vector space VcjV_{c_j} associated with color cjc_j. Given an index i{0,,n}i \in \{0, \dots, n\} and a basis index bb for the vector space VciV_{c_i}, the function evalP ibp\text{evalP } i \, b \, p returns the tensor of rank nn formed by evaluating the ii-th index of pp at the bb-th basis element. This is defined as: \[ \text{evalP } i \, b \, p = (v_i)_b \cdot (v_0 \otimes \dots \otimes v_{i-1} \otimes v_{i+1} \otimes \dots \otimes v_n) \] where (vi)b(v_i)_b is the bb-th coordinate of the vector viv_i with respect to the basis of VciV_{c_i} provided by the tensor species SS.

theorem

Additivity of Pure Tensor Evaluation evalP\text{evalP} with respect to Component Updates

#evalP_update_add

Let SS be a tensor species over a field kk and c:{0,,n}Cc: \{0, \dots, n\} \to C be a sequence of colors, where each c(m)c(m) corresponds to a vector space Vc(m)V_{c(m)}. Let pp be a pure tensor (formally an element of the dependent product m=0nVc(m)\prod_{m=0}^n V_{c(m)}) representing the simple tensor v0vnv_0 \otimes \dots \otimes v_n. Let evalP(i,b,p)\text{evalP}(i, b, p) be the operation that evaluates the ii-th index of pp at the bb-th basis element of Vc(i)V_{c(i)}, returning a tensor of rank nn. For any indices i,j{0,,n}i, j \in \{0, \dots, n\}, a basis index bb for Vc(i)V_{c(i)}, and vectors x,yVc(j)x, y \in V_{c(j)}, the evaluation operation is additive with respect to updating the jj-th component of the pure tensor: evalP(i,b,update(p,j,x+y))=evalP(i,b,update(p,j,x))+evalP(i,b,update(p,j,y)) \text{evalP}(i, b, \text{update}(p, j, x + y)) = \text{evalP}(i, b, \text{update}(p, j, x)) + \text{evalP}(i, b, \text{update}(p, j, y)) where update(p,j,v)\text{update}(p, j, v) denotes the pure tensor pp with its jj-th component replaced by vv.

theorem

Scalar Multiplicativity of evalP\text{evalP} under Component Update evalP(i,b,update(p,j,rx))=revalP(i,b,update(p,j,x))\text{evalP}(i, b, \text{update}(p, j, r \cdot x)) = r \cdot \text{evalP}(i, b, \text{update}(p, j, x))

#evalP_update_smul

Let SS be a tensor species over a field kk and c:{0,,n}Cc: \{0, \dots, n\} \to C be a sequence of colors, where VcmV_{c_m} denotes the vector space associated with color cmc_m. Let pp be a pure tensor of type cc, representing the family of vectors (v0,,vn)(v_0, \dots, v_n) where vmVcmv_m \in V_{c_m}. For any indices i,j{0,,n}i, j \in \{0, \dots, n\}, a basis index bb for the vector space VciV_{c_i}, a scalar rkr \in k, and a vector xVcjx \in V_{c_j}, the evaluation of the ii-th index at basis index bb is homogeneous with respect to scalar multiplication in the jj-th component: evalP(i,b,update(p,j,rx))=revalP(i,b,update(p,j,x)) \text{evalP}(i, b, \text{update}(p, j, r \cdot x)) = r \cdot \text{evalP}(i, b, \text{update}(p, j, x)) where update(p,j,x)\text{update}(p, j, x) denotes the pure tensor obtained by replacing the jj-th component of pp with xx, and evalP(i,b,p)\text{evalP}(i, b, p) is the rank-nn tensor defined by (vi)b(v0vi1vi+1vn)(v_i)_b \cdot (v_0 \otimes \dots \otimes v_{i-1} \otimes v_{i+1} \otimes \dots \otimes v_n), where (vi)b(v_i)_b is the bb-th coordinate of viv_i with respect to the basis of VciV_{c_i}.

definition

Multilinear map for the evaluation of the ii-th index at basis index bb

#evalPMultilinear

Let SS be a tensor species over a field kk and c:{0,,n}Cc: \{0, \dots, n\} \to C be a sequence of colors. For a fixed index i{0,,n}i \in \{0, \dots, n\} and a basis index bb for the vector space VciV_{c_i} (the space associated with color cic_i), the function `evalPMultilinear i b` is the multilinear map from the product of vector spaces j=0nVcj\prod_{j=0}^n V_{c_j} to the space of tensors of rank nn with the color sequence ci.succAbovec \circ i.\text{succAbove} (where the ii-th color is omitted). Given a tuple of vectors (v0,,vn)(v_0, \dots, v_n), the map is defined by: \[ (v_0, \dots, v_n) \mapsto (v_i)_b \cdot (v_0 \otimes \dots \otimes v_{i-1} \otimes v_{i+1} \otimes \dots \otimes v_n) \] where (vi)b(v_i)_b is the bb-th coordinate of the vector viv_i with respect to the basis of VciV_{c_i} provided by the tensor species SS.

definition

kk-linear map for the evaluation of the ii-th tensor index at basis index bb

#evalT

Let SS be a tensor species over a field kk and c:{0,,n}Cc: \{0, \dots, n\} \to C be a sequence of colors. For a fixed index i{0,,n}i \in \{0, \dots, n\} and a basis index bb for the vector space VciV_{c_i} associated with the color cic_i, the kk-linear map evalT i b\text{evalT } i \text{ } b maps a tensor tTensor Sct \in \text{Tensor } S c to a tensor of rank nn with the color sequence ci.succAbovec \circ i.\text{succAbove} (the original sequence cc with the ii-th element omitted). This map is defined as the linear extension of the multilinear evaluation map, which acts on a pure tensor as: \[ v_0 \otimes \dots \otimes v_n \mapsto (v_i)_b \cdot (v_0 \otimes \dots \otimes v_{i-1} \otimes v_{i+1} \otimes \dots \otimes v_n) \] where (vi)b(v_i)_b is the bb-th coordinate of the vector viv_i with respect to the basis of VciV_{c_i} provided by the tensor species SS.

theorem

evalT ib(p.toTensor)=evalP ibp\text{evalT } i \, b (p.\text{toTensor}) = \text{evalP } i \, b \, p

#evalT_pure

Let SS be a tensor species over a field kk and c:{0,,n}Cc: \{0, \dots, n\} \to C be a sequence of colors. For any index i{0,,n}i \in \{0, \dots, n\}, any basis index bb for the vector space VciV_{c_i} associated with the color cic_i, and any pure tensor pp (representing the tuple of vectors (v0,,vn)(v_0, \dots, v_n)), the kk-linear evaluation map evalT ib\text{evalT } i \, b applied to the tensor j=0nvj\bigotimes_{j=0}^n v_j is equal to the direct evaluation of the pure tensor evalP ibp\text{evalP } i \, b \, p. That is, \[ \text{evalT } i \, b (p.\text{toTensor}) = \text{evalP } i \, b \, p \] where p.toTensorp.\text{toTensor} is the image of the vectors in the tensor product space, and evalP\text{evalP} is defined as (vi)b(v0vi1vi+1vn)(v_i)_b \cdot (v_0 \otimes \dots \otimes v_{i-1} \otimes v_{i+1} \otimes \dots \otimes v_n).