Theorem 4.4, p. 8 — 2∂f/∂A^(p) = Ā^(p)W^{p} − T̄_(p)V^{p}, 2∂f/∂C^(q) = C̄^(q)EW^{P+q}Eᵀ − T̄_(P+q)V^{P+q}Eᵀ
ProvedTensorBTD.Cogradient.theorem_4_4Let with , and let
be the vector of unknowns of the (rank- rank-1) BTD, with factor matrices and (3.6). Let be the objective (3.7). Then the complex cogradient is
where, for and ,
Here overbars denote entrywise complex conjugation, is the mode- unfolding, and , are the Khatri–Rao string and the Hadamard product of Gramians of all factor matrices except the -th, computed from the structured factor matrices.
The cogradient is what complex quasi-Newton and nonlinear conjugate gradient methods need at every iteration; the formula evaluates it with small Gramians and one tensor–Khatri–Rao product per mode.
Formalization Note. The cogradient is the Wirtinger derivative taken coordinatewise; the matrices and are built entry by entry from it, so (4.4) holds by construction and the statement consists of (4.5a) and (4.5b). Indices are 0-based, modes are Fin P ⊕ Fin Q, and vec is column-major. No hypotheses are placed on , the factor matrices, , , or the .
import Mathlib import Definitions.Def_TensorBTD_Cogradient_Setting
namespace TensorBTD.Cogradient
open Matrix
/-- Theorem 4.4, p. 8, (4.5a)–(4.5b): the cogradient of `f_BTD` with respect to the unknowns
`A^(p)` and `C^(q)` is
`2 ∂f/∂A^(p) = Ā^(p) W^{p} − T̄_(p) V^{p}` and
`2 ∂f/∂C^(q) = C̄^(q) E W^{P+q} Eᵀ − T̄_(P+q) V^{P+q} Eᵀ`, where `V` and `W` are built from
the structured factor matrices `A^(n)` of (3.6). -/
theorem theorem_4_4 {P Q R : ℕ} (I : Fin P ⊕ Fin Q → ℕ) (L : Fin R → ℕ) (T : TensorBTD.Gramian.Tensor I)
(z : TensorBTD.Gramian.Unk I L → ℂ) :
(∀ p : Fin P, (2 : ℂ) • cogradA (fBTD T) z p =
(Amat z p).map (starRingEnd ℂ) * W {.inl p} (TensorBTD.Gramian.factor z) -
(unfolding T (.inl p)).map (starRingEnd ℂ) * V {.inl p} (TensorBTD.Gramian.factor z)) ∧
(∀ q : Fin Q, (2 : ℂ) • cogradC (fBTD T) z q =
(Cmat z q).map (starRingEnd ℂ) * TensorBTD.Gramian.E L * W {.inr q} (TensorBTD.Gramian.factor z) * (TensorBTD.Gramian.E L)ᵀ -
(unfolding T (.inr q)).map (starRingEnd ℂ) * V {.inr q} (TensorBTD.Gramian.factor z) * (TensorBTD.Gramian.E L)ᵀ) := by sorry
end TensorBTD.Cogradient
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.