3. The Reparametrization from a Handle Family
Definition 3.0
Definition 3.0. A handle family for the data (P, \mathcal U, \{r_\alpha\}, k) is a subdivision K of P together with continuous self-maps g_\alpha : P \to P
(one per index \alpha) such that:
(a) (face preservation) for every \alpha, either r_\alpha \equiv 0, or
g_\alpha maps every boundary subpolyhedron of P into itself;
(b) (general position, \le k per cell) for every facet D of K there is a
set A of at most k indices such that for every \alpha \notin A, the map
g_\alpha is constant on the closed cell \operatorname{conv}(D).
(There is no separate Lean definition: the handle family's data and properties are carried as hypotheses of Proposition 3.2 and conclusions of Theorem 3.4 below.)
Proposition 3.2
Proposition 3.2. Given a handle family (K, \{g_\alpha\}), the map
u(t,p,x) \;:=\; (1-t)\,p \;+\; t \sum_\alpha r_\alpha(x)\, g_\alpha(p)
is a well-defined continuous map [0,1]\times P\times X \to P satisfying (i)–(iii)
of Proposition 2.1 (with the same K in (ii)).
Proof. The inner sum \sigma(p,x) := \sum_\alpha r_\alpha(x)\,g_\alpha(p) is a
convex combination — the weights r_\alpha(x) are nonnegative and sum to 1, and
only finitely many are nonzero — of the points g_\alpha(p) \in P; since P is
convex (a convex hull), \sigma(p,x) \in P, and then u(t,p,x) = (1-t)p + t\,\sigma(p,x) \in P likewise. Continuity of \sigma jointly in (p,x) follows from
local finiteness of the partition of unity (locally, the sum is a finite sum of
continuous functions), and then u is continuous.
(i) is clear: u(0,p,x) = p.
(ii): Fix a facet D of K and take the exceptional index set A, |A| \le k, from
(b). We claim the family (p,x) \mapsto f(u(1,p,x),x) on
\operatorname{conv}(D) \times X is supported on \bigcup_{\alpha\in A} U_\alpha. So
let x \notin \bigcup_{\alpha \in A} U_\alpha and p, p' \in \operatorname{conv}(D);
it suffices to show u(1,p,x) = u(1,p',x), i.e.
\sum_\alpha r_\alpha(x) g_\alpha(p) = \sum_\alpha r_\alpha(x) g_\alpha(p'). Compare
termwise: for \alpha \in A we have x \notin U_\alpha, and subordination
(\overline{\operatorname{supp}\, r_\alpha} \subseteq U_\alpha) gives
r_\alpha(x)=0, so the terms vanish; for \alpha \notin A, g_\alpha is constant on
\operatorname{conv}(D), so g_\alpha(p) = g_\alpha(p'). Thus the restricted family
is adapted with constant k.
(iii): Let Q be a boundary subpolyhedron and p \in Q. Being the convex hull of a
finite set, Q is convex. In the sum \sigma(p,x), only indices with
r_\alpha(x) \ne 0 contribute; such \alpha have r_\alpha \not\equiv 0, so by (a)
g_\alpha preserves Q, giving g_\alpha(p) \in Q. Hence \sigma(p,x), a convex
combination of points of Q, lies in Q, and so does
u(t,p,x) = (1-t)p + t\,\sigma(p,x). \blacksquare
In Lean, the reparametrization, its membership in P, and its continuity are
built in stages:
open Set unitInterval Geometry
open scoped Topology BigOperators
open _root_.FamiliesOfMapsB01
namespace Submission
namespace FamiliesOfMapsB01
variable {k : ℕ} {ι X T : Type*} [TopologicalSpace X] [TopologicalSpace T]
/-- The underlying `ℝᵏ`-valued reparametrisation. -/
noncomputable def reparamVal
{P : Set (Fin k → ℝ)}
(ρ : PartitionOfUnity ι X univ) (g : ι → C(P, P))
(t : I) (p : P) (x : X) : Fin k → ℝ :=
(1 - (t : ℝ)) • (p : Fin k → ℝ)
+ (t : ℝ) • (∑ᶠ α, ρ α x • ((g α p : P) : Fin k → ℝ))
/-- The inner convex combination lands in `P`. -/
lemma reparam_inner_mem
{P : Set (Fin k → ℝ)} (hPc : Convex ℝ P)
(ρ : PartitionOfUnity ι X univ) (g : ι → C(P, P)) (p : P) (x : X) :
(∑ᶠ α, ρ α x • ((g α p : P) : Fin k → ℝ)) ∈ P := k:ℕι:Type u_1X:Type u_2inst✝:TopologicalSpace XP:Set (Fin k → ℝ)hPc:Convex ℝ Pρ:PartitionOfUnity ι Xg:ι → C(↑P, ↑P)p:↑Px:X⊢ ∑ᶠ (α : ι), (ρ α) x • ↑((g α) p) ∈ P
k:ℕι:Type u_1X:Type u_2inst✝:TopologicalSpace XP:Set (Fin k → ℝ)hPc:Convex ℝ Pρ:PartitionOfUnity ι Xg:ι → C(↑P, ↑P)p:↑Px:X⊢ ∀ (i : ι), (ρ i) x ≠ 0 → ↑((g i) p) ∈ P
intro α k:ℕι:Type u_1X:Type u_2inst✝:TopologicalSpace XP:Set (Fin k → ℝ)hPc:Convex ℝ Pρ:PartitionOfUnity ι Xg:ι → C(↑P, ↑P)p:↑Px:Xα:ιa✝:(ρ α) x ≠ 0⊢ ↑((g α) p) ∈ P
All goals completed! 🐙
/-- `reparamVal` lands in `P`. -/
lemma reparamVal_mem
{P : Set (Fin k → ℝ)} (hPc : Convex ℝ P)
(ρ : PartitionOfUnity ι X univ) (g : ι → C(P, P)) (t : I) (p : P) (x : X) :
reparamVal ρ g t p x ∈ P := k:ℕι:Type u_1X:Type u_2inst✝:TopologicalSpace XP:Set (Fin k → ℝ)hPc:Convex ℝ Pρ:PartitionOfUnity ι Xg:ι → C(↑P, ↑P)t:↑Ip:↑Px:X⊢ reparamVal ρ g t p x ∈ P
k:ℕι:Type u_1X:Type u_2inst✝:TopologicalSpace XP:Set (Fin k → ℝ)hPc:Convex ℝ Pρ:PartitionOfUnity ι Xg:ι → C(↑P, ↑P)t:↑Ip:↑Px:Xhp:↑p ∈ P⊢ reparamVal ρ g t p x ∈ P
k:ℕι:Type u_1X:Type u_2inst✝:TopologicalSpace XP:Set (Fin k → ℝ)hPc:Convex ℝ Pρ:PartitionOfUnity ι Xg:ι → C(↑P, ↑P)t:↑Ip:↑Px:Xhp:↑p ∈ Phinner:∑ᶠ (α : ι), (ρ α) x • ↑((g α) p) ∈ P⊢ reparamVal ρ g t p x ∈ P
k:ℕι:Type u_1X:Type u_2inst✝:TopologicalSpace XP:Set (Fin k → ℝ)hPc:Convex ℝ Pρ:PartitionOfUnity ι Xg:ι → C(↑P, ↑P)t:↑Ip:↑Px:Xhp:↑p ∈ Phinner:∑ᶠ (α : ι), (ρ α) x • ↑((g α) p) ∈ Pht0:0 ≤ ↑t⊢ reparamVal ρ g t p x ∈ P
k:ℕι:Type u_1X:Type u_2inst✝:TopologicalSpace XP:Set (Fin k → ℝ)hPc:Convex ℝ Pρ:PartitionOfUnity ι Xg:ι → C(↑P, ↑P)t:↑Ip:↑Px:Xhp:↑p ∈ Phinner:∑ᶠ (α : ι), (ρ α) x • ↑((g α) p) ∈ Pht0:0 ≤ ↑tht1:↑t ≤ 1⊢ reparamVal ρ g t p x ∈ P
exact hPc hp hinner (k:ℕι:Type u_1X:Type u_2inst✝:TopologicalSpace XP:Set (Fin k → ℝ)hPc:Convex ℝ Pρ:PartitionOfUnity ι Xg:ι → C(↑P, ↑P)t:↑Ip:↑Px:Xhp:↑p ∈ Phinner:∑ᶠ (α : ι), (ρ α) x • ↑((g α) p) ∈ Pht0:0 ≤ ↑tht1:↑t ≤ 1⊢ 0 ≤ 1 - ↑t All goals completed! 🐙) ht0 (k:ℕι:Type u_1X:Type u_2inst✝:TopologicalSpace XP:Set (Fin k → ℝ)hPc:Convex ℝ Pρ:PartitionOfUnity ι Xg:ι → C(↑P, ↑P)t:↑Ip:↑Px:Xhp:↑p ∈ Phinner:∑ᶠ (α : ι), (ρ α) x • ↑((g α) p) ∈ Pht0:0 ≤ ↑tht1:↑t ≤ 1⊢ 1 - ↑t + ↑t = 1 All goals completed! 🐙)
/-
Continuity of the inner sum jointly in `(p, x)`.
-/
lemma reparam_inner_continuous
{P : Set (Fin k → ℝ)}
(ρ : PartitionOfUnity ι X univ) (g : ι → C(P, P)) :
Continuous (fun q : P × X => ∑ᶠ α, ρ α q.2 • ((g α q.1 : P) : Fin k → ℝ)) := k:ℕι:Type u_1X:Type u_2inst✝:TopologicalSpace XP:Set (Fin k → ℝ)ρ:PartitionOfUnity ι Xg:ι → C(↑P, ↑P)⊢ Continuous[instTopologicalSpaceProd, _] fun q => ∑ᶠ (α : ι), (ρ α) q.2 • ↑((g α) q.1)
k:ℕι:Type u_1X:Type u_2inst✝:TopologicalSpace XP:Set (Fin k → ℝ)ρ:PartitionOfUnity ι Xg:ι → C(↑P, ↑P)⊢ ∀ (i : ι), Continuous[instTopologicalSpaceProd, _] fun q => (ρ i) q.2 • ↑((g i) q.1)k:ℕι:Type u_1X:Type u_2inst✝:TopologicalSpace XP:Set (Fin k → ℝ)ρ:PartitionOfUnity ι Xg:ι → C(↑P, ↑P)⊢ LocallyFinite fun i => Function.support fun q => (ρ i) q.2 • ↑((g i) q.1);
k:ℕι:Type u_1X:Type u_2inst✝:TopologicalSpace XP:Set (Fin k → ℝ)ρ:PartitionOfUnity ι Xg:ι → C(↑P, ↑P)⊢ ∀ (i : ι), Continuous[instTopologicalSpaceProd, _] fun q => (ρ i) q.2 • ↑((g i) q.1) All goals completed! 🐙;
k:ℕι:Type u_1X:Type u_2inst✝:TopologicalSpace XP:Set (Fin k → ℝ)ρ:PartitionOfUnity ι Xg:ι → C(↑P, ↑P)⊢ LocallyFinite fun i => Function.support fun q => (ρ i) q.2 • ↑((g i) q.1) k:ℕι:Type u_1X:Type u_2inst✝:TopologicalSpace XP:Set (Fin k → ℝ)ρ:PartitionOfUnity ι Xg:ι → C(↑P, ↑P)⊢ ↑P × X → Xk:ℕι:Type u_1X:Type u_2inst✝:TopologicalSpace XP:Set (Fin k → ℝ)ρ:PartitionOfUnity ι Xg:ι → C(↑P, ↑P)⊢ Continuous[instTopologicalSpaceProd, inst✝] ?refine'_2.refine'_1k:ℕι:Type u_1X:Type u_2inst✝:TopologicalSpace XP:Set (Fin k → ℝ)ρ:PartitionOfUnity ι Xg:ι → C(↑P, ↑P)h:LocallyFinite fun x => ?refine'_2.refine'_1 ⁻¹' Function.support ⇑(ρ x)i:ι⊢ (Function.support fun q => (ρ i) q.2 • ↑((g i) q.1)) ⊆ ?refine'_2.refine'_1 ⁻¹' Function.support ⇑(ρ i);
exacts [ fun q => q.2, continuous_snd, fun q hq => k:ℕι:Type u_1X:Type u_2inst✝:TopologicalSpace XP:Set (Fin k → ℝ)ρ:PartitionOfUnity ι Xg:ι → C(↑P, ↑P)h:LocallyFinite fun x => (fun q => q.2) ⁻¹' Function.support ⇑(ρ x)i:ιq:↑P × Xhq:q ∈ Function.support fun q => (ρ i) q.2 • ↑((g i) q.1)⊢ q ∈ (fun q => q.2) ⁻¹' Function.support ⇑(ρ i) k:ℕι:Type u_1X:Type u_2inst✝:TopologicalSpace XP:Set (Fin k → ℝ)ρ:PartitionOfUnity ι Xg:ι → C(↑P, ↑P)h:LocallyFinite fun x => (fun q => q.2) ⁻¹' Function.support ⇑(ρ x)i:ιq:↑P × Xhq:q ∉ (fun q => q.2) ⁻¹' Function.support ⇑(ρ i)⊢ q ∉ Function.support fun q => (ρ i) q.2 • ↑((g i) q.1); All goals completed! 🐙 ]
/-
`reparamVal` is continuous as a map `I × P × X → ℝᵏ`.
-/
lemma reparamVal_continuous
{P : Set (Fin k → ℝ)}
(ρ : PartitionOfUnity ι X univ) (g : ι → C(P, P)) :
Continuous (fun z : I × P × X => reparamVal ρ g z.1 z.2.1 z.2.2) := k:ℕι:Type u_1X:Type u_2inst✝:TopologicalSpace XP:Set (Fin k → ℝ)ρ:PartitionOfUnity ι Xg:ι → C(↑P, ↑P)⊢ Continuous[instTopologicalSpaceProd, _] fun z => reparamVal ρ g z.1 z.2.1 z.2.2
k:ℕι:Type u_1X:Type u_2inst✝:TopologicalSpace XP:Set (Fin k → ℝ)ρ:PartitionOfUnity ι Xg:ι → C(↑P, ↑P)⊢ Continuous[instTopologicalSpaceProd, _] fun x => -↑x.1k:ℕι:Type u_1X:Type u_2inst✝:TopologicalSpace XP:Set (Fin k → ℝ)ρ:PartitionOfUnity ι Xg:ι → C(↑P, ↑P)⊢ Continuous[instTopologicalSpaceProd, _] fun x => ↑x.2.1k:ℕι:Type u_1X:Type u_2inst✝:TopologicalSpace XP:Set (Fin k → ℝ)ρ:PartitionOfUnity ι Xg:ι → C(↑P, ↑P)⊢ Continuous[instTopologicalSpaceProd, _] fun x => ↑x.1k:ℕι:Type u_1X:Type u_2inst✝:TopologicalSpace XP:Set (Fin k → ℝ)ρ:PartitionOfUnity ι Xg:ι → C(↑P, ↑P)⊢ Continuous[instTopologicalSpaceProd, _] fun x => ∑ᶠ (α : ι), (ρ α) x.2.2 • ↑((g α) x.2.1);
k:ℕι:Type u_1X:Type u_2inst✝:TopologicalSpace XP:Set (Fin k → ℝ)ρ:PartitionOfUnity ι Xg:ι → C(↑P, ↑P)⊢ Continuous[instTopologicalSpaceProd, _] fun x => -↑x.1 All goals completed! 🐙;
k:ℕι:Type u_1X:Type u_2inst✝:TopologicalSpace XP:Set (Fin k → ℝ)ρ:PartitionOfUnity ι Xg:ι → C(↑P, ↑P)⊢ Continuous[instTopologicalSpaceProd, _] fun x => ↑x.2.1 All goals completed! 🐙;
k:ℕι:Type u_1X:Type u_2inst✝:TopologicalSpace XP:Set (Fin k → ℝ)ρ:PartitionOfUnity ι Xg:ι → C(↑P, ↑P)⊢ Continuous[instTopologicalSpaceProd, _] fun x => ↑x.1 All goals completed! 🐙;
k:ℕι:Type u_1X:Type u_2inst✝:TopologicalSpace XP:Set (Fin k → ℝ)ρ:PartitionOfUnity ι Xg:ι → C(↑P, ↑P)⊢ Continuous[instTopologicalSpaceProd, _] fun x => ∑ᶠ (α : ι), (ρ α) x.2.2 • ↑((g α) x.2.1) All goals completed! 🐙
/-- The bundled reparametrisation `u : C(I × P × X, P)`. -/
noncomputable def reparamMap
{P : Set (Fin k → ℝ)} (hPc : Convex ℝ P)
(ρ : PartitionOfUnity ι X univ) (g : ι → C(P, P)) :
C(I × P × X, P) where
toFun z := ⟨reparamVal ρ g z.1 z.2.1 z.2.2, reparamVal_mem hPc ρ g z.1 z.2.1 z.2.2⟩
continuous_toFun := (reparamVal_continuous ρ g).subtype_mk _
and the three properties (i)–(iii) are verified in:
/-
**Structural assembly (continuous case).** From a handle family with the face-preservation
and per-cell `≤ k` properties, the three conclusions of `reparam_exists` follow.
-/
set_option maxHeartbeats 1000000 in
theorem reparam_of_handles
{P : Set (Fin k → ℝ)} (hPc : Convex ℝ P)
[CompactSpace X]
(U : ι → Set X)
(ρ : PartitionOfUnity ι X univ) (hρ : ρ.IsSubordinate U)
(f : C(P × X, T))
(K : Subdivision P)
(g : ι → C(P, P))
(hface : ∀ α, ρ α = 0 ∨
(∀ Q : Set P, IsBoundarySubpolyhedron Q → ∀ p : P, p ∈ Q → g α p ∈ Q))
(hk : ∀ D ∈ K.complex.facets, ∃ A : Finset ι, A.card ≤ k ∧
∀ α, α ∉ A → ∀ p p' : P,
((p : Fin k → ℝ) ∈ convexHull ℝ (D : Set (Fin k → ℝ))) →
((p' : Fin k → ℝ) ∈ convexHull ℝ (D : Set (Fin k → ℝ))) →
g α p = g α p') :
∃ u : C(I × P × X, P),
(∀ p : P, ∀ x : X, u (0, p, x) = p) ∧
(∃ K : Subdivision P, ∀ D ∈ K.complex.facets,
AdaptedTo U k (fun q : closedCell P D × X => f (u (1, q.1.1, q.2), q.2))) ∧
(∀ Q : Set P, IsBoundarySubpolyhedron Q → ∀ t : I, ∀ p : P, ∀ x : X,
p ∈ Q → u (t, p, x) ∈ Q) := k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'⊢ ∃ u,
(∀ (p : ↑P) (x : X), u (0, p, x) = p) ∧
(∃ K, ∀ D ∈ K.complex.facets, AdaptedTo U k fun q => f (u (1, ↑q.1, q.2), q.2)) ∧
∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ (t : ↑I) (p : ↑P) (x : X), p ∈ Q → u (t, p, x) ∈ Q
k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'⊢ ∀ (p : ↑P) (x : X), (reparamMap hPc ρ g) (0, p, x) = pk:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'⊢ ∃ K, ∀ D ∈ K.complex.facets, AdaptedTo U k fun q => f ((reparamMap hPc ρ g) (1, ↑q.1, q.2), q.2)k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'⊢ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ (t : ↑I) (p : ↑P) (x : X), p ∈ Q → (reparamMap hPc ρ g) (t, p, x) ∈ Q;
k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'⊢ ∀ (p : ↑P) (x : X), (reparamMap hPc ρ g) (0, p, x) = p intro p k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'p:↑Px:X⊢ (reparamMap hPc ρ g) (0, p, x) = p
All goals completed! 🐙;
k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'⊢ ∃ K, ∀ D ∈ K.complex.facets, AdaptedTo U k fun q => f ((reparamMap hPc ρ g) (1, ↑q.1, q.2), q.2) k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'⊢ ∀ D ∈ K.complex.facets, AdaptedTo U k fun q => f ((reparamMap hPc ρ g) (1, ↑q.1, q.2), q.2);
intro D k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'D:Finset (Fin k → ℝ)hD:D ∈ K.complex.facets⊢ AdaptedTo U k fun q => f ((reparamMap hPc ρ g) (1, ↑q.1, q.2), q.2)
k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'D:Finset (Fin k → ℝ)hD:D ∈ K.complex.facetsA:Finset ιhAcard:A.card ≤ khAconst:∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'⊢ AdaptedTo U k fun q => f ((reparamMap hPc ρ g) (1, ↑q.1, q.2), q.2)
k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'D:Finset (Fin k → ℝ)hD:D ∈ K.complex.facetsA:Finset ιhAcard:A.card ≤ khAconst:∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'⊢ Supported (fun q => f ((reparamMap hPc ρ g) (1, ↑q.1, q.2), q.2)) (⋃ α ∈ A, U α)
intro q k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'D:Finset (Fin k → ℝ)hD:D ∈ K.complex.facetsA:Finset ιhAcard:A.card ≤ khAconst:∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'q:↑(closedCell P D)q':↑(closedCell P D)⊢ ∀ x ∉ ⋃ α ∈ A, U α,
(fun q => f ((reparamMap hPc ρ g) (1, ↑q.1, q.2), q.2)) (q, x) =
(fun q => f ((reparamMap hPc ρ g) (1, ↑q.1, q.2), q.2)) (q', x) k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'D:Finset (Fin k → ℝ)hD:D ∈ K.complex.facetsA:Finset ιhAcard:A.card ≤ khAconst:∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'q:↑(closedCell P D)q':↑(closedCell P D)x:X⊢ x ∉ ⋃ α ∈ A, U α →
(fun q => f ((reparamMap hPc ρ g) (1, ↑q.1, q.2), q.2)) (q, x) =
(fun q => f ((reparamMap hPc ρ g) (1, ↑q.1, q.2), q.2)) (q', x) k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'D:Finset (Fin k → ℝ)hD:D ∈ K.complex.facetsA:Finset ιhAcard:A.card ≤ khAconst:∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'q:↑(closedCell P D)q':↑(closedCell P D)x:Xhx:x ∉ ⋃ α ∈ A, U α⊢ (fun q => f ((reparamMap hPc ρ g) (1, ↑q.1, q.2), q.2)) (q, x) =
(fun q => f ((reparamMap hPc ρ g) (1, ↑q.1, q.2), q.2)) (q', x)
k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'D:Finset (Fin k → ℝ)hD:D ∈ K.complex.facetsA:Finset ιhAcard:A.card ≤ khAconst:∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'q:↑(closedCell P D)q':↑(closedCell P D)x:Xhx:x ∉ ⋃ α ∈ A, U α⊢ f (⟨∑ᶠ (α : ι), (ρ α) x • ↑((g α) ↑q), ⋯⟩, x) = f (⟨∑ᶠ (α : ι), (ρ α) x • ↑((g α) ↑q'), ⋯⟩, x);
k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'D:Finset (Fin k → ℝ)hD:D ∈ K.complex.facetsA:Finset ιhAcard:A.card ≤ khAconst:∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'q:↑(closedCell P D)q':↑(closedCell P D)x:Xhx:x ∉ ⋃ α ∈ A, U α⊢ ⟨∑ᶠ (α : ι), (ρ α) x • ↑((g α) ↑q), ⋯⟩ = ⟨∑ᶠ (α : ι), (ρ α) x • ↑((g α) ↑q'), ⋯⟩;
k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'D:Finset (Fin k → ℝ)hD:D ∈ K.complex.facetsA:Finset ιhAcard:A.card ≤ khAconst:∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'q:↑(closedCell P D)q':↑(closedCell P D)x:Xhx:x ∉ ⋃ α ∈ A, U α⊢ (fun α => (ρ α) x • ↑((g α) ↑q)) = fun α => (ρ α) x • ↑((g α) ↑q');
k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'D:Finset (Fin k → ℝ)hD:D ∈ K.complex.facetsA:Finset ιhAcard:A.card ≤ khAconst:∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'q:↑(closedCell P D)q':↑(closedCell P D)x:Xhx:x ∉ ⋃ α ∈ A, U αα:ιx✝:Fin k⊢ ((ρ α) x • ↑((g α) ↑q)) x✝ = ((ρ α) x • ↑((g α) ↑q')) x✝; k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'D:Finset (Fin k → ℝ)hD:D ∈ K.complex.facetsA:Finset ιhAcard:A.card ≤ khAconst:∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'q:↑(closedCell P D)q':↑(closedCell P D)x:Xhx:x ∉ ⋃ α ∈ A, U αα:ιx✝:Fin khα:α ∈ A⊢ ((ρ α) x • ↑((g α) ↑q)) x✝ = ((ρ α) x • ↑((g α) ↑q')) x✝k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'D:Finset (Fin k → ℝ)hD:D ∈ K.complex.facetsA:Finset ιhAcard:A.card ≤ khAconst:∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'q:↑(closedCell P D)q':↑(closedCell P D)x:Xhx:x ∉ ⋃ α ∈ A, U αα:ιx✝:Fin khα:α ∉ A⊢ ((ρ α) x • ↑((g α) ↑q)) x✝ = ((ρ α) x • ↑((g α) ↑q')) x✝ k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'D:Finset (Fin k → ℝ)hD:D ∈ K.complex.facetsA:Finset ιhAcard:A.card ≤ khAconst:∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'q:↑(closedCell P D)q':↑(closedCell P D)x:Xhx:x ∉ ⋃ α ∈ A, U αα:ιx✝:Fin khα:α ∈ A⊢ ((ρ α) x • ↑((g α) ↑q)) x✝ = ((ρ α) x • ↑((g α) ↑q')) x✝k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'D:Finset (Fin k → ℝ)hD:D ∈ K.complex.facetsA:Finset ιhAcard:A.card ≤ khAconst:∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'q:↑(closedCell P D)q':↑(closedCell P D)x:Xhx:x ∉ ⋃ α ∈ A, U αα:ιx✝:Fin khα:α ∉ A⊢ ((ρ α) x • ↑((g α) ↑q)) x✝ = ((ρ α) x • ↑((g α) ↑q')) x✝ k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)D:Finset (Fin k → ℝ)A:Finset ιq:↑(closedCell P D)q':↑(closedCell P D)x:Xα:ιx✝:Fin khρ:∀ (i : ι), tsupport ⇑(ρ i) ⊆ U ihface:∀ (α : ι),
ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ (a : Fin k → ℝ) (b : a ∈ P), ⟨a, b⟩ ∈ Q → (g α) ⟨a, b⟩ ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A,
A.card ≤ k ∧
∀ α ∉ A,
∀ (a : Fin k → ℝ) (b : a ∈ P) (a_1 : Fin k → ℝ) (b_1 : a_1 ∈ P),
a ∈ (convexHull ℝ) ↑D → a_1 ∈ (convexHull ℝ) ↑D → (g α) ⟨a, b⟩ = (g α) ⟨a_1, b_1⟩hD:D ∈ K.complex.facetshAcard:A.card ≤ khAconst:∀ α ∉ A,
∀ (a : Fin k → ℝ) (b : a ∈ P) (a_1 : Fin k → ℝ) (b_1 : a_1 ∈ P),
a ∈ (convexHull ℝ) ↑D → a_1 ∈ (convexHull ℝ) ↑D → (g α) ⟨a, b⟩ = (g α) ⟨a_1, b_1⟩hx:∀ x_1 ∈ A, x ∉ U x_1hα:α ∉ A⊢ ↑((g α) ↑q) x✝ = ↑((g α) ↑q') x✝ ∨ (ρ α) x = 0 ;
k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)D:Finset (Fin k → ℝ)A:Finset ιq:↑(closedCell P D)q':↑(closedCell P D)x:Xα:ιx✝:Fin khρ:∀ (i : ι), tsupport ⇑(ρ i) ⊆ U ihface:∀ (α : ι),
ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ (a : Fin k → ℝ) (b : a ∈ P), ⟨a, b⟩ ∈ Q → (g α) ⟨a, b⟩ ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A,
A.card ≤ k ∧
∀ α ∉ A,
∀ (a : Fin k → ℝ) (b : a ∈ P) (a_1 : Fin k → ℝ) (b_1 : a_1 ∈ P),
a ∈ (convexHull ℝ) ↑D → a_1 ∈ (convexHull ℝ) ↑D → (g α) ⟨a, b⟩ = (g α) ⟨a_1, b_1⟩hD:D ∈ K.complex.facetshAcard:A.card ≤ khAconst:∀ α ∉ A,
∀ (a : Fin k → ℝ) (b : a ∈ P) (a_1 : Fin k → ℝ) (b_1 : a_1 ∈ P),
a ∈ (convexHull ℝ) ↑D → a_1 ∈ (convexHull ℝ) ↑D → (g α) ⟨a, b⟩ = (g α) ⟨a_1, b_1⟩hx:∀ x_1 ∈ A, x ∉ U x_1hα:α ∈ A⊢ ↑((g α) ↑q) x✝ = ↑((g α) ↑q') x✝ ∨ (ρ α) x = 0 All goals completed! 🐙;
k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)D:Finset (Fin k → ℝ)A:Finset ιq:↑(closedCell P D)q':↑(closedCell P D)x:Xα:ιx✝:Fin khρ:∀ (i : ι), tsupport ⇑(ρ i) ⊆ U ihface:∀ (α : ι),
ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ (a : Fin k → ℝ) (b : a ∈ P), ⟨a, b⟩ ∈ Q → (g α) ⟨a, b⟩ ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A,
A.card ≤ k ∧
∀ α ∉ A,
∀ (a : Fin k → ℝ) (b : a ∈ P) (a_1 : Fin k → ℝ) (b_1 : a_1 ∈ P),
a ∈ (convexHull ℝ) ↑D → a_1 ∈ (convexHull ℝ) ↑D → (g α) ⟨a, b⟩ = (g α) ⟨a_1, b_1⟩hD:D ∈ K.complex.facetshAcard:A.card ≤ khAconst:∀ α ∉ A,
∀ (a : Fin k → ℝ) (b : a ∈ P) (a_1 : Fin k → ℝ) (b_1 : a_1 ∈ P),
a ∈ (convexHull ℝ) ↑D → a_1 ∈ (convexHull ℝ) ↑D → (g α) ⟨a, b⟩ = (g α) ⟨a_1, b_1⟩hx:∀ x_1 ∈ A, x ∉ U x_1hα:α ∉ A⊢ ↑((g α) ↑q) x✝ = ↑((g α) ↑q') x✝ ∨ (ρ α) x = 0 All goals completed! 🐙;
k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'⊢ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ (t : ↑I) (p : ↑P) (x : X), p ∈ Q → (reparamMap hPc ρ g) (t, p, x) ∈ Q intro Q k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'Q:Set ↑PhQ:IsBoundarySubpolyhedron Q⊢ ∀ (t : ↑I) (p : ↑P) (x : X), p ∈ Q → (reparamMap hPc ρ g) (t, p, x) ∈ Q k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'Q:Set ↑PhQ:IsBoundarySubpolyhedron Qt:↑I⊢ ∀ (p : ↑P) (x : X), p ∈ Q → (reparamMap hPc ρ g) (t, p, x) ∈ Q k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'Q:Set ↑PhQ:IsBoundarySubpolyhedron Qt:↑Ip:↑P⊢ ∀ (x : X), p ∈ Q → (reparamMap hPc ρ g) (t, p, x) ∈ Q k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'Q:Set ↑PhQ:IsBoundarySubpolyhedron Qt:↑Ip:↑Px:X⊢ p ∈ Q → (reparamMap hPc ρ g) (t, p, x) ∈ Q k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'Q:Set ↑PhQ:IsBoundarySubpolyhedron Qt:↑Ip:↑Px:XhpQ:p ∈ Q⊢ (reparamMap hPc ρ g) (t, p, x) ∈ Q
have hQc : Convex ℝ (Q.image (fun p : P => (p : Fin k → ℝ))) := k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'⊢ ∃ u,
(∀ (p : ↑P) (x : X), u (0, p, x) = p) ∧
(∃ K, ∀ D ∈ K.complex.facets, AdaptedTo U k fun q => f (u (1, ↑q.1, q.2), q.2)) ∧
∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ (t : ↑I) (p : ↑P) (x : X), p ∈ Q → u (t, p, x) ∈ Q
k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'Q:Set ↑Pt:↑Ip:↑Px:XhpQ:p ∈ QhQ:Subtype.val '' Q ⊆ intrinsicFrontier ℝ P ∧ IsExtreme ℝ P (Subtype.val '' Q)S:Finset (Fin k → ℝ)hS:Subtype.val '' Q = (convexHull ℝ) ↑S⊢ Convex ℝ ((fun p => ↑p) '' Q);
All goals completed! 🐙
have hpQc : (p : Fin k → ℝ) ∈ Q.image (fun p : P => (p : Fin k → ℝ)) := k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'⊢ ∃ u,
(∀ (p : ↑P) (x : X), u (0, p, x) = p) ∧
(∃ K, ∀ D ∈ K.complex.facets, AdaptedTo U k fun q => f (u (1, ↑q.1, q.2), q.2)) ∧
∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ (t : ↑I) (p : ↑P) (x : X), p ∈ Q → u (t, p, x) ∈ Q
All goals completed! 🐙
have hsumc : (∑ᶠ α, ρ α x • ((g α p : P) : Fin k → ℝ)) ∈ Q.image (fun p : P => (p : Fin k → ℝ)) := k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'⊢ ∃ u,
(∀ (p : ↑P) (x : X), u (0, p, x) = p) ∧
(∃ K, ∀ D ∈ K.complex.facets, AdaptedTo U k fun q => f (u (1, ↑q.1, q.2), q.2)) ∧
∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ (t : ↑I) (p : ↑P) (x : X), p ∈ Q → u (t, p, x) ∈ Q
k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'Q:Set ↑PhQ:IsBoundarySubpolyhedron Qt:↑Ip:↑Px:XhpQ:p ∈ QhQc:Convex ℝ ((fun p => ↑p) '' Q)hpQc:↑p ∈ (fun p => ↑p) '' Q⊢ ∀ (i : ι), 0 ≤ (ρ i) xk:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'Q:Set ↑PhQ:IsBoundarySubpolyhedron Qt:↑Ip:↑Px:XhpQ:p ∈ QhQc:Convex ℝ ((fun p => ↑p) '' Q)hpQc:↑p ∈ (fun p => ↑p) '' Q⊢ ∑ᶠ (i : ι), (ρ i) x = 1k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'Q:Set ↑PhQ:IsBoundarySubpolyhedron Qt:↑Ip:↑Px:XhpQ:p ∈ QhQc:Convex ℝ ((fun p => ↑p) '' Q)hpQc:↑p ∈ (fun p => ↑p) '' Q⊢ ∀ (i : ι), (ρ i) x ≠ 0 → ↑((g i) p) ∈ (fun p => ↑p) '' Q;
k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'Q:Set ↑PhQ:IsBoundarySubpolyhedron Qt:↑Ip:↑Px:XhpQ:p ∈ QhQc:Convex ℝ ((fun p => ↑p) '' Q)hpQc:↑p ∈ (fun p => ↑p) '' Q⊢ ∀ (i : ι), 0 ≤ (ρ i) x All goals completed! 🐙;
k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'Q:Set ↑PhQ:IsBoundarySubpolyhedron Qt:↑Ip:↑Px:XhpQ:p ∈ QhQc:Convex ℝ ((fun p => ↑p) '' Q)hpQc:↑p ∈ (fun p => ↑p) '' Q⊢ ∑ᶠ (i : ι), (ρ i) x = 1 All goals completed! 🐙;
k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'Q:Set ↑PhQ:IsBoundarySubpolyhedron Qt:↑Ip:↑Px:XhpQ:p ∈ QhQc:Convex ℝ ((fun p => ↑p) '' Q)hpQc:↑p ∈ (fun p => ↑p) '' Q⊢ ∀ (i : ι), (ρ i) x ≠ 0 → ↑((g i) p) ∈ (fun p => ↑p) '' Q intro α k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'Q:Set ↑PhQ:IsBoundarySubpolyhedron Qt:↑Ip:↑Px:XhpQ:p ∈ QhQc:Convex ℝ ((fun p => ↑p) '' Q)hpQc:↑p ∈ (fun p => ↑p) '' Qα:ιhα:(ρ α) x ≠ 0⊢ ↑((g α) p) ∈ (fun p => ↑p) '' Q; k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'Q:Set ↑PhQ:IsBoundarySubpolyhedron Qt:↑Ip:↑Px:XhpQ:p ∈ QhQc:Convex ℝ ((fun p => ↑p) '' Q)hpQc:↑p ∈ (fun p => ↑p) '' Qα:ιhα:(ρ α) x ≠ 0hface:ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Q⊢ ↑((g α) p) ∈ (fun p => ↑p) '' Q; All goals completed! 🐙;
k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'Q:Set ↑PhQ:IsBoundarySubpolyhedron Qt:↑Ip:↑Px:XhpQ:p ∈ QhQc:Convex ℝ ((fun p => ↑p) '' Q)hpQc:↑p ∈ (fun p => ↑p) '' Qq:↑Phq:q ∈ Qhq':(fun p => ↑p) q = ∑ᶠ (α : ι), (ρ α) x • ↑((g α) p)⊢ (reparamMap hPc ρ g) (t, p, x) ∈ Q;
have := hQc hpQc ( Set.mem_image_of_mem _ hq ) ( show 0 ≤ 1 - ( t : ℝ ) k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'⊢ ∃ u,
(∀ (p : ↑P) (x : X), u (0, p, x) = p) ∧
(∃ K, ∀ D ∈ K.complex.facets, AdaptedTo U k fun q => f (u (1, ↑q.1, q.2), q.2)) ∧
∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ (t : ↑I) (p : ↑P) (x : X), p ∈ Q → u (t, p, x) ∈ Q All goals completed! 🐙 ) ( show 0 ≤ ( t : ℝ ) k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'⊢ ∃ u,
(∀ (p : ↑P) (x : X), u (0, p, x) = p) ∧
(∃ K, ∀ D ∈ K.complex.facets, AdaptedTo U k fun q => f (u (1, ↑q.1, q.2), q.2)) ∧
∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ (t : ↑I) (p : ↑P) (x : X), p ∈ Q → u (t, p, x) ∈ Q All goals completed! 🐙 ) ( k:ℕι:Type u_1X:Type u_2T:Type u_3inst✝²:TopologicalSpace Xinst✝¹:TopologicalSpace TP:Set (Fin k → ℝ)hPc:Convex ℝ Pinst✝:CompactSpace XU:ι → Set Xρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uf:C(↑P × X, T)K:Subdivision Pg:ι → C(↑P, ↑P)hface:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhk:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'Q:Set ↑PhQ:IsBoundarySubpolyhedron Qt:↑Ip:↑Px:XhpQ:p ∈ QhQc:Convex ℝ ((fun p => ↑p) '' Q)hpQc:↑p ∈ (fun p => ↑p) '' Qq:↑Phq:q ∈ Qhq':(fun p => ↑p) q = ∑ᶠ (α : ι), (ρ α) x • ↑((g α) p)⊢ 1 - ↑t + ↑t = 1 All goals completed! 🐙 ) ; All goals completed! 🐙;
end FamiliesOfMapsB01
end Submission
It remains to construct a handle family. This splits into a trivial regime and the genuine geometric construction. First, the finiteness of the active indices:
Proposition 3.1
Proposition 3.1 (finiteness of active indices). The set of \alpha with
r_\alpha \not\equiv 0 is finite.
Proof. The supports of the r_\alpha form a locally finite family of subsets of the
compact space X; a locally finite family in a compact space has only finitely many
nonempty members. \blacksquare
open Set unitInterval Geometry
open scoped Topology BigOperators
open _root_.FamiliesOfMapsB01
namespace Submission
namespace FamiliesOfMapsB01
variable {k : ℕ} {ι X : Type*} [TopologicalSpace X]
/-- On a compact space, only finitely many functions of a partition of unity are
nonzero (the family of supports is locally finite, hence has finite nonempty part on a
compact space). This is the finiteness used to reduce the handle construction to a
finite collection of *active* cover indices. -/
lemma activeIndices_finite [CompactSpace X]
(ρ : PartitionOfUnity ι X univ) :
{α | ρ α ≠ 0}.Finite := ι:Type u_1X:Type u_2inst✝¹:TopologicalSpace Xinst✝:CompactSpace Xρ:PartitionOfUnity ι X⊢ {α | ρ α ≠ 0}.Finite
ι:Type u_1X:Type u_2inst✝¹:TopologicalSpace Xinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhfin:{α | (Function.support ⇑(ρ α)).Nonempty}.Finite⊢ {α | ρ α ≠ 0}.Finite
ι:Type u_1X:Type u_2inst✝¹:TopologicalSpace Xinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhfin:{α | (Function.support ⇑(ρ α)).Nonempty}.Finite⊢ {α | ρ α ≠ 0} ⊆ {α | (Function.support ⇑(ρ α)).Nonempty}
intro α ι:Type u_1X:Type u_2inst✝¹:TopologicalSpace Xinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhfin:{α | (Function.support ⇑(ρ α)).Nonempty}.Finiteα:ιhα:α ∈ {α | ρ α ≠ 0}⊢ α ∈ {α | (Function.support ⇑(ρ α)).Nonempty}
ι:Type u_1X:Type u_2inst✝¹:TopologicalSpace Xinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhfin:{α | (Function.support ⇑(ρ α)).Nonempty}.Finiteα:ιhα:ρ α ≠ 0⊢ (Function.support ⇑(ρ α)).Nonempty
ι:Type u_1X:Type u_2inst✝¹:TopologicalSpace Xinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhfin:{α | (Function.support ⇑(ρ α)).Nonempty}.Finiteα:ιhα:ρ α ≠ 0⊢ ⇑(ρ α) ≠ 0
ι:Type u_1X:Type u_2inst✝¹:TopologicalSpace Xinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhfin:{α | (Function.support ⇑(ρ α)).Nonempty}.Finiteα:ιhα:ρ α ≠ 0hcontra:⇑(ρ α) = 0⊢ False
exact hα (ι:Type u_1X:Type u_2inst✝¹:TopologicalSpace Xinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhfin:{α | (Function.support ⇑(ρ α)).Nonempty}.Finiteα:ιhα:ρ α ≠ 0hcontra:⇑(ρ α) = 0⊢ ρ α = 0 ι:Type u_1X:Type u_2inst✝¹:TopologicalSpace Xinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhfin:{α | (Function.support ⇑(ρ α)).Nonempty}.Finiteα:ιhα:ρ α ≠ 0hcontra:⇑(ρ α) = 0x:X⊢ (ρ α) x = 0 x; All goals completed! 🐙)
Call these finitely many indices active, and let N be their number.
Proposition 3.3
Proposition 3.3 (trivial regime). If N \le k, a handle family exists.
Proof. If P = \emptyset everything is vacuous (any subdivision of P works, e.g.
the one from Theorem 7.1, and there are no points p at which conditions must be
checked). Otherwise fix p_0 \in P; take any subdivision K of P (Theorem 7.1), and
set g_\alpha := \mathrm{id}_P for active \alpha and g_\alpha :\equiv p_0 for
inactive \alpha. Condition (a): active handles are the identity, which preserves
everything; inactive \alpha have r_\alpha \equiv 0. Condition (b): on every facet
take A := the set of active indices, of size N \le k; all other handles are
constant maps. \blacksquare
/-- **Trivial regime of the handle family.** When the number of *active* cover indices is
at most `k`, a handle family exists with no geometry at all: take any subdivision, set every
active handle to the identity (which preserves all boundary subpolyhedra) and every inactive
handle to a constant map, and use the (size `≤ k`) set of active indices as the exceptional
set `A` on every cell.
The genuine Morrison–Walker difficulty is entirely in the complementary regime where there
are more than `k` active indices (see `PLAN.md`). -/
theorem handle_family_exists_of_card_active_le
{P : Set (Fin k → ℝ)} (hP : IsPolyhedron P) [CompactSpace X]
(ρ : PartitionOfUnity ι X univ)
(hcard : (activeIndices_finite ρ).toFinset.card ≤ k) :
∃ (K : Subdivision P) (g : ι → C(P, P)),
(∀ α, ρ α = 0 ∨
(∀ Q : Set P, IsBoundarySubpolyhedron Q → ∀ p : P, p ∈ Q → g α p ∈ Q)) ∧
(∀ D ∈ K.complex.facets, ∃ A : Finset ι, A.card ≤ k ∧
∀ α, α ∉ A → ∀ p p' : P,
((p : Fin k → ℝ) ∈ convexHull ℝ (D : Set (Fin k → ℝ))) →
((p' : Fin k → ℝ) ∈ convexHull ℝ (D : Set (Fin k → ℝ))) →
g α p = g α p') := k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhcard:⋯.toFinset.card ≤ k⊢ ∃ K g,
(∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Q) ∧
∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'
classical
k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhcard:⋯.toFinset.card ≤ khPe:IsEmpty ↑P⊢ ∃ K g,
(∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Q) ∧
∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhcard:⋯.toFinset.card ≤ khPne:Nonempty ↑P⊢ ∃ K g,
(∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Q) ∧
∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'
k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhcard:⋯.toFinset.card ≤ khPe:IsEmpty ↑P⊢ ∃ K g,
(∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Q) ∧
∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p' -- `P` empty: clause (b) is vacuous (there are no points `p : P`).
k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhcard:⋯.toFinset.card ≤ khPe:IsEmpty ↑P⊢ ∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, ((fun x => ContinuousMap.id ↑P) α) p ∈ Qk:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhcard:⋯.toFinset.card ≤ khPe:IsEmpty ↑P⊢ ∀ D ∈ ⋯.some.complex.facets,
∃ A,
A.card ≤ k ∧
∀ α ∉ A,
∀ (p p' : ↑P),
↑p ∈ (convexHull ℝ) ↑D →
↑p' ∈ (convexHull ℝ) ↑D → ((fun x => ContinuousMap.id ↑P) α) p = ((fun x => ContinuousMap.id ↑P) α) p'
k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhcard:⋯.toFinset.card ≤ khPe:IsEmpty ↑P⊢ ∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, ((fun x => ContinuousMap.id ↑P) α) p ∈ Q k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhcard:⋯.toFinset.card ≤ khPe:IsEmpty ↑Pα:ι⊢ ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, ((fun x => ContinuousMap.id ↑P) α) p ∈ Q
All goals completed! 🐙
k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhcard:⋯.toFinset.card ≤ khPe:IsEmpty ↑P⊢ ∀ D ∈ ⋯.some.complex.facets,
∃ A,
A.card ≤ k ∧
∀ α ∉ A,
∀ (p p' : ↑P),
↑p ∈ (convexHull ℝ) ↑D →
↑p' ∈ (convexHull ℝ) ↑D → ((fun x => ContinuousMap.id ↑P) α) p = ((fun x => ContinuousMap.id ↑P) α) p' intro D k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhcard:⋯.toFinset.card ≤ khPe:IsEmpty ↑PD:Finset (Fin k → ℝ)hD:D ∈ ⋯.some.complex.facets⊢ ∃ A,
A.card ≤ k ∧
∀ α ∉ A,
∀ (p p' : ↑P),
↑p ∈ (convexHull ℝ) ↑D →
↑p' ∈ (convexHull ℝ) ↑D → ((fun x => ContinuousMap.id ↑P) α) p = ((fun x => ContinuousMap.id ↑P) α) p'
exact ⟨∅, k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhcard:⋯.toFinset.card ≤ khPe:IsEmpty ↑PD:Finset (Fin k → ℝ)hD:D ∈ ⋯.some.complex.facets⊢ ∅.card ≤ k All goals completed! 🐙, fun α _ p p' _ _ => (hPe.false p).elim⟩
k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhcard:⋯.toFinset.card ≤ khPne:Nonempty ↑P⊢ ∃ K g,
(∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Q) ∧
∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p' -- `P` nonempty: active handles are the identity, inactive ones are constant.
k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhcard:⋯.toFinset.card ≤ kp₀:↑P⊢ ∃ K g,
(∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Q) ∧
∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'
k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhcard:⋯.toFinset.card ≤ kp₀:↑P⊢ ∀ (α : ι),
ρ α = 0 ∨
∀ (Q : Set ↑P),
IsBoundarySubpolyhedron Q →
∀ p ∈ Q, ((fun α => if ρ α = 0 then ContinuousMap.const (↑P) p₀ else ContinuousMap.id ↑P) α) p ∈ Qk:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhcard:⋯.toFinset.card ≤ kp₀:↑P⊢ ∀ D ∈ ⋯.some.complex.facets,
∃ A,
A.card ≤ k ∧
∀ α ∉ A,
∀ (p p' : ↑P),
↑p ∈ (convexHull ℝ) ↑D →
↑p' ∈ (convexHull ℝ) ↑D →
((fun α => if ρ α = 0 then ContinuousMap.const (↑P) p₀ else ContinuousMap.id ↑P) α) p =
((fun α => if ρ α = 0 then ContinuousMap.const (↑P) p₀ else ContinuousMap.id ↑P) α) p'
k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhcard:⋯.toFinset.card ≤ kp₀:↑P⊢ ∀ (α : ι),
ρ α = 0 ∨
∀ (Q : Set ↑P),
IsBoundarySubpolyhedron Q →
∀ p ∈ Q, ((fun α => if ρ α = 0 then ContinuousMap.const (↑P) p₀ else ContinuousMap.id ↑P) α) p ∈ Q k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhcard:⋯.toFinset.card ≤ kp₀:↑Pα:ι⊢ ρ α = 0 ∨
∀ (Q : Set ↑P),
IsBoundarySubpolyhedron Q →
∀ p ∈ Q, ((fun α => if ρ α = 0 then ContinuousMap.const (↑P) p₀ else ContinuousMap.id ↑P) α) p ∈ Q
k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhcard:⋯.toFinset.card ≤ kp₀:↑Pα:ιhα:ρ α = 0⊢ ρ α = 0 ∨
∀ (Q : Set ↑P),
IsBoundarySubpolyhedron Q →
∀ p ∈ Q, ((fun α => if ρ α = 0 then ContinuousMap.const (↑P) p₀ else ContinuousMap.id ↑P) α) p ∈ Qk:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhcard:⋯.toFinset.card ≤ kp₀:↑Pα:ιhα:¬ρ α = 0⊢ ρ α = 0 ∨
∀ (Q : Set ↑P),
IsBoundarySubpolyhedron Q →
∀ p ∈ Q, ((fun α => if ρ α = 0 then ContinuousMap.const (↑P) p₀ else ContinuousMap.id ↑P) α) p ∈ Q
k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhcard:⋯.toFinset.card ≤ kp₀:↑Pα:ιhα:ρ α = 0⊢ ρ α = 0 ∨
∀ (Q : Set ↑P),
IsBoundarySubpolyhedron Q →
∀ p ∈ Q, ((fun α => if ρ α = 0 then ContinuousMap.const (↑P) p₀ else ContinuousMap.id ↑P) α) p ∈ Q All goals completed! 🐙
k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhcard:⋯.toFinset.card ≤ kp₀:↑Pα:ιhα:¬ρ α = 0⊢ ρ α = 0 ∨
∀ (Q : Set ↑P),
IsBoundarySubpolyhedron Q →
∀ p ∈ Q, ((fun α => if ρ α = 0 then ContinuousMap.const (↑P) p₀ else ContinuousMap.id ↑P) α) p ∈ Q k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhcard:⋯.toFinset.card ≤ kp₀:↑Pα:ιhα:¬ρ α = 0Q:Set ↑PhQ:IsBoundarySubpolyhedron Qp:↑Php:p ∈ Q⊢ ((fun α => if ρ α = 0 then ContinuousMap.const (↑P) p₀ else ContinuousMap.id ↑P) α) p ∈ Q
k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhcard:⋯.toFinset.card ≤ kp₀:↑Pα:ιhα:¬ρ α = 0Q:Set ↑PhQ:IsBoundarySubpolyhedron Qp:↑Php:p ∈ Q⊢ p ∈ Q
All goals completed! 🐙
k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhcard:⋯.toFinset.card ≤ kp₀:↑P⊢ ∀ D ∈ ⋯.some.complex.facets,
∃ A,
A.card ≤ k ∧
∀ α ∉ A,
∀ (p p' : ↑P),
↑p ∈ (convexHull ℝ) ↑D →
↑p' ∈ (convexHull ℝ) ↑D →
((fun α => if ρ α = 0 then ContinuousMap.const (↑P) p₀ else ContinuousMap.id ↑P) α) p =
((fun α => if ρ α = 0 then ContinuousMap.const (↑P) p₀ else ContinuousMap.id ↑P) α) p' intro D k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhcard:⋯.toFinset.card ≤ kp₀:↑PD:Finset (Fin k → ℝ)hD:D ∈ ⋯.some.complex.facets⊢ ∃ A,
A.card ≤ k ∧
∀ α ∉ A,
∀ (p p' : ↑P),
↑p ∈ (convexHull ℝ) ↑D →
↑p' ∈ (convexHull ℝ) ↑D →
((fun α => if ρ α = 0 then ContinuousMap.const (↑P) p₀ else ContinuousMap.id ↑P) α) p =
((fun α => if ρ α = 0 then ContinuousMap.const (↑P) p₀ else ContinuousMap.id ↑P) α) p'
k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhcard:⋯.toFinset.card ≤ kp₀:↑PD:Finset (Fin k → ℝ)hD:D ∈ ⋯.some.complex.facets⊢ ∀ α ∉ ⋯.toFinset,
∀ (p p' : ↑P),
↑p ∈ (convexHull ℝ) ↑D →
↑p' ∈ (convexHull ℝ) ↑D →
((fun α => if ρ α = 0 then ContinuousMap.const (↑P) p₀ else ContinuousMap.id ↑P) α) p =
((fun α => if ρ α = 0 then ContinuousMap.const (↑P) p₀ else ContinuousMap.id ↑P) α) p'
intro α k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhcard:⋯.toFinset.card ≤ kp₀:↑PD:Finset (Fin k → ℝ)hD:D ∈ ⋯.some.complex.facetsα:ιhα:α ∉ ⋯.toFinset⊢ ∀ (p p' : ↑P),
↑p ∈ (convexHull ℝ) ↑D →
↑p' ∈ (convexHull ℝ) ↑D →
((fun α => if ρ α = 0 then ContinuousMap.const (↑P) p₀ else ContinuousMap.id ↑P) α) p =
((fun α => if ρ α = 0 then ContinuousMap.const (↑P) p₀ else ContinuousMap.id ↑P) α) p' k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhcard:⋯.toFinset.card ≤ kp₀:↑PD:Finset (Fin k → ℝ)hD:D ∈ ⋯.some.complex.facetsα:ιhα:α ∉ ⋯.toFinsetp:↑P⊢ ∀ (p' : ↑P),
↑p ∈ (convexHull ℝ) ↑D →
↑p' ∈ (convexHull ℝ) ↑D →
((fun α => if ρ α = 0 then ContinuousMap.const (↑P) p₀ else ContinuousMap.id ↑P) α) p =
((fun α => if ρ α = 0 then ContinuousMap.const (↑P) p₀ else ContinuousMap.id ↑P) α) p' k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhcard:⋯.toFinset.card ≤ kp₀:↑PD:Finset (Fin k → ℝ)hD:D ∈ ⋯.some.complex.facetsα:ιhα:α ∉ ⋯.toFinsetp:↑Pp':↑P⊢ ↑p ∈ (convexHull ℝ) ↑D →
↑p' ∈ (convexHull ℝ) ↑D →
((fun α => if ρ α = 0 then ContinuousMap.const (↑P) p₀ else ContinuousMap.id ↑P) α) p =
((fun α => if ρ α = 0 then ContinuousMap.const (↑P) p₀ else ContinuousMap.id ↑P) α) p' k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhcard:⋯.toFinset.card ≤ kp₀:↑PD:Finset (Fin k → ℝ)hD:D ∈ ⋯.some.complex.facetsα:ιhα:α ∉ ⋯.toFinsetp:↑Pp':↑Pa✝:↑p ∈ (convexHull ℝ) ↑D⊢ ↑p' ∈ (convexHull ℝ) ↑D →
((fun α => if ρ α = 0 then ContinuousMap.const (↑P) p₀ else ContinuousMap.id ↑P) α) p =
((fun α => if ρ α = 0 then ContinuousMap.const (↑P) p₀ else ContinuousMap.id ↑P) α) p' k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhcard:⋯.toFinset.card ≤ kp₀:↑PD:Finset (Fin k → ℝ)hD:D ∈ ⋯.some.complex.facetsα:ιhα:α ∉ ⋯.toFinsetp:↑Pp':↑Pa✝¹:↑p ∈ (convexHull ℝ) ↑Da✝:↑p' ∈ (convexHull ℝ) ↑D⊢ ((fun α => if ρ α = 0 then ContinuousMap.const (↑P) p₀ else ContinuousMap.id ↑P) α) p =
((fun α => if ρ α = 0 then ContinuousMap.const (↑P) p₀ else ContinuousMap.id ↑P) α) p'
have hρα : ρ α = 0 := k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhcard:⋯.toFinset.card ≤ k⊢ ∃ K g,
(∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Q) ∧
∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'
k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhcard:⋯.toFinset.card ≤ kp₀:↑PD:Finset (Fin k → ℝ)hD:D ∈ ⋯.some.complex.facetsα:ιhα:α ∉ ⋯.toFinsetp:↑Pp':↑Pa✝¹:↑p ∈ (convexHull ℝ) ↑Da✝:↑p' ∈ (convexHull ℝ) ↑Dh:¬ρ α = 0⊢ False
All goals completed! 🐙
All goals completed! 🐙
Theorem 3.4
Theorem 3.4 (main geometric input; proved in Steps 4–5, using the infrastructure
of Steps 7–8). If N > k, a handle family exists.
The labelling family — the remaining geometric heart, constructed in the quantile labelling chapter — is fed through the affine realization of the realization chapter:
/- **Existence of a handle family** with the face-preservation and per-cell `≤ k` properties.
This is the remaining purely-geometric input for the continuous case of Morrison–Walker B.0.1;
combined with `reparam_of_handles` it yields `reparam_exists`. -/
/-- **The remaining geometric heart (general-position labelling family).** When there are
more than `k` active cover indices, there is a polyhedral subdivision `K` of `P` and a family
of vertex labellings `lbl` (constant maps for inactive indices) which are *face respecting*
on active indices and whose per-facet "mixing" is bounded by `k`. Feeding these to
`handle_family_of_labellings` (via affine realization) produces the handle family.
This isolates the Morrison–Walker general-position construction: each active labelling sends
each vertex of `P` to itself, collapses to a single vertex away from a thin separating wall
network, and the `N > k` networks are placed in general position so that any closed cell
meets the walls of at most `k` of them. -/
theorem labellings_exist
{P : Set (Fin k → ℝ)} (hP : IsPolyhedron P) [CompactSpace X]
(ρ : PartitionOfUnity ι X univ)
(hcard : ¬ (activeIndices_finite ρ).toFinset.card ≤ k) :
∃ (K : Subdivision P) (lbl : ι → (Fin k → ℝ) → (Fin k → ℝ)),
(∀ α, ∀ s ∈ K.complex.faces, ∀ q ∈ s, lbl α q ∈ P) ∧
(∀ α, ρ α ≠ 0 → ∀ Q : Set (Fin k → ℝ), IsExtreme ℝ P Q →
∀ s ∈ K.complex.faces, ∀ q ∈ s, q ∈ Q → lbl α q ∈ Q) ∧
(∀ D ∈ K.complex.facets, ∃ A : Finset ι, A.card ≤ k ∧
∀ α, α ∉ A → ∀ q ∈ D, ∀ q' ∈ D, lbl α q = lbl α q') := k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhcard:¬⋯.toFinset.card ≤ k⊢ ∃ K lbl,
(∀ (α : ι), ∀ s ∈ K.complex.faces, ∀ q ∈ s, lbl α q ∈ P) ∧
(∀ (α : ι),
ρ α ≠ 0 → ∀ (Q : Set (Fin k → ℝ)), IsExtreme ℝ P Q → ∀ s ∈ K.complex.faces, ∀ q ∈ s, q ∈ Q → lbl α q ∈ Q) ∧
∀ D ∈ K.complex.facets, ∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ q ∈ D, ∀ q' ∈ D, lbl α q = lbl α q'
k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhcard:¬⋯.toFinset.card ≤ kα:ι⊢ α ∈ ⋯.toFinset ↔ (fun α => ρ α ≠ 0) α
k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace Xρ:PartitionOfUnity ι Xhcard:¬⋯.toFinset.card ≤ kα:ι⊢ α ∈ {α | ρ α ≠ 0} ↔ (fun α => ρ α ≠ 0) α
All goals completed! 🐙
theorem handle_family_exists
{P : Set (Fin k → ℝ)} (hP : IsPolyhedron P) [CompactSpace X]
(U : ι → Set X) (hUopen : ∀ α, IsOpen (U α))
(ρ : PartitionOfUnity ι X univ) (hρ : ρ.IsSubordinate U) :
∃ (K : Subdivision P) (g : ι → C(P, P)),
(∀ α, ρ α = 0 ∨
(∀ Q : Set P, IsBoundarySubpolyhedron Q → ∀ p : P, p ∈ Q → g α p ∈ Q)) ∧
(∀ D ∈ K.complex.facets, ∃ A : Finset ι, A.card ≤ k ∧
∀ α, α ∉ A → ∀ p p' : P,
((p : Fin k → ℝ) ∈ convexHull ℝ (D : Set (Fin k → ℝ))) →
((p' : Fin k → ℝ) ∈ convexHull ℝ (D : Set (Fin k → ℝ))) →
g α p = g α p') := k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace XU:ι → Set XhUopen:∀ (α : ι), IsOpen[inst✝¹] (U α)ρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate U⊢ ∃ K g,
(∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Q) ∧
∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'
classical
-- The easy regime (`≤ k` active cover indices) is fully handled by
-- `handle_family_exists_of_card_active_le`; only the genuine Morrison–Walker
-- general-position construction (more than `k` active indices) remains.
k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace XU:ι → Set XhUopen:∀ (α : ι), IsOpen[inst✝¹] (U α)ρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uhcard:⋯.toFinset.card ≤ k⊢ ∃ K g,
(∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Q) ∧
∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace XU:ι → Set XhUopen:∀ (α : ι), IsOpen[inst✝¹] (U α)ρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uhcard:¬⋯.toFinset.card ≤ k⊢ ∃ K g,
(∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Q) ∧
∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'
k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace XU:ι → Set XhUopen:∀ (α : ι), IsOpen[inst✝¹] (U α)ρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uhcard:⋯.toFinset.card ≤ k⊢ ∃ K g,
(∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Q) ∧
∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p' All goals completed! 🐙
k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace XU:ι → Set XhUopen:∀ (α : ι), IsOpen[inst✝¹] (U α)ρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uhcard:¬⋯.toFinset.card ≤ k⊢ ∃ K g,
(∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Q) ∧
∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p' k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace XU:ι → Set XhUopen:∀ (α : ι), IsOpen[inst✝¹] (U α)ρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uhcard:¬⋯.toFinset.card ≤ kK:Subdivision Plbl:ι → (Fin k → ℝ) → Fin k → ℝh1:∀ (α : ι), ∀ s ∈ K.complex.faces, ∀ q ∈ s, lbl α q ∈ Ph2:∀ (α : ι), ρ α ≠ 0 → ∀ (Q : Set (Fin k → ℝ)), IsExtreme ℝ P Q → ∀ s ∈ K.complex.faces, ∀ q ∈ s, q ∈ Q → lbl α q ∈ Qh3:∀ D ∈ K.complex.facets, ∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ q ∈ D, ∀ q' ∈ D, lbl α q = lbl α q'⊢ ∃ K g,
(∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Q) ∧
∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'
k:ℕι:Type u_1X:Type u_2inst✝¹:TopologicalSpace XP:Set (Fin k → ℝ)hP:IsPolyhedron Pinst✝:CompactSpace XU:ι → Set XhUopen:∀ (α : ι), IsOpen[inst✝¹] (U α)ρ:PartitionOfUnity ι Xhρ:ρ.IsSubordinate Uhcard:¬⋯.toFinset.card ≤ kK:Subdivision Plbl:ι → (Fin k → ℝ) → Fin k → ℝh1:∀ (α : ι), ∀ s ∈ K.complex.faces, ∀ q ∈ s, lbl α q ∈ Ph2:∀ (α : ι), ρ α ≠ 0 → ∀ (Q : Set (Fin k → ℝ)), IsExtreme ℝ P Q → ∀ s ∈ K.complex.faces, ∀ q ∈ s, q ∈ Q → lbl α q ∈ Qh3:∀ D ∈ K.complex.facets, ∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ q ∈ D, ∀ q' ∈ D, lbl α q = lbl α q'g:ι → C(↑P, ↑P)hfp:∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Qhcount:∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'right✝:∀ (α : ι), ∀ «σ» ∈ K.complex.faces, ∀ (p : ↑P), ↑p ∈ (convexHull ℝ) ↑«σ» → ↑((g α) p) ∈ (convexHull ℝ) (lbl α '' ↑«σ»)⊢ ∃ K g,
(∀ (α : ι), ρ α = 0 ∨ ∀ (Q : Set ↑P), IsBoundarySubpolyhedron Q → ∀ p ∈ Q, (g α) p ∈ Q) ∧
∀ D ∈ K.complex.facets,
∃ A, A.card ≤ k ∧ ∀ α ∉ A, ∀ (p p' : ↑P), ↑p ∈ (convexHull ℝ) ↑D → ↑p' ∈ (convexHull ℝ) ↑D → (g α) p = (g α) p'
All goals completed! 🐙
end FamiliesOfMapsB01
end Submission
Granting Theorem 3.4, Propositions 2.1 and 3.2 complete the proof of Theorem A.