Imports
/- Copyright (c) 2025 Joseph Tooby-Smith. All rights reserved. Released under Apache 2.0 license as described in the file LICENSE. Authors: Joseph Tooby-Smith -/ module public import Physlib.Relativity.SpeedOfLight public import Mathlib.Analysis.Real.Sqrt

Free space

i. Overview

In this module we define a type FreeSpace which encapsulates the electric permittivity and magnetic permeability of free space, that is the physical constants which make it up.

We prove basic properties from this definition, and define the speed of light in free space in terms of these constants.

ii. Key results

    FreeSpace : The structure encapsulating the electric permittivity and magnetic permeability of free space.

    FreeSpace.c : The speed of light in free space.

iii. Table of contents

    A. The definition of the free space type

    B. Positivity properties

    C. The speed of light

iv. References

@[expose] public section

A. The definition of the free space type

Free space consists of the specification of the electric permittivity and the magnetic permeability.

The permittivity.

The permeability.

structure FreeSpace where Ξ΅β‚€ : ℝ ΞΌβ‚€ : ℝ Ξ΅β‚€_pos : 0 < Ξ΅β‚€ ΞΌβ‚€_pos : 0 < ΞΌβ‚€

B. Positivity properties

@[simp] lemma Ξ΅β‚€_nonneg : 0 ≀ 𝓕.Ξ΅β‚€ := le_of_lt 𝓕.Ξ΅β‚€_pos@[simp] lemma ΞΌβ‚€_nonneg : 0 ≀ 𝓕.ΞΌβ‚€ := le_of_lt 𝓕.ΞΌβ‚€_pos@[simp] lemma Ξ΅β‚€_ne_zero : 𝓕.Ξ΅β‚€ β‰  0 := ne_of_gt 𝓕.Ξ΅β‚€_pos@[simp] lemma ΞΌβ‚€_ne_zero : 𝓕.ΞΌβ‚€ β‰  0 := ne_of_gt 𝓕.ΞΌβ‚€_pos

C. The speed of light

lemma c_val : (𝓕.c : ℝ) = 1 / √(𝓕.Ξ΅β‚€ * 𝓕.ΞΌβ‚€) := rfl𝓕:FreeSpace⊒ 1 * (√(𝓕.Ξ΅β‚€ * 𝓕.ΞΌβ‚€))⁻¹ * (1 * (√(𝓕.Ξ΅β‚€ * 𝓕.ΞΌβ‚€))⁻¹) = 1 / (𝓕.Ξ΅β‚€ * 𝓕.ΞΌβ‚€) 𝓕:FreeSpace⊒ 𝓕.Ξ΅β‚€ * 𝓕.ΞΌβ‚€ = √(𝓕.Ξ΅β‚€ * 𝓕.ΞΌβ‚€) ^ 2 𝓕:FreeSpace⊒ 0 ≀ 𝓕.Ξ΅β‚€ * 𝓕.μ₀𝓕:FreeSpace⊒ 0 ≀ √(𝓕.Ξ΅β‚€ * 𝓕.ΞΌβ‚€) 𝓕:FreeSpace⊒ 0 ≀ 𝓕.Ξ΅β‚€ * 𝓕.ΞΌβ‚€ All goals completed! πŸ™ 𝓕:FreeSpace⊒ 0 ≀ √(𝓕.Ξ΅β‚€ * 𝓕.ΞΌβ‚€) All goals completed! πŸ™All goals completed! πŸ™