Space time #
This file introduce 4d Minkowski spacetime.
To space and time #
The space part of spacetime.
Equations
- SpaceTime.space = { toFun := fun (x : SpaceTime d) => Lorentz.Vector.spatialPart x, map_add' := ⋯, map_smul' := ⋯ }
Instances For
The function space
is equivariant with respect to rotations.
Equations
- SpaceTime.space_equivariant = { deps := [`SpaceTime.space], tag := "7MTYX" }
Instances For
The time part of spacetime.
Equations
- SpaceTime.time = { toFun := fun (x : SpaceTime d) => Lorentz.Vector.timeComponent x, map_add' := ⋯, map_smul' := ⋯ }
Instances For
theorem
SpaceTime.toTimeAndSpace_basis_natAdd
{d : ℕ}
(i : Fin d)
:
toTimeAndSpace
((TensorSpecies.Tensor.basis ![realLorentzTensor.Color.up]) fun (x : Fin (Nat.succ 0)) =>
Fin.cast ⋯ (Fin.natAdd 1 i)) = (0, Space.basis i)
theorem
SpaceTime.toTimeAndSpace_basis_castAdd
{d : ℕ}
:
toTimeAndSpace
((TensorSpecies.Tensor.basis ![realLorentzTensor.Color.up]) fun (x : Fin (Nat.succ 0)) =>
Fin.cast ⋯ (Fin.castAdd d 0)) = (1, 0)
Coordinates #
For a given μ : Fin (1 + d)
coord μ p
is the coordinate of
p
in the direction μ
.
This is denoted 𝔁 μ p
, where 𝔁
is typed with \MCx
.
Equations
- SpaceTime.coord μ = { toFun := flip (⇑Lorentz.Vector.toCoord) (finSumFinEquiv.symm μ), map_add' := ⋯, map_smul' := ⋯ }
Instances For
For a given μ : Fin (1 + d)
coord μ p
is the coordinate of
p
in the direction μ
.
This is denoted 𝔁 μ p
, where 𝔁
is typed with \MCx
.
Equations
- SpaceTime.term𝔁 = Lean.ParserDescr.node `SpaceTime.term𝔁 1024 (Lean.ParserDescr.symbol "𝔁")
Instances For
theorem
SpaceTime.coord_on_repr
{d : ℕ}
(μ : Fin (1 + d))
(y : TensorSpecies.Tensor.ComponentIdx ![realLorentzTensor.Color.up] → ℝ)
:
(coord μ) ((TensorSpecies.Tensor.basis ![realLorentzTensor.Color.up]).repr.symm (Finsupp.equivFunOnFinite.symm y)) = y fun (x : Fin (Nat.succ 0)) => Fin.cast ⋯ μ
Derivatives #
noncomputable def
SpaceTime.deriv
{M : Type}
[AddCommGroup M]
[Module ℝ M]
[TopologicalSpace M]
{d : ℕ}
(μ : Fin (1 + d))
(f : SpaceTime d → M)
:
SpaceTime d → M
The derivative of a function SpaceTime d → ℝ
along the μ
coordinte.
Equations
- SpaceTime.deriv μ f y = (fderiv ℝ f y) ((TensorSpecies.Tensor.basis ![realLorentzTensor.Color.up]) fun (x : Fin (Nat.succ 0)) => Fin.cast ⋯ μ)
Instances For
The derivative of a function SpaceTime d → ℝ
along the μ
coordinte.
Equations
- SpaceTime.«term∂_» = Lean.ParserDescr.node `SpaceTime.«term∂_» 1024 (Lean.ParserDescr.symbol "∂_")
Instances For
theorem
SpaceTime.deriv_eq
{M : Type}
[AddCommGroup M]
[Module ℝ M]
[TopologicalSpace M]
{d : ℕ}
(μ : Fin (1 + d))
(f : SpaceTime d → M)
(y : SpaceTime d)
:
theorem
SpaceTime.deriv_eq_deriv_on_coord
{d : ℕ}
(μ : Fin (1 + d))
(f : SpaceTime d → ℝ)
(y : SpaceTime d)
:
deriv μ f y = (fderiv ℝ
(fun (y : TensorSpecies.Tensor.ComponentIdx ![realLorentzTensor.Color.up] → ℝ) =>
f ((TensorSpecies.Tensor.basis ![realLorentzTensor.Color.up]).repr.symm (Finsupp.equivFunOnFinite.symm y)))
⇑((TensorSpecies.Tensor.basis ![realLorentzTensor.Color.up]).repr y))
⇑(Finsupp.single (fun (x : Fin (Nat.succ 0)) => Fin.cast ⋯ μ) 1)
@[simp]
theorem
SpaceTime.deriv_toTimeAndSpace
{d : ℕ}
(μ : Fin (1 + d))
(y : SpaceTime d)
:
deriv μ (⇑toTimeAndSpace) y = toTimeAndSpace ((TensorSpecies.Tensor.basis ![realLorentzTensor.Color.up]) fun (x : Fin (Nat.succ 0)) => Fin.cast ⋯ μ)
theorem
SpaceTime.deriv_comp_toTimeAndSpace_natAdd
{M : Type}
[NormedAddCommGroup M]
[NormedSpace ℝ M]
{d : ℕ}
(i : Fin d)
(f : Time × Space d → M)
(y : SpaceTime d)
:
theorem
SpaceTime.deriv_comp_toTimeAndSpace_castAdd
{M : Type}
[NormedAddCommGroup M]
[NormedSpace ℝ M]
{d : ℕ}
(f : Time × Space d → M)
(y : SpaceTime d)
: