Explicit low-rank matrices for the whole-space gradient target
Lax342547.TargetMatrices · concepts/Lax342547/TargetMatrices.lean · lax-342547
No public endorsements yet.
Loading review…
Sign in with ORCIDNatural Language Statement
Lemma
The adjoints of the concrete mixer sandwiches have ranks bounded by the witness component ranks. Combining both orientations with the routed tester matrices constructs the actual target matrices, proves the rank 15r+14J|E|, and represents the whole profile-pair target exactly.
Concept map
Evidence
This concept declares 7 statements. Each proof establishes one of them relative to its assumptions.
1 mixer_matrix_rank proven
2 mixer_matrix_representation proven
3 sandwich_adjoint proven
4 target_family_representation proven
5 target_matrix_rank proven
6 target_matrix_representation proven
7 witness_component_rank proven
Lean source view on GitHub
| 1 | import Lax342547.TargetTesters |
| 2 | |
| 3 | /-! |
| 4 | --- |
| 5 | title: Explicit low-rank matrices for the whole-space gradient target |
| 6 | type: lemma |
| 7 | --- |
| 8 | The adjoints of the concrete mixer sandwiches have ranks bounded by the witness component ranks. Combining both orientations with the routed tester matrices constructs the actual target matrices, proves the rank 15r+14J|E|, and represents the whole profile-pair target exactly. |
| 9 | -/ |
| 10 | |
| 11 | namespace Lax342547.TargetMatrices |
| 12 | |
| 13 | open Lax342547.MomentSpace Lax342547.TagGeometry Lax342547.ConcreteGeometry |
| 14 | open Lax342547.ConcreteCut Lax342547.CutProfiles Lax342547.Atoms |
| 15 | open Lax342547.PairedWitnesses Lax342547.WitnessAtoms Lax342547.TargetTesters |
| 16 | |
| 17 | axiom sandwich_adjoint {B : Type} [Fintype B] (M W L R : Matrix B B Binary) : |
| 18 | matrixPair M (L * W * R.transpose) = matrixPair (L.transpose * M * R) W |
| 19 | |
| 20 | noncomputable def mixerMatrix {k n b degree J : ℕ} |
| 21 | (L R : Fin J → Component (Tag k) → Component (Tag k) → Moment k n b degree) |
| 22 | (v : Profile k n b degree) (e : Component (Tag k)) : Moment k n b degree := |
| 23 | (∑ j, ∑ f, (L j f e).transpose * v.val f * R j f e) + |
| 24 | ∑ j, ∑ f, L j e f * v.val f * (R j e f).transpose |
| 25 | |
| 26 | axiom mixer_matrix_representation {k n b degree J : ℕ} |
| 27 | (L R : Fin J → Component (Tag k) → Component (Tag k) → Moment k n b degree) |
| 28 | (v x : Profile k n b degree) : |
| 29 | (∑ e, matrixPair (mixerMatrix L R v e) (x.val e)) = mixingForm L R v x + mixingForm L R x v |
| 30 | |
| 31 | axiom witness_component_rank {k n b degree r : ℕ} {hr : 2 * r ≤ n} |
| 32 | (W : Lists k n b degree r hr) (i z : Fin 2) (e : Component (Tag k)) : |
| 33 | ((leftWitness W i z).val e).rank ≤ 7 |
| 34 | |
| 35 | axiom mixer_matrix_rank {k n b degree J : ℕ} |
| 36 | (L R : Fin J → Component (Tag k) → Component (Tag k) → Moment k n b degree) |
| 37 | (v : Profile k n b degree) (S : ℕ) (hS : ∀ f, (v.val f).rank ≤ S) |
| 38 | (e : Component (Tag k)) : (mixerMatrix L R v e).rank ≤ |
| 39 | 2 * J * Fintype.card (Component (Tag k)) * S |
| 40 | |
| 41 | noncomputable def targetMatrix {k n b degree r J : ℕ} {hr : 2 * r ≤ n} |
| 42 | (W : Lists k n b degree r hr) |
| 43 | (D : Testers (k := k) (b := b) (degree := degree) hr) |
| 44 | (L R : Fin J → Component (Tag k) → Component (Tag k) → Moment k n b degree) |
| 45 | (i z : Fin 2) (e : Component (Tag k)) : Moment k n b degree := |
| 46 | witnessTesterMatrix W D i z e + mixerMatrix L R (leftWitness W i z) e |
| 47 | |
| 48 | axiom target_matrix_rank {k n b degree r J : ℕ} {hr : 2 * r ≤ n} |
| 49 | (W : Lists k n b degree r hr) |
| 50 | (D : Testers (k := k) (b := b) (degree := degree) hr) |
| 51 | (L R : Fin J → Component (Tag k) → Component (Tag k) → Moment k n b degree) |
| 52 | (i z : Fin 2) (e : Component (Tag k)) : |
| 53 | (targetMatrix W D L R i z e).rank ≤ 15 * r + 14 * J * Fintype.card (Component (Tag k)) |
| 54 | |
| 55 | axiom target_matrix_representation {k n b degree r J : ℕ} {hr : 2 * r ≤ n} |
| 56 | (W : Lists k n b degree r hr) |
| 57 | (D : Testers (k := k) (b := b) (degree := degree) hr) |
| 58 | (L R : Fin J → Component (Tag k) → Component (Tag k) → Moment k n b degree) |
| 59 | (i z : Fin 2) (hodd : (∑ j, diagonalBit hr (W.left i z j)) = 1) |
| 60 | (x : Profile k n b degree) : |
| 61 | (∑ e, matrixPair (targetMatrix W D L R i z e) (x.val e)) = |
| 62 | (D.role + gradient D L R (leftWitness W i z)) x |
| 63 | |
| 64 | axiom target_family_representation {k n b degree r J : ℕ} {hr : 2 * r ≤ n} |
| 65 | (W : Lists k n b degree r hr) |
| 66 | (D : Testers (k := k) (b := b) (degree := degree) hr) |
| 67 | (L R : Fin J → Component (Tag k) → Component (Tag k) → Moment k n b degree) |
| 68 | (z : Fin 2) (hodd : ∀ i, (∑ j, diagonalBit hr (W.left i z j)) = 1) : |
| 69 | Lax342547.ResidualRealization.matrixResponse (Profile k n b degree) (fun i => targetMatrix W D L R i z) = |
| 70 | ∑ i, (D.role + gradient D L R (leftWitness W i z)).comp (LinearMap.proj i) |
| 71 | |
| 72 | end Lax342547.TargetMatrices |
| 73 |
Builds on
From Mathlib
none
Discussion
Ask a question or add context. Endorsements and structured flags are kept in the review panel above.
0 comments