Phil Lucht Math & Physics Archive
Home / Math and Physics Files / Math / Wedge World / tensor wedge doc / Chapter 10 development files / Ch 10 section versions

Section 10_7 10_8 10_9

DOCX · 957.8 KB
Open DOCX file

Working document by Phil, started 3.6.16 and finished 4.13.16, containing draft sections 10.7 (pullback operator R and properties of F*), 10.8 (alternate ways to write the pullback of a k-form) and 10.9 (a change of notation). Covers pullback of 0-forms and k-forms in Dirac notation, linearity, compatibility with wedge products, commuting with d, and composition (G o F)*. Source material below the sections was checked for omissions.

AI-written summary; may contain errors.

Extracted text (machine-read; may contain errors)
Sections 10.7, 10.8 and 10.9 PhL started 3.6.16 finished 4.13.16 Here is where I developed these three sections. Below those sections is source material that is now all blue. I went through all of that now-blue source material to make sure nothing of value was omitted. Things were rather complicated then, for example the derivation of the tensor function pullback equation, which is now almost trivial. Today 4.13.16 I am installing these three sections and I will then proof them after installation . 10.7 The Pullback Operator R and properties of the Pullback Function F* 1 10.8 Alternate ways to write the pullback of a k-form 8 10.9 A Change of Notation 11 10.7 The Pullback Operator R and properties of the Pullback Function F* From (10.6.e.2), or just from the fact that vectors transform as v' = Rv, we know that u'i= Rui |u'i> = R |ui> i = 1,2..n . (2.5.1) (10.7.1) One can say that the n axis-aligned basis vectors ui in x-space are "pushed forward" by R to become the tangent-space-spanning vectors u'i in x'-space. Applying S to both sides and using (10.6.d.1) that SR = 1, one finds that ui= S u'i |ui> = S |u'i> i = 1,2..n . (10.7.2) From the package (10.6.a.1) item (h) we know that S = RT and S = RT for the corresponding Dirac operators, so the above may be written, ui= RT u'i |ui> = RT |u'i> i = 1,2..n . (10.7.3) Thus, while operator R "pushes forward" the |ui> to the |u'i>, the operator RT "pulls back" the |u'i> from x'-space into the |ui> in x-space, just reversing the first process. For the label-up u and e basis vectors one then has, u'i = Rui |u'i> = R |ui> i = 1,2..n push forward ui = RT u'i |ui> = RT |u'i> i = 1,2..n pull back e'i = Rei |e'i> = R |ei> i = 1,2..n push forward ei = RT e'i |ei> = RT |e'i> i = 1,2..n pull back . (10.7.4) Here is a picture, reminiscent of Fig (2.5.4), showing above activity just for the u1 and u'1 basis vectors, (10.7.5) In the dual space of bras (linear functionals) (10.7.4) becomes, according to (2.11.g10), (u'i)T= (ui)T RT <u'i| = <ui|RT i = 1,2..n push forward (ui)T = (u'i)TR <ui| = <u'i|R i = 1,2..n pull back (e'i)T= (ei)T RT <e'i| = <ei|RT i = 1,2..n push forward (ei)T = (e'i)TR <ei| = <e'i|R i = 1,2..n pull back . (10.7.6) We refer to the R operator acting to the left as the pullback operator. A picture similar to (10.7.5), which has dual x-space space (Rn)* on the left and dual x'-space (Rm)'* on the right, would show the push forward <u'1| = <u1|RT in red and the pullback <u1| = <u'1|R in blue. Below we shall have hybrid pictures showing the non-dual spaces but also showing the mapping of linear functionals between the dual-spaces. Recall now the notations used in (8.7.1) for basis vectors in the dual wedge vector spaces Λ'k and Λk , λ'^I ≡ λ'i ^ λ'i ^ .... ^ λ'i = <e'^I| ≡ <e'i| ^ <e'i| ^ ..... ^ <e'i| λ^I ≡ λi ^ λi ^ .... ^ λi = <u^I| ≡ <ui| ^ <ui| ^ ..... ^ <ui| (10.7.7) where the e'i (ui) are axis-aligned basis vectors in x'-space (x-space). Recall also that, <ei| = <e'i|R (10.7.6) ei = Rij uj or |ei> = Rij |uj> <ei| = Rij<uj| = <e'i|R (2.4.4) so that <e'^I|R = <e'i|R ^ <e'i|R ^ ..... <e'i| R // (8.9.d.15) = ( Rij<uj| ) ^ ( Rij<uj| ) ^ ... ^ ( Rij<uj| ) // just above = RijRij ...Rij ( <uj| ^ <uj| ^ ... ^ <uj| ) // reorder = ΣJ RIJ <u^J| // multiindex or [λ'^I R] = <e'^I|R = ΣJ RIJ <u^J| = ΣJ RIJ λ^J (10.7.8) On the last line we write [λ'^I R] where R acts to the left on λ'^I as a reminder of what is happening in the Dirac notation. For k=1 one would write <e'i|R = [λ'iR] . Eq. (10.7.8) shows that the pullback of a k-form basis vector λ'^I = <e'^I| from dual x'-space to dual x-space is a linear combination of k-form basis vectors λ^J = <u^J| in dual x-space which is then some k-form in dual x-space. The above equations are meaningful for k ≥ 1. For k=0, a 0-form in x'-space is just a scalar function f(x'). Since there are no basis vectors involved, there is no shuffling with RIJ and the pullback of the scalar f(x') is just itself. That is to say, there is no distinction between the spaces Λ0(Rm) = V0 = K and Λ'0(Rn) = V'0 = K where K is the field of scalars . However, in x-space we want any object to be expressed in terms of x-space variables, so we write f(x') as f(F(x)) since x' = F(x). Therefore, Fact: The pullback of a 0-form may be written as [f(x') R] = f(x') = f(F(x)) (10.7.9) so R is really the unity operator in this Λ0 = V0 = K (scalars) space. Note that [f(x')g(x') R] = f(x')g(x') = [f(x') R] [f(x') R] . (10.7.10) The pullback of a 0-form (a scalar function) times a k-form basis vector is then, [f(x') λ'^I ] R = < f(x') e'^I | R = ( f(x') < e'^I | ) R // the space Λ'k(Rm) is linear since it is a vector space = f(x') ( < e'^I | R ) // R is a linear operator as in (2.11.g.29) = [f(x') R] [λ'^I R ] // using (10.7.9) and (10.7.8) . (10.7.11) The pullback of an arbitrary k-form is then given by, αx' = Σ'I fI(x')λ'^I ϵ Λ'k // k-form as in (10.1.10) but now for x'-space (10.7.12) [αx'R] = < Σ'I fI(x') e'^I | R = [ Σ'I fI(x') < e'^I | ] R // the space Λk(Rm) is linear since it is a vector space = Σ'I fI(x') [< e'^I | R ] // R is a linear operator as in (2.11.g.29) = Σ'I fI(x') [ λ'^I R ] // λ'^I = < e'^I | = Σ'I fI(F(x)) ΣJ RIJ λ^J // (10.7.8) = ΣJ [ Σ'I fI(F(x)) RIJ ] λ^J // reorder = ΣJ GJ(x)λ^J ϵ Λk where GJ(x) ≡ Σ'I fI(F(x)) RIJ (10.7.13) Note that αx' is a k-form in dual x'-space, while [αx'R] is a linear combination of the λ^J and therefore is a k-form in dual x-space. This will be rewritten with the ordered sum Σ'J in section 10.8 below. So, Fact: The pullback of a k-form in Λ'k(Rm) is a k-form in Λk(Rn) . (10.7.14) Finally, for a general k-form scaled by a function g(x'), using the same steps as above, (g(x')αx')R = < g(x') αx' | R = g(x') <αx' | R = [g(x')R ] [αx'R] . (10.7.15) The pullback of a rank-k tensor function is obtained by closing [αx'R] with a vector in the space Vk , [αx'R] (v1,v2....vk) = < αx'|R| v1,v2....vk> = < αx'|R [ | v1> | v2> ..... | vk> ] // definition of |v1,v2....vk> = < αx'|[ | Rv1> | Rv2> ..... | Rvk> ] // (5.6.17) = < αx'| Rv1,Rv2....Rvk> = αx'(Rv1,Rv2....Rvk) . (10.7.16) The object [αx'R] (v1,v2....vk) is a rank-k tensor function in Λ'kf while the pulled back object is a rank-k tensor function in Λkf. These tensor functions are the objects that Spivak [1965] uses which he calls k-tensors. Presentations which use only tensor functions regard (10.7.16) as the definition of a pullback of a differential k-form. The notation used above with the Dirac operator R acting to the left on a dual space vector is a bit clumsy, so one defines the following pullback function where <α| is any k-form, F*(α) ≡ <α | R (10.7.17) F* : Λ'k(Rm) → Λk(Rn) . (10.7.18) Recall that the differential matrix R = (DF) and its associated Dirac operator R are specific to the underlying general transformation x' = F(x), so to be more precise we could have written RF and RF. The letter F in the function F* makes this connection explicit. Various equations above can now be recast in terms of the pullback function F* : Some Properties of the F* pullback function (10.7.19) 0 F*(α) ≡ <α | R = <α | RF // definition of F*, (10.7.17) 1 F*(f(x')) = f(x') = f(F(x)) // F* on a 0-form, (10.7.9) for k = 0 2 F*(f(x') g(x') ) = F*(f(x')) F*(g(x')) // F* on a product of two 0-forms, (10.7.10) 3 F*(f(x') λ'^I) = F*(f(x')) F*( λ'^I) // F* on 0-form and basis-vector k-form, (10.7.11) 4 F*(λ'^I) = ΣJ RIJ λ^J // F* on a basis-vector k-form, (10.7.9) for k ≥ 1 5 F*(λ'i) = Σj Rij λj // F* on a basis-vector 1-form, k=1 of the above 6 αx' = Σ'I fI(x')λ'^I // general k-form in Λ'k, (10.7.12) 7 F*(αx') = Σ'I fI(F(x)) ΣJ RIJ λ^J // F* pulling back a general k-form from Λ'k, (10.7.13) 8 F*(g(x') αx') = F*(g(x')) F*(αx') // F* on a 0-form times a general k-form, (10.7.15) 9 [F*(αx')](v1,v2...vk) = αx'(Rv1,Rv2...Rvk) // F* pulling back a rank-k tensor function, (10.7.16) Note that ΣJ in the above equations is the redundant symmetric sum. In the next section we restate some of the above equations using the ordered sum Σ'J, and then we restate again using cosmetic notation. Other Properties of the F* pullback function Fact: F* is linear, so F*(s1α' + s2β') = s1F*(α') + s2F*(β') where α' and β' are k-forms. (10.7.20) Proof for k>0 : F*( s1α' + s2β') = <s1α' + s2β'| R // (10.7.17) definition of F* = s1(<α' |R) + s2(<β' |R) // R is a linear operator, see (2.11.g.29) = s1F*(α') + s2F*(β') // (10.7.17) definition of F* twice Proof for k=0 : F*( s1f(x') + s2g(x') ) = s1f(x') + s2g(x') // (10.7.16) definition of F* = F*(s1f(x')) + F*(s2g(x')) // (10.7.17) definition of F* twice = s1F*(f(x')) + s2F*(g(x')) // (10.7.19) items 2 and 1 ___________________________________________________________________________________ Fact: F*(α1 ^ α2 ^...^ αN) = F*(α1) ^ F*(α2) ^...^ F*(αN) where αi is an arbitrary ki-form. (10.7.21) Proof: F*(α1 ^ α2 ^....^ αN) = [ <α1| ^ <α2| ^ ... ^ <αN| ] | R // Dirac notation = [ <α1| R ^ <α2| R ^ ... ^ <αN| R ] // (8.9.d.15) = F*(α1) ^ F*(α2) ^...^ F*(αN) . // functional form for φ* QED The result is valid if one or more of the forms are 0-forms. In this case, the two ^ operators surrounding a 0-form can be replaced by one ^. For example, <α1| ^ f(x) ^ <α3| = f(x) <α1| ^ <α3| . In vector space notation, one has Λn ^ Λ0 ^ Λm = Λn ^ Λm where Λ0 is the space of scalars. ___________________________________________________________________________________ Fact: F*(dα') = d(F*(α')) where α' ϵ Λ'k is a k-form in x'-space (10.7.22) This Fact says that the pullback function F* commutes with the external derivative operator d. Proof: Show that Left Hand Side = Right Hand Side: LHS: α' = Σ'IfI(x') λ'^I ϵ Λ'k (k-form in x'-space) // (10.7.12) dα' = Σ'I dfI(x') λ'^I = Σ'I Σj=1m [∂'jfI(x')] λ'j ^ λ'^I ϵ Λ'k+1 // (10.3.6) F*(dα') = Σ'I Σj=1m [∂'jfI(x')] F*(λ'j ^ λ'^I) ϵ Λk+1 // (10.7.20) F* linear = Σ'I Σj=1m [∂'jfI(x')] F*(λ'j) ^ F*(λ'^I) . // (10.7.21) product RHS: α' = Σ'IfI(x') λ'^I ϵ Λ'k (k-form in x'-space) // (10.7.12) F*(α') = Σ'I F*(fI(x')) F*(λ'^I) ϵ Λk // (10.7.19) item 3 = Σ'I fI(F(x)) F*(λ'^I) ϵ Λk // (10.7.19) item 1 d(F*(α')) = Σ'I dfI(F(x))) F*(λ'^I) ϵ Λk+1 // (10.3.6) = Σ'I Σj=1m [∂'jfI(x') Σr=1n(∂x'j/∂xr)] λr ^ F*(λ'^I) // (10.3.6) = Σ'I Σj=1m [∂'jfI(x') Σr=1n Rjr] λr ^ F*(λ'^I) // (2.1.2) = Σ'I Σj=1m [∂'jfI(x')] (Σr=1n Rjr λr) ^ F*(λ^I) // regroup = Σ'I Σj=1m [∂'jfI(x')] F*(λ'j) ^ F*(λ'^I) . // (10.7.19) item 5 The LHS and RHS results are the same, so F*(dα') = d(F*(α')) . QED ___________________________________________________________________________________ Corollary: d(F*(dα')) = 0 . (10.7.23) Proof: d(F*(dα')) = d(dF*(α')) = d2 [F*(α')] = 0 // (10.7.22) then (10.3.12) ___________________________________________________________________________________ Fact: F*(G*α) = (G o F)* α where α is a k-form (10.7.24) Proof: This theorem involves two mappings F and G which are composed to form a third H : x" = G(x') x' = F(x) x → x' → x" x → x" F G H x" = G(F(x)) ≡ [G o F ](x) = H(x) H* = (G o F)* dx" = RG dx' dx' = RF dx dx" = RGRFdx x" = H(x) dx" = RHdx so: RH = RGRF and RH = RGRF Using the definition (10.7.17) that F*(β) ≡ <β|RF and G*(α) ≡ <α|RG we find, F*(G*α) = F*(<α|RG ) = (<α|RG ) RF = <α| RGRF = <α|RH = H*(α) = (G o F)* (α) QED If α is a 0-form (a function) α = f(x"), then by (10.7.19) item 1, G*(f(x")) = f(G(x')) so F*(G*α) = F*(G*f(x")) = F*(f(G(x'))) = f(G(F(x))) = f((G o F)(x)) = f(H(x)) = H*(f(x")) = (G o F)*(f(x")) = (G o F)*α QED A Chapter 1 style category diagram for this scenario would be (10.7.25) ___________________________________________________________________________________ The following hybrid drawing shows the forward mapping x' = F(x) between the non-dual spaces, and at the same time the pullback βx = F*(αx') from the dual space Λ'k on the right to dual space Λk on the left, (10.7.26) Here βx is just a made-up name for the pulled back k-form αx'. Recall that x' on αx' means that the k-form αx' = Σ'I fI(x') λ'^I is specific to the point x' on manifold M, while the x on βx means that the k-form βx is specific to the point x in x-space. 10.8 Alternate ways to write the pullback of a k-form The ordered sum form of a k-form pullback Certain expressions above contain the sum ΣJ RIJ λ^J . As shown in Appendix A, because the summand RIJ λ^J has a "factored form" , this sum can be written as on ordered sum Σ'J as follows ΣJ RIJ λ^J = Σ' J det(RIJ) λ^J // (A.8.36) (10.8.1) where the determinant magically appears. We can then rewrite two items from (10.7.19) : 4 F*(λ'^I) = Σ' J det(RIJ) λ^J // F* on a basis-vector k-form 7 F*(αx') = Σ'I fI(F(x)) Σ' J det(RIJ) λ^J // F* pulling back a general k-form from Λ'k = Σ' J gJ(x)λ^J where Σ'I fI(F(x)) det(RIJ) (10.8.2) It is useful to write out (10.8.2) in full detail. using the cosmetic notation λi = dxi , F*(αx') = Σ1≤j<j<....<j≤n Σ1≤i<i<....<i≤m fii...i(F(x)) * det [RIJ] * ( dxi ^ dxi .....^ dxi ) (10.8.3) where RIJ is this kxk matrix, Rij Rij ... Rij RIJ = Rij Rij ... Rij ..... Rij Rij ... Rij (10.8.4) with Rij = (DF)ij = (∂Fi/∂tj) = ∂jFi(t) . // (10.6.2) The object det(RIJ) is a k x k minor of the full "tall" m x n matrix R, so k ≤ n ≤ m in our application. Remember that, due to the ordered sums, all the ir are different, and all the jr are different, so no row or column appears twice in RIJ. The dFi form of a k-form pullback It is customary to define the object shown above in (10.8.1) as a certain k-form, dF^I ≡ ΣJ RIJ λ^J = Σ' J det(RIJ) λ^J (10.8.5) The motivation for doing this arises from the k = 1 case where the above becomes dFi ≡ Rij λj = Rij dxj (10.8.6) where we replace λj by its cosmetic notation dxj. The above equation then "looks just like" the normal calculus differential one obtains from transformation x' = F(x) so x'i = Fi(x), dFi = (∂Fi/∂xj) dxj = (∂x'i/∂xj) dxj = Rijdxj . (10.8.7) That is to say, dFi = Rijdxj dFi = Rij dxj (10.8.8) and in this same cosmetic notation we can rewrite (10.8.5) as dF^I = ΣJ RIJ dxJ = Σ' J det(RIJ) dxJ . (10.8.9) Using this new object, we write (10.8.2) as 4 F*(λ'^I) = dF^I // F* on a basis-vector k-form 7 F*(αx') = Σ'I fI(F(x)) dF^I // F* pulling back a general k-form from Λ'k (10.8.10) This shows that dF^I is just the pullback of a basis vector in Λ'k . In fact, recalling (10.7.6), <ei| = <e'i|R = [λ'iR] = F*(λ'i) = F*(<e'i|) , (10.7.6) we can identify dF^I as an old friend, the wedge product of the dual tangent base vectors en in dual x-space, dF^I = <e^I| ϵ Λk . (10.8.11) As an example of (10.8.9) we write for k = 2, dFi ^ dFi = Σ1≤j<j≤n det dxj ^ dxj . (10.8.12) Note that both sides of the above equation are 2-forms in Λ2, whereas dx'i ^ dx'i is a 2-form in Λ'2, so we cannot identify dFi ^ dFi with dx'i ^ dx'i even though x'i = Fi(x). But from (10.8.8), dFi ^ dFi = F*(λ'i^ λ'i) = F*( dx'i ^ dx'i ) (10.8.13) so in fact dFi ^ dFi is just the pullback of dx'i ^ dx'i . This is just restating the basic fact of (10.7.6) that <ei| = <e'i|R so <ei| is the pullback of <e'i| . The reader will hopefully appreciate our use of red italic font to distinguish differential form objects from calculus objects of the same name. Otherwise things can be very confusing, especially in presentations where all ^ symbols are suppressed and where symmetric and ordered sums are both written as ΣI. Summary all in cosmetic notation dx'^I ≡ dx'i ^ dx'i ^ .... ^ dx'i ϵ Λ'k dx^I ≡ dxi ^ dxi ^ .... ^ dxi ϵ Λk (10.7.7) (10.8.14) Some Properties of the F* pullback function (10.7.19) (10.8.15) 0 F*(α) ≡ <α | R = <α | RF // definition of F*, (10.7.17) 1 F*(f(x')) = f(x') = f(F(x)) // F* on a 0-form, (10.7.9) for k = 0 2 F*(f(x') g(x') ) = F*(f(x')) F*(g(x')) // F* on a product of two 0-forms, (10.7.10) 3 F*(f(x') dx'^I) = F*(f(x')) F*(dx'^I) // F* on 0-form and basis-vector k-form, (10.7.11) 4 F*(dx'^I) = ΣJ RIJ dx^J // F* on a basis-vector k-form, (10.7.9) for k ≥ 1 5 F*(dx'i) = Σj Rij dxj // F* on a basis-vector 1-form, k=1 of the above 6 αx' = Σ'I fI(x') dx'^I // general k-form in Λ'k, (10.7.12) 7 F*(αx') = Σ'I fI(F(x)) ΣJ RIJ dx^J // F* pulling back a general k-form from Λ'k, (10.7.13) 8 F*(g(x') αx') = F*(g(x')) F*(αx') // F* on a 0-form and general k-form, (10.7.15) 9 [F*(αx')](v1,v2...vk) = αx'(Rv1,Rv2...Rvk) // F* pulling back a rank-k tensor function, (10.7.16) Other Properties of the F* pullback function (10.8.16) Fact: F* is linear, so F*(s1α' + s2β') = s1F*(α') + s2F*(β') where α' and β' are k-forms. (10.7.20) Fact: F*(α1 ^ α2 ^...^ αN) = F*(α1) ^ F*(α2) ^...^ F*(αN) where αi is an arbitrary ki-form. (10.7.21) Fact: F*(dα') = d(F*(α')) where α' ϵ Λ'k is a k-form in x'-space (10.7.22) Corollary: d(F*(dα')) = 0 . (10.7.23) Fact: F*(G*α) = (G o F)* α where α is a k-form (10.7.24) The ordered sum form of a k-form pullback ΣJ RIJ dx^J = Σ' J det(RIJ) dx^J // (A.8.36) (10.8.1) (10.8.17) 4 F*(dx'^I) = Σ' J det(RIJ) dx^J // F* on a basis-vector k-form (10.8.18) 7 F*(αx') = Σ'I fI(F(x)) Σ' J det(RIJ) dx^J // F* pulling back a general k-form from Λ'k = Σ' J gJ(x) dx^J where Σ'I fI(F(x)) det(RIJ) (10.8.2) (10.8.19) The dFi form of a k-form pullback dF^I ≡ ΣJ RIJ dx^J = Σ' J det(RIJ) dx^J = F*(dx'^I ) = <e^I| (10.8.9, 10,11) (10.8.20) dFi ^ dFi = Σ1≤j<j≤n det dxj ^ dxj . (10.8.12) (10.8.21) dFi = Rij dxj (10.8.8) (10.8.22) F*(dx'^I) = F*(dx'i ^ dx'i ...^ dx'i) = dFi ^ dFi ...^ dFi = dF^I (10.8.10) (10.8.23) F*(αx') = Σ'I fI(F(x)) dF^I (10.8.10) (10.8.24) 10.9 A Change of Notation and Comparison with Sjamaar and Spivak To this point we have maintained the notation of Chapter 2 (and Tensor) for transformations x' = F(x). To compare our results with other sources, we shall now make the following change : → x-space → t-space x'-space → x-space F → φ general transformation name x' = F(x) → x = φ(t) general transformation equation R = (DF) → R = (Dφ) differential matrix F* → φ* pullback function (10.9.1) Confusingly, in Picture A' the left-side space has the name x-space, while in Picture F' this happens to be the name of the right-side space. This is just a coincidental new definition of x-space. It is like changing the names of variables x→t and x'→x so that under this change f(x,x') → f(t,x). This notation is convenient for presenting results, but it is somewhat clumsy for developing those results as we have done above. Having primes and no primes is very efficient compared to the other changes one must make to develop in this new notation. Just for the record, these changes are shown in Appendix F. Drawings for the new spaces In terms of the new t-space and x-space, this drawing (a translation of Fig (10.7.5) above) shows the push forward and pull back of the first basis vectors in Rn and Rm, (10.9.2) The next drawing (translation of Fig (10.7.26) above) shows the pullback of a differential k-form αx from xΛk to k-form βt in tΛk, (10.9.3) Here βt is just a made-up name for the pulled back k-form αx. Recall that x on αx means that the k-form αx = Σ'I fI(x) xλ^I is specific to the point x on manifold M, while the t on βt means that the k-form βt is specific to the point t in t-space. Here is a more practical picture for the special case n = 2 and k = 2: (10.9.19) Here the open region U is a unit square [0,1]2 which maps into a patch on a torus. That is, if m = 3 the object on the right is a torus in R3, but we can imagine it to be a torus embedded in Rm for any m ≥ 3. The space of vectors defined on U R2 is a 2-dimensional dual space (R*2)(U). On this space we can define either 1-forms or 2-forms. The above picture suggests a 2-form since the region U is an area, and since we will later associate dt1 ^ dt2 with the calculus differential dt1dt2 which represents an area (we are not there yet). The picture shows the "forward map" x = φ(t), suggesting that forward means left to right in the picture. Then αx is "pulled back" right to left from dual x-space to dual t-space where it becomes βt. One could imagine a set of 16x6 = 96 mappings like the one shown above which would "cover the torus", using one little patch for each mapping (with some small overlap between patches). One would then have an atlas of 96 square maps like that on the left which would serve to cover the surface of Planet Toroid. This is the basic idea of a manifold. In the torus example, one could do the job with only 2 maps. Doing it with a single map does not fly since then some seam curve on the torus would map back to two boundaries of the square and the mapping is then not one-to-one and smooth. Manifold mappings have to be continuous in both mapping directions at every point, and a seam is a place without continuity. The aspect ratio of the 2-cube on the left is not significant. One could change it to be an arbitrary rectangle in t-space and select a φ to make it map to the same small image patch in x-space. Or one could construct a mapping φ which maps the unit 2-cube [0,1]2 to the entire left half of the torus. See Sjamaar. The black arrows on the left are the t-space basis vectors tui (only tu2 is labeled). As shown in (10.8.6), these map according to xui = R tui into basis vectors which are tangent to M, and these vectors then span the tangent space TxM at point x on M. It is clear that the two xui vary as the point x on M is varied. As another example consider this situation with n = 1 and k = 1, (10.9.20) Now the domain in t-space is U = 1-cube [0,1] which maps to a (generally non-planar) red curve which is embedded in Rm . Here αx and βt are 1-forms. The red curve segment V lies on the manifold curve M as shown, just as the patch of the previous example lay on the torus. There is only one basis vector tu in t-space (not shown) and it maps to the unlabeled black arrow on the right which is xu and is of course tangent to the curve at x. We now reproduce the "Summary in all cosmetic notation" given above at the end of Section 10.8 but in terms of this new notation: Summary all in cosmetic notation dx^I ≡ dxi ^ dxi ^ .... ^ dxi basis vector ϵ xΛk dt^I ≡ dti ^ dti ^ .... ^ dti basis vector ϵ tΛk (10.8.14) (10.9.4) Some Properties of the φ* pullback function R = (Dφ) (10.8.15) (10.9.5) 0 φ*(α) ≡ <α | R = <α | RF // definition of φ*, (10.7.17) 1 φ*(f(x)) = f(x) = f(φ(t)) // φ* on a 0-form, (10.7.9) for k = 0 2 φ*(f(x) g(x) ) = φ*(f(x)) φ*(g(x)) // φ* on a product of two 0-forms, (10.7.10) 3 φ*(f(x) dx^I) = φ*(f(x)) φ*(dx^I) // φ* on 0-form and basis-vector k-form, (10.7.11) 4 φ*(dx^I) = ΣJ RIJ dt^J // φ* on a basis-vector k-form, (10.7.9) for k ≥ 1 5 φ*(dxi) = Σj Rij dtj // φ* on a basis-vector 1-form, k=1 of item 4 6 αx = Σ'I fI(x) dx^I // general k-form in xΛk, (10.7.12) 7 φ*(αx) = Σ'I fI(φ(t)) ΣJ RIJ dt^J // φ* pulling back a general k-form from xΛk, (10.7.13) 8 φ*(g(x) αx) = φ*(g(x)) φ*(αx) // φ* on a 0-form and general k-form, (10.7.15) 9 [φ*(αx)](v1,v2...vk) = αx(Rv1,Rv2...Rvk) // φ* pulling back a rank-k tensor function, (10.7.16) Other Properties of the φ* pullback function (10.8.16) (10.9.6) These five items are translations of (10.7.20) through (10.7.24) : Fact: φ* is linear, so φ*(s1α' + s2β') = s1φ*(α') + s2φ*(β') where α' and β' are k-forms. (10.9.7) Fact: φ*(α1 ^ α2 ^...^ αN) = φ*(α1) ^ φ*(α2) ^...^ φ*(αN) where αi is an arbitrary ki-form. (10.9.8) Fact: φ*(dα) = d(φ*(α)) where α ϵ xΛk is a k-form in x-space (10.9.9) Corollary: d(φ*(dα)) = 0 . (10.9.10) Fact: φ*(ψ*α) = (ψ o φ)* α where α is a k-form (10.9.11) The ordered sum form of a k-form pullback R = (Dφ) ΣJ RIJ dx^J = Σ' J det(RIJ) dt^J // (A.8.36) (10.8.17) (10.9.12) 4 φ*(dx^I) = Σ' J det(RIJ) dt^J // φ* on a basis-vector k-form (10.8.18) (10.9.13) 7 φ*(αx) = Σ'I fI(φ(t)) Σ' J det(RIJ) dt^J // φ* pulling back a general k-form from xΛk = Σ' J gJ(t) dt^J where gJ(t) = Σ'I fI(φ(t)) det(RIJ) (10.8.19) (10.9.14) The dφi form of a k-form pullback dφ^I ≡ ΣJ RIJ dt^J = Σ'J det(RIJ) dt^J = φ*(dx^I ) = <te^I| (10.8.20) (10.9.15) dφi ^ dφi = Σ1≤j<j≤n det dtj ^ dtj . (10.8.21) (10.9.16) dφi = Rij dtj (10.8.22) (10.9.17) φ*(dx^I) = φ*(dxi ^ dxi ...^ dxi) = dφi ^ dφi ...^ dφi = dφ^I (10.8.10) (10.9.18) φ*(αx) = Σ'I fI(φ(t)) dφ^I (10.8.24) (10.9.19) Comparison with Sjamaar Our document was strongly motivated by Sjamaar's excellent notes, so it seems useful to make some connection to those notes. In most of our document we used the transformation x' = F(x) but in Section 10.9 we changed this to be x = φ(t) to bring things closer to Sjamaar and other authors. Sjamaar uses y = φ(x) in his Ch 3 on pullbacks, x = c(t) in Ch 4 on 1-forms, and x = ψ(t) in Ch 5 on integration and Ch 6 on manifolds. He does not stress the notion of an underlying transformation as we have because he has many more important details to attend to, but he does show y = φ(x) in his figure on page 39. All wedge product symbols ^ are suppressed with the idea that almost all products are wedge products, so one sees equations like dx1dx2 = - dx2dx1. His sum ΣI is almost always an ordered sum which we write as Σ'I. Here then is a sampling of our equations above and how they appear in Sjamaar's 2015 notes : α ^ β = (-1)kk'β ^ α α = k-form, β = k'-form (10.4.1) Sja p 19, "graded commutivity" Fact: d2α = 0 for any k-form α (differential forms have zero "curvature") . (10.3.10) Sja p 22 α = Σ'I fI(x) xλ^I = Σ'I fI(x) dx^I // a k-form (10.1.14) Sja p 19,39 φ*(f(x) dx^I) = φ*(f(x)) φ*(dx^I) (10.9.5) 2 Sja p 39, related to the above φ*(dx^I) = φ*(dxi ^ dxi ...^ dxi) = dφi ^ dφi ...^ dφi = dφ^I (10.8.23) Sja p 39 Fact: φ* is linear, so φ*(s1α' + s2β') = s1φ*(α') + s2φ*(β') where α' and β' are k-forms. (10.9.7) Fact: φ*(α1 ^ α2 ^...^ αN) = φ*(α1) ^ φ*(α2) ^...^ φ*(αN) where αi is an arbitrary ki-form. (10.9.8) Fact: φ*(ψ*α) = (ψ o φ)* α where α is a k-form (10.9.11) Sja p 40 Fact: φ*(dα) = d(φ*(α)) where α ϵ xΛk is a k-form in x-space (10.9.9) Sja p 41 φ*(dx^I ) = dφ^I = Σ'J det((Dφ)IJ) dtJ for x = φ(t) (10.9.15) Sja p 44 for y = φ(x) φ*(αx) = Σ' J gJ(t) dt^J where gJ(t) = Σ'I fI(φ(t)) det(RIJ) for x = φ(t) (10.9.14) Sja p 44 for y = φ(x) dxi ≡ λi = <ui| = (ui)T ui = axis-aligned basis vectors of Rn (10.1.1) Sja p 92 The tensor function pullback For the pullback of a tensor function we have stated [φ*(αx)](v1,v2...vk) = αx(Rv1,Rv2...Rvk) for x = φ(t) (10.9.5) item 9 (10.9.20) where recall [φ*(αx)](v1,v2...vk) = <αx | R | v1,v2...vk>. The right side above is a tensor function entirely in Λkf(t-space) so we want everything there expressed in terms of t-space variables, so we replace αx by αφ(t). The tensor functional [φ*(αx)] is in dual t-space, so we can write it as [φ*(αx)]t similar to the βt appearing in Fig (10.9.3) above. The vectors vi are in t-space Rn. We write R = (Dφ) = (D(t)φ) to show that the derivatives are with respect to t. Then in more detail we can write the above tensor function pullback equation as [φ*(αx)]t(v1,v2...vk) = αφ(t)( (D(t)φ)v1, (D(t)φ)v2... (D(t)φ)vk) for x = φ(t) . (10.9.21) If we translate this for y = φ(x) it becomes [φ*(αy)]x(v1,v2...vk) = αφ(x)( (D(x)φ)v1, (D(x)φ)v2... (D(x)φ)vk) for y = φ(x) . (10.9.22) It is this equation we then compare to Sjamaar's page 96 equation, (10.9.23) He writes (D(x)φ) as Dφ(x) and [φ*(αy)]x as φ*(α)x The tensor function pullback equation also appears in Spivak but not quite as we have written it. Spivak says on the top of page 90 and the bottom of page 89, which we interpret to mean [f*(ω)](p)(v1,v2...vk) = ω(f(p)) ( (D(p)f)v1, (D(p)f)v2, ... (D(p)f)vk ) . Replacing ω→α, f→φ and p → x gives [φ*(α)](x)(v1,v2...vk) = α(φ(x))( (D(x)φ)v1, (D(x)φ)v2, ... (D(x)φ)vk ) . We then interpret (x) on the left and (φ(x)) on the right as spatial locations in the respective non-dual spaces, so the above becomes [φ*(α)]x(v1,v2...vk) = αφ(x)( (D(x)φ)v1, (D(x)φ)v2, ... (D(x)φ)vk ) (10.9.24) in agreement with our (10.9.22) and with Sjamaar's form (10.9.23). Sjamaar 2015 refers to φ*α as the pullback of α, but Spivak writing in 1965 does not use the term pullback in his book. Having a name for something is always helpful. Spivak's entire presentation is in terms of tensor functions, there are no functionals per se. He uses our tensor function pullback equation as the definition of a pullback (not calling it by that name). We have tried to define the pullback more generally in terms of the general transformation x = φ(t) so that it has a meaning for vectors, dual vectors (functionals), and tensor functions. ************************************************************* ************************************************************* ************************************************************* ************************************************************* ************************************************************* Some Properties of the φ* pullback function (10.7.19) (10.10.3) 0 φ*(α) ≡ <α | R = <α | Rφ // definition of φ*, (10.7.17) 1 φ*(f(x)) = f(x) = f(φ(t)) // φ* on a 0-form, (10.7.9) for k = 0 2 φ*(f(x) g(x) ) = φ*(f(x)) φ*( g(x)) // φ* on a product of two 0-forms, (10.7.10) 3 φ*(f(x) xλ^I) = φ*(f(x)) φ*(xλ^I) // φ* on 0-form and basis-vector k-form, (10.7.11) φ*(f(x) dx^I) = φ*(f(x)) φ*( dx^I) 4 φ*(xλ^I) = ΣJ RIJ tλ^J // φ* on basis-vector k-form, (10.7.9) for k ≥ 1 φ*(dx^I) = ΣJ RIJ dt^J 5 φ*(xλi) = Σj Rij tλj // φ* on basis-vector 1-form φ*(dxi) = Σj Rij dtj 6 αx = Σ'I fI(x) xλ^I // general k-form in xΛk, (10.7.12) αx = Σ'I fI(x) dx^I 7 φ*(αx) = Σ'I fI(φ(t)) ΣJ RIJ tλ^J // φ* pulling back general k-form from xΛk, (10.7.13) φ*(αx) = Σ'I fI(φ(t)) ΣJ RIJ dt^J 8 φ*(g(x) αx) = φ*( g(x)) φ*( αx) // φ* on 0-form and general k-form, (10.7.15) Other Properties of the φ* pullback function Fact: φ* is linear, so φ*(s1α' + s2β') = s1φ*(α') + s2φ*(β') where α' and β' are k-forms. (10.7.20) (10.10.4) Fact: φ*(α1 ^ α2 ^...^ αN) = φ*(α1) ^ φ*(α2) ^...^ φ*(αN) where αi is an arbitrary ki-form. (10.7.21) (10.10.5) Fact: φ*(dα) = d(φ*(α)) where α ϵ xΛk is a k-form in x-space (10.7.22) (10.10.6) Corollary: d(φ*(dα')) = 0 . (10.7.23) (10.10.7) Fact: φ*(ψ*α) = (ψ o φ)* α where α is a k-form (10.7.24) (10.10.8) The ordered sum form of a k-form pullback αx = Σ'I fI(x) xλ^I ϵ xΛk // k-form in dual x-space αx = Σ'I fI(x) dx^I φ*(αx) = Σ'J Σ'I fI(φ(t)) det([Dφ]IJ)] tλ^J φ*(αx) = Σ'J Σ'I fI(φ(t)) det([Dφ]IJ)] dt^J = Σ'J gJ(t) tλ^J where gJ(t) ≡ Σ'I fI(φ(t)) det([Dφ]IJ) (10.8.2) (10.10.9) = Σ'J gJ(t) dt^J ≡ βt (10.8.4) (10.10.10) The dφi form of a k-form pullback dφi ≡ Rij dtj = Rij tλj = φ*(xλi) = φ*( dxi) (10.8.6) (10.10.11) dφ^I = ΣJ RIJ tλ^J = ΣJ RIJ dt^J = Σ'J det(RIJ) tλ^J = Σ'J det(RIJ) dt^J (10.8.8) (10.10.12) φ*(αx) = Σ'I fI(φ(t)) ΣJ RIJ tλ^J = Σ'I fI(φ(t)) ΣJ RIJ dt^J = Σ'I fI(φ(t)) dφ^I (10.8.9) (10.10.13) ************************************************** In this new notation we write, F*(λ'i) ≡ <e'i| F* = <e'i| R = Rij<uj| = Rijλj F*(dx'i) ≡ <e'i| F* = <e'i| R = Rij<uj| = Rijdxj (10.7.17) so F*(λ'i) = Rij λj = (DF)ijλj F*(dx'i) = Rij dxj = (DF)ij dxj (10.7.18) This then is a very simple example of pulling back a differential 1-form from dual x'-space to dual x-space. We can "close" the functional above with some arbitrary vector |v> (evaluate the functional at v) in x-space to get [F*(λ'i)](v) ≡ <e'i| F* | v> = <e'i| R | v> = <e'i| R*1 | v> = <e'i| R |uj><uj | v> = Rij λj(v) = Rij vj = [Rv]i = <ui |Rv> = λi(Rv) so [F*(λ'i)](v) = λi(Rv) [F*(dx'i)](v) = dxi(Rv) (10.7.19) and in this way we have pulled back a rank-1 basis-vector tensor function from Λ1f(Rm) to Λ1f(Rn) . For a general rank-1 functional αx' in dual x'-space we would write, as in (2.11.c.7), αx' = Σi=1m αi λ'i αx' ϵ Λ1(Rm) αx' = Σi=1m αi dx'i αx' ϵ Λ1(Rm) (10.7.20) βx ≡ F*(αx') = ΣiαiF*(λ'i) = Σiαi Rijλj = Σiαi (DF)ijλj βx ϵ Λ1(Rn) βx ≡ F*(αx') = ΣiαiF*(dx'i) = Σiαi Rijdxi = Σiαi (DF)ijdxi βx ϵ Λ1(Rn) (10.7.21) In terms of tensor functions, we evaluate (10.7.21) at location v to get [F*(αx')](v) = Σiαi Rijλj(v) = Σiαi Rij vj = Σiαi [Rv]j = αx'(Rv) . (10.7.22) In Dirac notation we write the above line as [F*(αx')](v) = <αx'| F* | v > = <αx'| R | v > = <αx'| Rv > = αx'(Rv) . (10.7.23) Sometimes one sees the pullback function F* defined by the above tensor function equation, [F*(αx')](v) ≡ αx'(Rv) (10.7.24) but we feel that our definition of F* as shown above is more fundamental, directly making the connection F* = R where R is the Dirac Hilbert Space operator whose matrix elements Rij = <e'i | R | uj> form the "tall" differential R matrix of the underlying transformation x' = F(x). 10.8 Change of variable and function names We are now going to make a painful change of variable and function names to get our results into a more standard form found in the differential forms literature. It is a bit painful and requires some new notations for basis vectors, but it must be done at some point. We change then from Picture A' to Picture F' where, unfortunately, there is both an old x-space and a new x-space and they are not the same. (10.8.1) The underlying function name F is changed to φ but the transformation differentials are still called R and S. Here is the translation dictionary: x-space → t-space x'-space → x-space F → φ x' = F(x) → x = φ(t) general transformation R,S → R,S differential matrices (no change in name) F* → φ* pullback operator F* → φ* pullback function V → tV vector in t-space V' → xV vector in x-space e → te tangent base vectors in t-space u → tu axis-aligned basis vectors in t-space g → tg metric tensor in t-space u' → xu tangent base vectors in x-space e' → xe axis-aligned basis vectors in x-space g' → xg metric tensor in x-space (10.8.2) We try to stay somewhat consistent with the previous notation and this requires that the axis-aligned basis vectors be called tu in t-space, but xe in x-space. Please refer to the above table if there is confusion. Here is the translated kinematics package (10.6.a.1) with item (i) adjusted for the "tall R matrix" situation m > n: (a) x = φ(t) xform Rij ≡ (∂xi/∂tj) = ∂j(t)xi R = (Dφ) xV = R tV vector Sij ≡ (∂ti/∂xj) = ∂j(x)ti (b) xei with (xei)j = δij axis-aligned basis vectors in x-space (i = 1..m) tei tei = S xei tangent base vectors in x-space (i = 1..n) (c) tui with (tui)j = δij axis-aligned basis vectors in t-space (i = 1..n) xui xui= R tui tangent base vectors in t-space (i = 1..n) (xui)j = Rjk (tui)k (d) x1 = | xei> <xei| = | xei> <xei| = | xui> <xui| = | xui> <xui| completeness in x-space t1 = | tei> <tei| = | tei> <tei| = | tui> <tui| = | tui> <tui| completeness in t-space (e) (tuj)i = tui tuj = <tui | tuj > = tgij = xui xuj = <xui | xuj > (tej)i = tui tej = <tui | tej > = Sij = Rji (xej)i = xei xej = <xei | xej > = xgij = tei tej = <tei | tej > (xuj)i = xei xuj = <xei | xuj > = Rij = Sji (f) tei = xgij tej xei = xgij xej tui = tgij tuj xui = tgij xuj tei = xgij tej xei = xgij xej tui = tgij tuj xui = tgij xuj (g) <tej | S | xei> = <xei | R | tej> = xgij <tej | S | xui> = <xui | R | tej> = Sij = Rji <tuj | S | xei> = <xei | R | tuj> = Rij = Sji <tuj | S | xui> = <xui | R | tuj> = tgij . (h) S = RT Sij = (RT)ij = Rji R = ST Rij = (ST)ij = Sji (i) SR = 1 SST = RTR = 1 (10.6.a.1), (10.6.d.1) (10.8.3) Next is the uniqueness table translated from (10.6.d.2): Metric tensors tgij, tgij unique xgij unique, since xgij = RiaRjb tgab xgij not unique, since xgij = RiaRjb tgab = SaiSbj tgab and Sij not unique Transformation matrices Rij = Sji unique (tall R matrix from x' = F(x)) Rij = Sji unique since Rij = tgjaRia and both tgja and Ria are unique Rji = Sij not unique, see (10.6.c.3) Rij = Sji not unique, since Rij = xgia Raj and xgia not unique Axis-aligned basis vectors (tuj)i unique since (tuj)i = tgji (xej)i unique since (xej)i = xgij (= δij) (tuj)i unique since (tuj)i = tgji (xej)i not unique since (xej)i = xgij (tuj)i unique since (tuj)i = tgji (xej)i unique since (xej)i = xgij (tuj)i unique since (tuj)i = tgji (xej)i unique since (xej)i = xgij Tangent base vectors (tej)i not unique since (tej)i = Rji (xuj)i unique since (xuj)i = Rij (tej)i not unique since (tej)i = Rji (xuj)i not unique since (xuj)i = Rij (tej)i unique since (tej)i = Rji (xuj)i unique since (xuj)i = Rij (tej)i unique since (tej)i = Rji (xuj)i not unique since (xuj)i = Rij (10.6.d.2) (10.8.4) We now translate most earlier results into the new notation: {tui} i = 1,2...n basis for t-space , axis-aligned (tui)j = δij components of these basis vectors in t-space . (10.6.e.1) (10.8.5) xui = (10.6.e.4) (10.8.6) R** = [xu1, xu2 ....xun] R has full rank n basis for TxM complete (10.6.e.5) (10.8.7) Non-Dual xui = R tui |xui> = R |tui> i = 1,2..n push forward (10.7.1) (10.8.8) tui = S xui |tui> = S |xui> i = 1,2..n pull back (10.7.2) (10.8.9) xui = R tui |xui> = R |tui> i = 1,2..n push forward tui = RT xui |tui> = RT |xui> i = 1,2..n pull back (10.7.4) (10.8.10) xei = R tei |xei> = R |tei> i = 1,2..n push forward tei = RT xei |tei> = RT |xei> i = 1,2..n pull back (10.7.5) (10.8.11) Dual (xui)T= (tui)T RT <xui| = <tui|RT i = 1,2..n push forward (tu)T = (xu)T R <tui| = <xu|R i = 1,2..n pull back (10.7.6) (10.8.12) (xei)T= (tei)T RT <xei| = <tei|RT i = 1,2..n push forward (tei)T = (xei)T R <tei| = <xei|R i = 1,2..n pull back (10.7.7) (10.8.13) <xei| φ* = <xei| R = Rij<tuj| pullback operator φ* = R <xui| φ* = <xui| R = <tui| (10.7.9) (10.8.14) (10.7.11) (10.8.15) We now translate equations (10.7.12) through (10.7.20) to the new notation: tλi ≡ <tui| = basis functional in dual t-space ϵ Λ1(Rn) i = 1..n xλi ≡ <xei| = basis functional in dual x-space ϵ Λ1(Rm) i = 1..m (10.7.12) (10.8.16) <xei| φ* = xλiφ* = <xei| R = xλiR = Rij<tuj| . (10.7.13) (10.8.17) φ*(<xa| ) ≡ <xa| φ* = <xa| R . pull back a dual vector φ* ≡ R (10.7.14) (10.8.18) φ*(<xei| ) = φ*(xλi ) = <xei| φ* = Rij<tuj| = Rij tλi (10.7.15) (10.8.19) φ* : Λ1(Rm) → Λ1(Rn) . R = (Dφ) (10.7.16) (10.8.20) φ*(xλi) ≡ <xei| φ* = <xei| R = Rij<tuj| = Rij tλj φ*(dxi) ≡ <xei| φ* = <xei| R = Rij<tuj| = Rij dtj (10.7.17) (10.8.21) so φ*(xλi) = Rij tλj = (Dφ)ij tλj pullback of a simple 1-form φ*(dxi) = Rij dtj = (Dφ)ij dtj cosmetic form (10.7.18) (10.8.22) [φ*(xλi)](v) = tλi(Rv) tensor function forms of previous line [φ*(dxi)](v) = dti(Rv) (10.7.19) (10.8.23) αx = Σi=1m αi(x) xλi αx ϵ Λ1(Rm) general 1-form αx = Σi=1m αi(x) dxi αx ϵ Λ1(Rm) general 1-form (10.7.20) (10.8.24) βt ≡ φ*(αx) = Σiαi φ*(xλi) = Σiαi Rij tλj = Σiαi (Dφ)ij tλj βt ≡ φ*(αx) = Σiαiφ*(dxi) = Σiαi Rij dti = Σiαi (Dφ)ij dti (10.7.21) (10.7.25) ok to here [φ*(αx)](v) = αx(Rv) tensor function form of 1-form pullback (10.7.24) (10.8.26) 10.9 Pullback of k-forms We wish now to study the "push forward" of basis functions in Vk (Chapter 5) xeJ ≡ xej xej ..... xej |xeJ> ≡ |xej> |xej> ..... |xej> teJ ≡ tej tej ..... tej |teJ> ≡ |tej> |tej> ..... |tej> R |teJ> = R |tej> R |tej> ..... R |tej> // (5.6.17) = |xej> |xej> ..... |xej> // (10.8.11) = |xeJ> . Repeating this for the non-dual wedge space Lk (Chapter 7) xe^J ≡ xej^ xej^ .....^ xej |xe^J> ≡ |xej> ^ |xej> ^ .....^ |xej> te^J ≡ tej^ tej^ .....^ tej |te^J> ≡ |tej> ^ |tej> ^ .....^ |tej> R |te^J> = R |tej> ^ R |tej> ^ .....^ R |tej> // (7.9.d.15) = |xej> ^ |xej> ^ ..... ^ |xej> // (10.8.11) = |xe^J> . Next we do the push forwards for the tensor product dual space V*k (Chapter 6) xλJ ≡ xλj xλj ..... xλj <xeJ| ≡ <xej| <xej| ..... <xej| tλJ ≡ tλj tλj ..... tλj <teJ| ≡ <tej| <tej| ..... <tej| <teJ| RT ≡ <tej|RT <tej|RT ..... <tej|RT // (6.6.18) = <xej| <xej| ..... <xej| // (10.8.13) = <xeJ| . and finally for the wedge product dual space Λk (Chapter 8) xλ^J ≡ xλj ^ xλj ^ .....^ xλj <xe^J| ≡ <xej| ^ <xej| ^ .....^ <xej| tλ^J ≡ tλj ^ tλj ^ .....^ tλj <te^J| ≡ <tej| ^ <tej| ^ .....^ <tej| <te^J| RT ≡ <tej|RT ^ <tej|RT ^ .....^ <tej|RT // (6.6.18) = <xej| ^ <xej| ^ ..... ^ <xej| // (8.9.d.15) = <xe^J| . The above is WRONG because tλi ≡ <tui| . So repair here: xλ^J ≡ xλj ^ xλj ^ .....^ xλj <xe^J| ≡ <xej| ^ <xej| ^ .....^ <xej| tλ^J ≡ tλj ^ tλj ^ .....^ tλj <tu^J| ≡ <tuj| ^ <tuj| ^ .....^ <tuj| <tu^J| RT ≡ <tuj|RT ^ <tuj|RT ^ .....^ <tuj|RT // (8.9.d.15) = <xuj| ^ <xuj| ^ ..... ^ <xej| // (10.8.12) = <xu^J| . But we want the result in terms of <xe^J| and I did not write that transformation out. I would need <tuj|RT = <tuj|RT |xei ><xei| = <tuj|S |xei ><xei| = Rij <xei| OK, I will replace all of the above with pull backs instead of push forwards. The last is then xλ^J ≡ xλj ^ xλj ^ .....^ xλj <xe^J| ≡ <xej| ^ <xej| ^ .....^ <xej| tλ^J ≡ tλj ^ tλj ^ .....^ tλj <tu^J| ≡ <tuj| ^ <tuj| ^ .....^ <tuj| <xe^J| φ* = <xe^J| R ≡ <xej|R ^ <xej|R ^ .....^ <xej|R // (8.9.d.15) = <xej|φ* ^ <xej|φ* ^ .....^ <xej|φ* // φ* ≡ R = φ*( xλj) ^ φ*( xλj) ^ .....^ φ*( xλj) // (10.8.19) = [ Rji tλi ] ^ [ Rji tλi ] ^ .... ^ [ Rji tλi] // (10.8.19) = ΣI RJI ( tλi ^ tλi ^ .....^ tλi ) // multiindex = ΣI RJI tλ^J = <xuj| ^ <xuj| ^ ..... ^ <xej| // (10.8.12) = <xu^J| . ******************************************************* Here then is a summary. To get the pull backs column we use the fact that RTR = t1 . Recall from (10.6.d.1) that RTR = 1 for matrices for a "tall" R matrix and this then passes to the Dirac operators. Push forwards Pull backs Space R |teJ> = |xeJ> |teJ> = RT|xeJ> Vk tensor product R |te^J> = |xe^J> |te^J> = RT|xe^J> Lk wedge product <teJ| RT = <xeJ| <teJ| = <xeJ|R V*k dual tensor product <tu^J| RT = <xe^J| <tu^J| = <xe^J|R Λk . dual wedge product The pullback of interest is the lower right entry in the above table, which we can write out as <tu^J| = <tuj| ^ <tuj| ^ .....^ <tuj| // φ* ≡ R = <xe^J|R = <xej|R ^ <xej|R ^ .....^ <xej|R = <xe^J|φ* = <xej|φ* ^ <xej|φ* ^ .....^ <xej|φ* In function notation this says that a pullback for Λk appears as tλ^J = φ*(xλ^J) = φ*(xλj) ^ φ*(xλj) ^ .... ^ φ*(xλj) or in cosmetic notation dt^J = φ*(dx^J) // this is all wrong = φ*(dxj) ^ φ*(dxj) ^ .... ^ φ*(dxj) = dtj ^ dtj ^ .... ^ dtj Question: Where are the dφj objects of Sjamaar? x = φ(t) 10.9 Properties of the pullback function φ* ______________________________________________________________________________ Fact: φ* is linear, so φ*(s1α + s2β) = s1(φ*α) + s2(φ*β) where α, β are both k-forms. (10.9.1) Proof: φ*(<α| ) ≡ <α| φ* = <α| R and R is a linear operator acting on either the bra or ket space. To prove that R is a linear operator consider <α| R = <α | xei><xei| R | tuj><tuj| = αi Rij <tuj| so <s1α + s2β| R = <s1α + s2β | xei><xei| R | tuj><tuj| = (s1αi+s2βi) Rij <tuj| = s1αiRij <tuj| + s2βiRij <tuj| = s1<α| R + s2<β| R Then φ*(<s1α + s2β| ) = <s1α + s2β| R = s1<α| R + s2<β| R = s1φ*(α) + s2(φ*β) Proof: φ*( s1α + s2β) = [ s1<α| + s2<β| ] φ* // Dirac notation [ s1<α| + s2<β| ] R // φ* = R = s1<α| R + s2<β| R // R is a linear operator = s1<α| φ* + s2<β| φ* // name change = s1(φ*α) + s2(φ*β) // functional form of φ* QED Basically φ* is linear because R is linear going way back to V' = Rij Vj and dx' = R dx. R is the linearization at a point x of the generally non-linear underlying transformation x' = F(x). More specifically, <xei| R = Rij<tuj| from (10.8.17). ___________________________________________________________________________ Fact: φ*(α1 ^ α2 ^...^ αN) = φ*(α1) ^ φ*(α2) ^...^ φ*(αN) where αi is an arbitrary ki-form. (10.9.2) Proof: φ*(α1 ^ α2 ^....^ αN) = [ <α1| ^ <α2| ^ ... ^ <αN| ] | φ* // Dirac notation = [ <α1| φ* ^ <α2| φ* ^ ... ^ <αN| φ* ] // (8.9.d.15) = φ*(α1) ^ φ*(α2) ^...^ φ*(αN) // functional form for φ* QED Add something here regarding 0-forms and how they can be added to this theorem. ___________________________________________________________________________ Fact: φ*(dα) = d(φ*α) (10.9.3) Proof: A. α = Σ'IfI(x) xλ^I // (10.2.1) dα = Σ'I dfI(x) xλ^I = Σ'I ( Σj=1n [∂jfI(x)] xλj) ^ xλ^I // (10.3.6) φ*(dα) = Σ'I Σj=1n [∂jfI(x)]x=φ(t) φ*(xλj ^ xλ^I) // (10.9.28) linear = Σ'I Σj=1n [∂jfI(x)]x=φ(t) φ*(xλj) ^ φ*(xλ^I) // (10.9.29) B. φ*α = Σ'IfI(x(t)))φ*(xλ^I) // (10.9.28) linear d(φ*α ) = Σ'I dfI(x(t))) φ*(λ^I) // (10.3.6) = Σ'I Σj=1n[∂jfI(x) (∂xj/∂tr)] tλr ^ φ*(λ^I) // (10.3.6) = Σ'I Σj=1n[∂jfI(x) Rir] tλr ^ φ*(λ^I) // (10.8.3) item (a) = Σ'I Σj=1n[∂jfI(x)] (Rir tλr) ^ φ*(λ^I) // regroup = Σ'I Σj=1n[∂jfI(x)] φ*(xλi) ^ φ*(λ^I) // (10.8.17) The two results are the same, so φ*(dα) = d(φ*α) . QED Corollary: d(φ*(dα)) = 0 since this is d2(φ*α), see (10.3.12) (10.9.4) ______________________________________________________________________________ Fact: φ*(ψ*α) = (ψ o φ)* α where α is a k-form (10.9.5) Proof: This theorem involves two mappings φ and ψ which are composed to form a third Φ : y = ψ(x) x = φ(t) t → x → y t → y φ ψ Φ y = ψ(φ(t)) = [ψ o φ ](t) = Φ(t) . In Dirac notation we denote spaces by subscripts on the bras (dual space vectors) t<α| // start with t-space k-form t<α| φ* = x<β| // apply φ* to get an x-space k-form x<β| ψ* = y<κ| // then apply ψ* to get a y-space k-form Combining these two steps to get (t<α| φ*)ψ* = y<κ| . // normally written t<α| φ*ψ* Instead of taking two steps, do it in one step using Φ t<α| Φ* = y<κ| . // apply Φ* to get a y-space form directly from t<α| Since both methods give the same y<κ| conclude that (t<α| φ*)ψ* = t<α| Φ* = t<α| (ψ o φ)* or in function notation, ψ*(φ*(α)) = (ψ o φ)*(α) QED A Chapter 1 style category diagram for this scenario would be ______________________________________________________________________________ Extra Stuff I want to see φ*(xλ^I) = <xe^I | φ* = <xe^I | R appear somewhere in my writeup. With my new theorems, I know this would be φ*xλ^I = <xe^I | R = <xe^i|R ^ <xe^i|R ^ ..... = φ*xλ^i ^ φ*xλ^i ^ ...... =  (Ri1j1 tλj1) ^ (Ri2j2 tλj2) ^ ... = RIJ (tλj1 ^ tλj ^ ..... ) = RIJ tλ^J So there you are: really want those parens now to contain my ugly many-symbol argument φ*(xλ^I) = ΣJ RIJ tλ^J Now maybe he makes up this name (Ri1j1 tλj1) = dφi1 Then you could write φ*(xλ^I) = I see this is just my theorem to be proven below, but I have the main idea in a Ch 7 theorem. Then φ*(dx^I ) = φ*(dxi) ^ φ*(dxi) ^ ...... = dφi ^ dφi ^ ... Why would you use this name dφi for these little forms? Well we do have this dφi = φ*(dxi) = Ri1j1 dtj1 So the equation dφi = Ri1j1 dtj1 DOES look like the calculus equation φi(t) dφi(t) = Rij dtj BUT notice now that dφi(t) ≠ dxi although that would be true in calculus. Recall the similarity mentioned in (10.3.3) and (10.3.4), df = (∂jf(x)) dxj 1-form (10.3.3) df = (∂jf(x)) dxj calculus (10.3.4) Thinking of x = φ(t) we can similarly write, dxi = dφi = (∂φi/∂tj) dtj 1-form At the 2-form level one has dxi ^ dxi = Σjj [ (∂φi/∂tj) dtj] ^ [(∂φi/∂tj) dtj ] = Σjj (∂φi/∂tj)(∂φi/∂tj) dtj ^ dtj = Σjj RijRij dtj ^ dtj 2-form At the k-form level one then has dxi ^ dxi ....^ dxi = ΣjRijRij .... dtj ^ dtj ....^ dti or dx^I = ΣJ RIJ dt^J k-form From Appendix A we know from the second line of (A.8.36) with I ↔ J that Fact : ΣJ TIJ x^J = Σ'J det(TIJ) x^J if TIJ has factored form (A.8.36) As written, the generic vector x^J is a vector in the wedge space Lk(V), but the Fact can be transposed to the dual space Λk(V) where it has the same form since the functions are real. Just replace xi = |xi> by <xi|. Then set <xi| = <xei| = xλi = dxi . The object RIJ has exactly the factored form required, so we conclude that (10.8.25) can be rewritten using the ordered sum Σ'J as dx^I = Σ'J det(RIJ) dt^J (10.8.26) For example, dxi ^ dxi = Σ1≤j<j≤n det dtj ^ dtj 10.9 More relationships 10.9 The pullback of a general differential k-form Recall from (10.8.14) the action of operator φ* = R on the bra <xei |, <xei | φ* = <xei | R = Σj=1n Rij <tuj | i = 1,2..m . (10.8.14) (10.9.1) Any operator P which acts on a vector space V, has a natural extension to being an operator on the tensor product space Vn , while its transpose PT has an extension acting on the dual tensor product space V*n P | v1,v2....vk> ≡ P [ | v1> |v2>....|vk> ] = P| v1> P|v2>.... P|vk> . < v1,v2....vk| PT = [ < v1| <v2|....<vk| ] PT = < v1|PT <v2|PT....<vk|PT . (10.9.2) Taking the operator PT to be φ* = R, one has < xei, xei....xei| φ* = < xei, xei....xei| R // φ* ≡ R = < xei|R <xei|R.... <xei|R // (10.9.2) with PT = R, and next line is (10.9.1) = [Σj=1n Rij <tuj | ] [Σj=1n Rij <tuj | ] ... [Σj=1n Rij <tuj | ] = Σjj...j=1n Rij Rij ... Rij ( <tuj | <tuj | ... <tuj| ) = Σjj...j=1n Rij Rij ... Rij <tui, tui....tui | . (10.9.3) In multiindex notation this says (note that ΣJ is a full symmetric sum), < xeI | φ* = ΣJ RIJ <tuJ | ϵ (Rn)*k = dual tensor-product t-space . (10.9.4) A nearly identical result applies for wedge space Λk(Rn). Apply AltI to both sides of (10.9.4) to get AltI [ < xeI | φ* ] = AltI [ ΣJ RIJ <tuJ | ] . (10.9.5) According to (8.1.2) the left side is just AltI [ < xeI | φ* ] = [ AltI < xeI | ] φ* = < xe^I | φ* where <xe^I| ≡ <xej | ^ <xej | ... ^ <xej| . (10.9.6) The right side of (10.9.5) takes more work : AltI [ ΣJ RIJ <tuJ | ] = ΣJ [AltI(RIJ)] <tuJ | // = ΣJ (1/k!) det(RIJ ) <tuJ | by (A.8.30) = ΣJ [(1/k!) ΣP(-1)P RP(I)J ] <tuJ | // (A.2.1) def of AltI = (1/k!) ΣP(-1)P ( ΣJ RP(I)J <tuJ | ) // reorder = [(1/k!) ΣP(-1)P ( ΣJ RP(I)P(J) ] <tuP(J) | ) // (A.1.20) that ΣJ fJ = ΣJ fP(J) = [(1/k!) ΣP(-1)P ΣJ RIJ ] <tuP(J) | // (A.8.31) that RP(I)P(J) = RIJ = ΣJ RIJ [(1/k!) ΣP(-1)P <tuP(J) | ] // reorder = ΣJ RIJ AltJ <tuJ | // (A.2.1) def of AltJ = ΣJ RIJ <tu^J | where <tu^I| ≡ <tuj | ^ <tuj | ... ^ <tuj| . (10.9.7) Thus we have from (10.9.5) the following result, which we compare on the next line to (10.9.4), < xe^I | φ* = ΣJ RIJ <tu^J | ϵ Λk(Rn) = dual wedge-product t-space (10.9.8) < xeI | φ* = ΣJ RIJ <tuJ | ϵ (Rn)*k = dual tensor-product t-space . (10.9.4) A general element of Λk(Rm) at a point x on our surface M (a general "differential k-form") can be written from (10.2.1), αx = Σ'I fI(x) xλ^I or <αx | = Σ'I fI(x) < xe^I | . (10.9.9) Applying φ* = R to the Dirac form then gives, using (10.9.8), <αx | φ* = Σ'I fI(x) [ < xe^I | φ* ] = Σ'I fI(x) [ΣJ RIJ <tu^J | ] . (10.9.10) Again using φ*(αx) ≡ <αx | φ* and <tu^J | = λ^J and x =φ(t), the above line can be restated, φ*(αx) = Σ'I fI(φ(t)) ΣJ RIJ tλ^J (10.9.11) which is then the pullback of an arbitrary differential k-form. If αx is just a function (0-form), the pullback is defined to be φ*(f) ≡ f(φ(t)). We see from our operations above that: Fact: The pullback of a k-form in x-space is a k-form in t-space, where k ≤ n ≤ m. (10.9.12) After all, xλ^I is the wedge product of k dual basis vectors, and so is tλ^J . There are now two paths leading off from this waypoint. (a) The dual-space pullback equation for a k-form Write (10.9.11) reordered as φ*(αx) = ΣJ [ Σ'I fI(φ(t)) RIJ ] tλ^J = ΣJ GJ(t) tλ^J GJ(t) ≡ Σ'I fI(φ(t)) RIJ = Σ'J gJ(t) tλ^J gJ(t) ≡ k! AltJ[GJ(t)] , (10.9.13) where the last line comes from (10.1.1) through (10.1.3). We have stated the result both in terms of symmetric ΣJ and ordered Σ'J summations. The coefficient functions gJ(t) can be re-expressed as, gJ(t) ≡ k!AltJ[GJ(t)] = k!AltJ[ Σ'I fI(φ(t)) RIJ] = k! Σ'I fI(φ(t)) AltJ[RIJ] // Alt is linear = k! Σ'I fI(φ(t)) [ (1/k!) det(RIJ) ] // (A.8.30) = Σ'I fI(φ(t)) det(RIJ) . (10.9.14) The pullback of αx "along φ" is then φ*(αx) = Σ'J Σ'I fI(φ(t)) det(RIJ(t)) tλ^J = Σ'J Σ'I fI(φ(t)) det[(Dφ)IJ(t)] tλ^J ≡ βt // = (φ*αx) (10.9.15) Being a linear combination of tλ^J, φ*(αx) is seen to be an element of Λk(Rn) which is associated with t-space. That is to say, φ*(αx) is a differential form at a point t in t-space, so we give it an arbitrary name βt. We pause once again to rewrite our last several results in cosmetic Section 10.1 (subscript C) notation: αx = Σ'I fI(x) xλ^I = Σ'I fI(x) dx^I (10.9.9)C φ*(αx) = Σ'I fI(φ(t)) ΣJ RIJ dt^J R = (Dφ) (10.9.11)C φ*(αx) = ΣJ [ Σ'I fI(φ(t)) RIJ ] dt^J = ΣJ GJ(t) dt^J GJ(t) ≡ Σ'I fI(φ(t)) RIJ = Σ'J gJ(t) dt^J gJ(t) ≡ k! AltJ[GJ(t)] , (10.9.13)C φ*(αx) = Σ'J Σ'I fI(φ(t)) det(RIJ(t)) dt^J = Σ'J Σ'I fI(φ(t)) det[(Dφ)IJ(t)] dt^J ≡ βt . (10.9.15)C Using y = φ(x) in place of x = φ(t) and α = Σ'I fI(y) dy^I, writing function fI(φ(t)) as φ*(fI), and sliding Σ'J to the right, the above becomes φ*(α) = Σ'I φ*(fI) Σ'J det[(Dφ)IJ(x)] dx^J and this is how Sjamaar [2015] presents his pullback result, where his sums are both ordered sums which we call Σ'J and Σ'I . It is useful to write out (10.9.15)C in full notation : φ*(αx) = Σ1≤j<j<....<j≤n Σ1≤i<i<....<i≤m fii...i(φ(t)) * det [RIJ] * ( dti ^ dti .....^ dti ) (10.9.16) where RIJ is this kxk matrix, Rij Rij ... Rij RIJ = Rij Rij ... Rij ..... Rij Rij ... Rij (10.9.17) with Rij = (Dφ)ij = (∂φi/∂tj) = ∂jφi(t) . // (10.8.3) The object det(RIJ) is a k x k minor of the full m x n matrix R, so k ≤ n ≤ m in our application. Remember that, due to the ordered sums, all the ir are different, and all the jr are different, so no row or column appears twice in RIJ. Here is a hybrid picture where we add more detail to Fig. (10.8.15), (10.9.18) We have added an n-dimensional open domain region U in t-space which maps via x = φ(t) into an open region V which lies on the manifold M (a "surface"), which is of dimension n. Our point of interest t lies in U, and x lies in V. The picture is a bit symbolic since it shows t-space = Rn and x-space = Rm, but the differential forms αx and βt are really objects within the dual spaces (Rm)* and (Rn)*. Here is a more practical picture for the special case n = 2 and k = 2: (10.9.19) Here the open region U is a unit square [0,1]2 which maps into a patch on a torus. That is, if m = 3 the object on the right is a torus in R3, but we can imagine it to be a torus embedded in Rm for any m ≥ 3. The space of vectors defined on U R2 is a 2-dimensional dual space (R*2)(U). On this space we can define either 1-forms or 2-forms. The above picture suggests a 2-form since the region U is an area, and since we will later associate dt1 ^ dt2 with the calculus differential dt1dt2 which represents an area (we are not there yet). The picture shows the "forward map" x = φ(t), suggesting that forward means left to right in the picture. Then αx is "pulled back" right to left from dual x-space to dual t-space where it becomes βt. One could imagine a set of 16x6 = 96 mappings like the one shown above which would "cover the torus", using one little patch for each mapping (with some small overlap between patches). One would then have an atlas of 96 square maps like that on the left which would serve to cover the surface of Planet Toroid. This is the basic idea of a manifold. In the torus example, one could do the job with only 2 maps. Doing it with a single map does not fly since then some seam curve on the torus would map back to two boundaries of the square and the mapping is then not one-to-one and smooth. Manifold mappings have to be continuous in both mapping directions at every point, and a seam is a place without continuity. The aspect ratio of the 2-cube on the left is not significant. One could change it to be an arbitrary rectangle in t-space and select a φ to make it map to the same small image patch in x-space. Or one could construct a mapping φ which maps the unit 2-cube [0,1]2 to the entire left half of the torus. See Sjamaar. The black arrows on the left are the t-space basis vectors tui (only tu2 is labeled). As shown in (10.8.6), these map according to xui = R tui into basis vectors which are tangent to M, and these vectors then span the tangent space TxM at point x on M. It is clear that the two xui vary as the point x on M is varied. As another example consider this situation with n = 1 and k = 1, (10.9.20) Now the domain in t-space is a U = 1-cube [0,1] which maps to a (generally non-planar) red curve which is embedded in Rm . Here αx and βt are 1-forms. The red curve segment V lies on the manifold curve M as shown, just as the patch of the previous example lay on the torus. There is only one basis vector tu in t-space (not shown) and it maps to the unlabeled black arrow on the right which is xu and is of course tangent to the curve at x. (b) The tensor-function pullback equation for a k-form Recall (5.6.17) P [ |T1> |T2>... |TN>] = P |T1> P|T2>... P |TN> (5.6.17) which describes the effect of an operator P on a tensor product of N arbitrary tensors. If the tensors are just vectors and if the operator is R, then R| v1,v2...vk> = R [ | v1> | v2> ..... | vk> ] = R | v1> R | v2> ..... R | vk> = | Rv1> | Rv2> ..... | Rvk> = | Rv1,Rv2...Rvk> . (10.9.21) Therefore <αx | φ*| v1,v2...vk> = <αx | R |v1,v2...vk> = <αx | Rv1,Rv2...Rvk> . (10.9.22) In function notation this is written [φ*αx] (v1,v2...vk) = αx(Rv1,Rv2...Rvk) for αx = Σ'I fI(x) dx^I (10.9.23) and this is the pullback equation written in terms of tensor functions. Each side of this equation is a totally antisymmetric k-multilinear tensor function in the dual space Λkf(V) of (8.3.1a). Traditionally one defines the original differential form to be α and not αx so (10.9.27) becomes, [φ*α] (v1,v2...vk) = α(Rv1,Rv1...Rvk) for α = Σ'I fI(x) dx^I . (10.9.24) Since [φ*α] is a t-space k form, we might indicate that by adding a subscript t to get [φ*α]t. Recall that earlier this was called βt. And since α is an x-space k-form, we add a label there as well to get αx, ] [φ*α]t (v1,v2...vk) = αx(Rv1,Rv1...Rvk) for α = Σ'I fI(x) dx^I . (10.9.25) Since x = φ(t), replace αx → αφ(t) to get [φ*α]t (v1,v2...vk) = αφ(t)(Rv1,Rv1...Rvk) for α = Σ'I fI(x) dx^I . (10.9.5) item 9 Finally, since Rij = (D(t)φ)ij = (∂φi(t)/∂tj) as in (10.9.17), we replace R = (D(t)φ) to get [φ*α]t (v1,v2...vk) = αφ(t)( (D(t)φ)v1, (D(t)φ)v1... (D(t)φ)vk) α = Σ'I fI(x) dx^I . (10.9.27) The entire right side depends only on the variable t, appropriate since it is a t-space k-form. Had we started with variables y = φ(x) instead of x = φ(t) the above would have t→x and x→ y to become [φ*α]x (v1,v2...vk) = αφ(x)( (D(x)φ)v1, (D(x)φ)v1... (D(x)φ)vk) α = Σ'I fI(y) dy^I . (10.9.28) This expression appears in Sjamaar [2015] page 96 from which we quote, He writes (D(x)φ) as Dφ(x) and [φ*α]x as φ*(α)x . The tensor function pullback equation also appears in Spivak but not quite as we have written it. Spivak says on the top of page 90 and the bottom of page 89, which we interpret to mean [f*(ω)](p)(v1,v2...vk) = ω(f(p)) ( (D(p)f)v1, (D(p)f)v2, ... (D(p)f)vk ) . Replacing ω→α, f→φ and p → x gives [φ*(α)](x)(v1,v2...vk) = α(φ(x))( (D(x)φ)v1, (D(x)φ)v2, ... (D(x)φ)vk ) . We then interpret (x) on the left and φ(x) on the right as tags indicating the space of the differential form, so the above becomes [φ*(α)]x(v1,v2...vk) = αφ(x)( (D(x)φ)v1, (D(x)φ)v2, ... (D(x)φ)vk ) in agreement with (10.9.28) and with Sjamaar's form. Sjamaar 2015 refers to φ*α as the pullback of α, but Spivak writing in 1965 does not use the term pullback in his book. Having a name for something is always helpful.