Linear Algebra
The basic implementation is inherently slow. Can it be sped up using machine arrays? (Also needs to be generalised to any metric spaces with metric \(g_{\mu\nu}\)? )Vectors
A abstract n-dimensional vector is to be defined as a belonging to the space \(\mathbb{R}^n \). (Should we also have vectors belonging to unspecified vector spaces? ) We can either create an abstract vector of a particular type, or one representing specific values: We can get a component of the vector like this: which is equivalent to taking the dot product with unit vectors \( U . e_\mu \)Dot Product
The dot product is defined (over the reals) as:Setting Values
(This is a work in progress)Using match(?), Vector.append((n+1),value, vector(n) ) Or from a list:
Matrices
Matrices can be thought of as vectors of vectors. It could be a vector of n rank m vectors to create an \(n\times m\) matrix.Square Matrices
Square matrices are elements of the group \(GL(n,\mathbb{F})\).Multiplying
Rectangular Matrices
We should be able to do matrix products on vectors and other matrices.Matrix Multiplication Definition
Lists
We can also enter list like this: Make list from a function:Tensors
We can create a basic tensor type. For example a 3-Tensor \(M_{nmo}\) has a type (They differ from vectors of vectors beause they all need to be of the same rank): We might also need tensor-product types \( A\otimes B \)With tensors \( A_{abcd} \) we can do an index-less notation with a basic symbol \(T_n\) which is two swap the outer indices with the nth index.(Therefor \(T_nT_m\) swaps two indices) And the dot product operation. Or \(P_n\) which permutes the outer n indices. Some rules are:
The permutations of tensors is basically GROUP THEORY
$$T_n T_n = Id $$ $$T_n T_n= Id $$ $$T_{nmo..} = T_n T_m T_o...$$ $$P_n = T_{n1234..}$$ $$T_2=P_2, T_3 = P_2 P_3$$ This \( A_{abc} B^{dbe} = dot( P_2 A, P_2 B) \) = tr( ? ). We note this is equivalent to \( C_{2,2}(A,B) \) where C tells us to contract indices 2 with 2. Thus \( g^{ab} (D_b g_{cd} - D_c g_{db} - D_d g_{cb}) = dot( Id_2 , P_3 o \nabla - \nabla - P_3 o P_2 o P_{-3} o \nabla ) \) ? Or $$\Gamma = dot( Id^{-1}_2, (T_{123} - T_{231} - T_{312}) o \nabla ) (g)$$ $$\Gamma = dot( Id^{-1}_2, (1 - P_3 - P_3 o P_3 ) o \nabla ) (g)$$ $$ M^T = P_{2} o M$$ $$n \neq m \implies T_{nm} \varepsilon = - \varepsilon $$ Contract index 2 of U with index 3 of V \( dot( P_{2} U, P_{3} V )\). Contract index 5 with index 3 of M \(= ? M ) \) $$\sqrt{\textcolor{red}{1}}$$