No-three-collinear sets project to minimal-energy general-position images
ProvedNearEnemy.nearEnemy_noThreeCollinear_exists_bisectorEnergy_minimal_image_generalPosition_distanceTransportLet be a finite set in EuclideanSpace ℝ ι with no three collinear (hypothesis hG: any three distinct points of are not Collinear). Then there exists a real-linear map to the plane such that, writing : (i) is injective on ; (ii) and minimizes bisector energy among all planar sets of the same cardinality; (iii) is in general position (no three collinear, no four cospherical); (iv) ; (v) distances transport exactly, ; (vi) the projected distance count matches the source sign-paired difference-class count:
This is the flagship single-witness bundle for no-three-collinear sources: one projection simultaneously achieves minimal energy, general position, vanishing rotation energy, and faithful distance transport. It assembles the polynomial-method genericity, the energy floor, and the transport lemmas into the form consumed by the main theorem.
import Mathlib
import Definitions.Def_NearEnemyDefs
universe u_1
open scoped RealInnerProductSpace
open scoped Classical
open MvPolynomial
variable {V : Type*} [NormedAddCommGroup V] [InnerProductSpace ℝ V]
variable {ι : Type*} [Fintype ι]
open NearEnemy
theorem NearEnemy.nearEnemy_noThreeCollinear_exists_bisectorEnergy_minimal_image_generalPosition_distanceTransport {G : Finset (EuclideanSpace ℝ ι)}
(hG : ∀ p₁ ∈ G, ∀ p₂ ∈ G, ∀ p₃ ∈ G, p₁ ≠ p₂ → p₁ ≠ p₃ → p₂ ≠ p₃ →
¬ Collinear ℝ ({p₁, p₂, p₃} : Set (EuclideanSpace ℝ ι))) :
∃ T : EuclideanSpace ℝ ι →ₗ[ℝ] EuclideanSpace ℝ (Fin 2),
Set.InjOn (fun x ↦ T x) ↑G ∧
bisectorEnergy (G.image fun x ↦ T x) = 2 * G.card * (G.card - 1) ∧
(∀ P' : Finset (EuclideanSpace ℝ (Fin 2)), P'.card = G.card →
bisectorEnergy (G.image fun x ↦ T x) ≤ bisectorEnergy P') ∧
(∀ q₁ ∈ G.image (fun x ↦ T x), ∀ q₂ ∈ G.image (fun x ↦ T x),
∀ q₃ ∈ G.image (fun x ↦ T x), q₁ ≠ q₂ → q₁ ≠ q₃ → q₂ ≠ q₃ →
¬ Collinear ℝ ({q₁, q₂, q₃} : Set (EuclideanSpace ℝ (Fin 2)))) ∧
(∀ q₁ ∈ G.image (fun x ↦ T x), ∀ q₂ ∈ G.image (fun x ↦ T x),
∀ q₃ ∈ G.image (fun x ↦ T x), ∀ q₄ ∈ G.image (fun x ↦ T x),
q₁ ≠ q₂ → q₁ ≠ q₃ → q₁ ≠ q₄ → q₂ ≠ q₃ → q₂ ≠ q₄ → q₃ ≠ q₄ →
¬ EuclideanGeometry.Cospherical
({q₁, q₂, q₃, q₄} : Set (EuclideanSpace ℝ (Fin 2)))) ∧
rotationEnergy (G.image fun x ↦ T x) = 0 ∧
(∀ a ∈ G, ∀ b ∈ G, ∀ c ∈ G, ∀ e ∈ G,
(dist (T a) (T b) = dist (T c) (T e) ↔
(a - b = c - e ∨ a - b = -(c - e)))) ∧
(((G.image fun x ↦ T x).offDiag).image fun q ↦ dist q.1 q.2).card =
((G.offDiag).image fun p ↦
({p.1 - p.2, p.2 - p.1} : Finset (EuclideanSpace ℝ ι))).card := by sorry
Confirmed by the mission captain (proposal self-audit).