The Riccati operator as a minimum over feedback gains: completion of the square
ProvedBertsekasDP.riccati_completion_of_squareLet be , be , let be , and let and be symmetric with invertible. For a feedback gain write
for the one-stage cost matrix under the stationary law , and let denote the discrete-time Riccati operator. Setting
the two are related by an exact completion of the square:
When the correction term is positive semidefinite and vanishes exactly at , so the identity says that , the minimum being attained at . This is the algebraic content of the Riccati recursion: the opaque expression is precisely what optimizing the feedback at one stage produces.
The identity is the natural entry point for the asymptotic theory. Monotonicity of , invariance of the positive semidefinite cone, and the one-step dynamic programming inequality all follow from it directly. It holds as a pure algebraic identity, with no positivity assumption beyond invertibility of .
Formalization Note The difference is written out as , so that no definition of the optimal gain is needed. Symmetry of and is used to collect the cross terms via and . The hypothesis is invertibility of the determinant, which is what Mathlib's total inverse requires in order to satisfy .
import Mathlib import Definitions.Def_BertsekasRiccatiMap open Matrix
namespace BertsekasDP
theorem riccati_completion_of_square {n m : ℕ}
(A : Matrix (Fin n) (Fin n) ℝ) (B : Matrix (Fin n) (Fin m) ℝ)
(Q : Matrix (Fin n) (Fin n) ℝ) (R : Matrix (Fin m) (Fin m) ℝ)
(P : Matrix (Fin n) (Fin n) ℝ) (L : Matrix (Fin m) (Fin n) ℝ)
(hP : Pᵀ = P) (hR : Rᵀ = R) (hD : IsUnit (Bᵀ * P * B + R).det) :
(A + B * L)ᵀ * P * (A + B * L) + Q + Lᵀ * R * L
= BertsekasRiccatiMap A B Q R P
+ (L + (Bᵀ * P * B + R)⁻¹ * (Bᵀ * P * A))ᵀ * (Bᵀ * P * B + R)
* (L + (Bᵀ * P * B + R)⁻¹ * (Bᵀ * P * A)) := by sorry
end BertsekasDP