Imports
/- Copyright (c) 2026 Robert Sneiderman. All rights reserved. Released under Apache 2.0 license as described in the file LICENSE. Authors: Robert Sneiderman -/ module public import PhyslibAlpha.SpaceAndTime.Space.Surfaces.SphericalShell public import Physlib.SpaceAndTime.Space.Integrals.Basic public import Mathlib.MeasureTheory.Measure.Lebesgue.EqHaar

Solid sphere surfaces in Space d

The solid sphere is the closed unit ball in Space d. Unlike the line or the spherical shell, it is a region of positive ambient volume, so the measure associated with it is the ambient volume restricted to the ball rather than a pushforward of a lower-dimensional measure. The requirement that the surface has ambient measure zero is therefore not applicable here, and is replaced by a statement that the solid sphere has positive ambient volume.

@[expose] public section

A. The definition of the solid sphere surface

The inclusion into Space d of its closed unit ball B^d (the subtype coercion x ↦ x.1).

def solidSphere (d : ) : Metric.closedBall (0 : Space d) 1 Space d := fun x => x.1
lemma solidSphere_injective (d : ) : Function.Injective (solidSphere d) := d:Function.Injective (solidSphere d) d:x:(Metric.closedBall 0 1)y:(Metric.closedBall 0 1)h:solidSphere d x = solidSphere d yx = y d:x:(Metric.closedBall 0 1)y:(Metric.closedBall 0 1)h:x = yx = y All goals completed! 🐙lemma solidSphere_continuous (d : ) : Continuous (solidSphere d) := continuous_subtype_vallemma solidSphere_measurableEmbedding (d : ) : MeasurableEmbedding (solidSphere d) := d:MeasurableEmbedding (solidSphere d) d:Continuous (solidSphere d)d:Function.Injective (solidSphere d) d:Continuous (solidSphere d) All goals completed! 🐙 d:Function.Injective (solidSphere d) All goals completed! 🐙d:x:(Metric.closedBall 0 1)hx:x 1solidSphere d x 1 All goals completed! 🐙

B. The measure associated with the solid sphere

The measure on Space d corresponding to integration over a solid sphere, i.e. the ambient volume measure restricted to the closed unit ball.

def solidSphereMeasure (d : ) : Measure (Space d) := volume.restrict (Metric.closedBall (0 : Space d) 1)
𝕜:TypeE:TypeF:TypeF':Typeinst✝⁵:RCLike 𝕜inst✝⁴:NormedAddCommGroup Einst✝³:NormedAddCommGroup Finst✝²:NormedAddCommGroup F'inst✝¹:NormedSpace Einst✝:NormedSpace Fd:volume (Metric.closedBall 0 1) All goals completed! 🐙instance solidSphereMeasure_hasTemperateGrowth (d : ) : (solidSphereMeasure d).HasTemperateGrowth := inferInstance

C. The distribution associated with the solid sphere

The distribution on Space d corresponding to integration over a solid sphere. One can roughly think of this distribution as taking a test function f to its integral against a mass, charge or current density spread over a solid ball.

def solidSphereDist (d : ) : (Space d) →d[] := SchwartzMap.integralCLM (solidSphereMeasure d)
All goals completed! 🐙All goals completed! 🐙

D. The solid sphere has positive ambient volume

lemma solidSphere_volume_pos (d : ) : 0 < volume (Metric.closedBall (0 : Space d) 1) := d:0 < volume (Metric.closedBall 0 1) d:0 < volume (Metric.ball 0 1)d:volume (Metric.ball 0 1) volume (Metric.closedBall 0 1) d:0 < volume (Metric.ball 0 1) All goals completed! 🐙 d:volume (Metric.ball 0 1) volume (Metric.closedBall 0 1) All goals completed! 🐙d:0 < volume (Metric.closedBall 0 1) All goals completed! 🐙