Chapter 3Stationary Infinite-Horizon LQG
In the finite-horizon chapter every kernel depends on two calendar dates, the source date of a shock and the date of its evaluation. Here the calendar drops out and only ages remain, the age of the shock and the age of the belief about it. The causal triangle of Chapter 1 becomes a lag quadrant, the quarter plane of two nonnegative ages.
The stationary case matters for four reasons. First, every impulse response function becomes time invariant, and a simple recipe turns the identities of Chapter 1 into stationary ones. The stationary system is therefore easier to compute and plot. Most work building on these methods would study stationary cases. An economic system that has settled into stationary equilibrium under one policy, like the economy behind an estimated Phillips curve, begins any new regime from that stationary state. The response to the shift is a nonstationary problem, so studying a regime change means solving the stationary problem first. Second, much of the literature studies the stationary case through the frequency domain [60, 64, 101], so working in the stationary case makes comparisons easier. Third, the stationary case makes it easier to see how close the system is to Markovian. A stationary linear Markov process has impulse responses that are combinations of exponentials, so how well such combinations fit the kernels here measures how far the equilibrium is from finite-dimensional. Finally, this chapter is the setting of the Kyle–Back analysis. The stationary deviation calculus of Chapter 4 runs in the lag coordinates introduced here, and its equilibrium condition plays the role of Proposition 3.1.
3.1Stationary profiles, lag coordinates, and forward filtering
The time-homogeneous primitives are Two delays are allowed. A control may act on the state after a lag (the rows; for ). The public signal is observed by player with delay , so that , with the rows normalized and orthogonal as in Chapter 2: , , . Private rows may also carry other players’ predictable controls (observed actions, ). Setting , and dropping recovers the baseline. Here , Player ’s discounted objective is
with the joint running Hessian positive semidefinite.
All lags are calendar time minus source time: Delays are fixed ages. The variables are ages of past state and noise-state coordinates. The adjoint lag is two-sided; future source times have . Brownian motions are extended to two-sided time for adjoint formulas.
The front-matter Notation reference collects the finite-horizon-to-stationary translation. Every lowercase object below is the corresponding Chapter 1 object after calendar time drops out. For adjoints the lowercase kernel is the current-value form, and , which is why appears in (3.2.9) in place of the finite-horizon time derivative.
A stationary noise-state linear profile has The same weight applies at every date to the player’s belief about a shock of age . With the delayed public row the noise-state has the representation of Chapter 2 in age form, , with and the kernel from the coordinate of age to the source of age . Shocks older than the delay are also known through their public increment. The profile is admissible if the displayed integrals are square-integrable, the induced filtering operators are bounded, and the closed-loop response kernels below decay fast enough for the discounted cost to be finite and all integration-by-parts identities to hold. The discounted boundary terms generated by integration by parts vanish at long horizons, which is the transversality used in Proposition 3.1. A stationary equilibrium in this class is a stationary profile for which no player can reduce (3.1.4) by a unilateral stationary noise-state linear deviation.
The finite-horizon state-response equation becomes, with and ,
The stationary mean satisfies For filter kernels , so . For adjoint kernels , so ; with a noise-state coordinate , the transport derivative is .
Each instant a new shock is born unknown and every old shock is known a little better, so each shock’s uncertainty falls over its lifetime while the cross-section of uncertainty over ages stays fixed.
The control kernel in primitive-shock coordinates is This carries the policy kernel into primitive coordinates: how player ’s control answers a shock of age . The unresolved state response is This is the state’s response to a shock less the part player has already resolved, privately or through the public row. The private row’s drift kernel is and its unresolved part ; without observed actions . The delayed public row generated ago has drift kernel at its source time; its centered innovation kernel at the arrival date is (Chapter 2, in ages) with for (the row generated ago loads only on shocks that existed then). In the last term player subtracts what it had already inferred about the arriving public increment. The stationary filter is the last line being the second birth, at age , when the public news about a shock arrives, with the block. With the private source is and the births are , . Equivalently, in the baseline, for , The diagonal is a separate pointwise convention, and does not affect the integral equations.
The numerical benchmark is the stationary form of the tracking example of Chapter 1. The state is scalar with , each player observes with and effort weights on as in Chapter 1, and the objective is average cost. Section 3.2 also varies each precision from to with the other held at . Proposition 3.1 verifies the discounted system, so these computations give solutions of the formal average-cost stationary equations, the form of that system, rather than a verified optimum. Figure 3.1 shows the resulting kernel, with one curve per primitive shock.
3.2Current-value adjoints
The unprojected state price is two-sided: The player cannot act on future shocks, so the control uses the conditional expectation of this adjoint given : In the last two sums player prices what its action does to opponent ’s beliefs: is its belief price on opponent ’s noise-state, and and contract that price against ’s private and delayed-public filter rows, both defined immediately after (3.2.4). The subscript means a row generated at and evaluated on arrival at . In (3.2.2) and in the proof of Proposition 3.1, and are the current-value adjoint processes, times the costates of the discounted objective. Player prices a shock’s consequences through lags on both sides of the present. The negative lags show the benefit of acting on future shocks, and that benefit decays slowly with distance. The fundamental channel of , its loading on the state noise, still holds a fifth of its peak at lag , in the future, while at , in the past, it is nearly gone (Figure 3.2). The signal-noise channels, the loadings on the players’ signal noises, behave differently at the boundary. A noise shock harms only through the responses it triggers, and at arrival no player has responded to it yet, so the channels’ price peaks a short interval after the shock arrives. That near-boundary peak is the early peak. The peak lag shrinks as player 1’s own precision grows, since faster filtering corrects the belief error sooner, from lag at to at (Figure 3.3). The depth is not monotone in ; it is largest near . The opponent’s precision works the other way. A more precise opponent responds to the shock sooner and more accurately, so the price of the noise shock shrinks in magnitude, from at to at , and its peak moves later.
Only lags are estimable at time , so
with the right trace used at . Each term of (3.2.3) is an adjoint evaluated at the lag at which its effect occurs, and all are projected on . When player ’s action takes effect later, the shock it reacts to now is older, so the player reads the state price further along the past-lag side; coordinates with age below , noise born between action and effect, drop out. An action the opponent sees directly is priced now, by contracting the belief price against the opponent’s private filter row; an action that reaches the opponent only through the public signal is priced later, when that signal arrives.
For opponent , write The values at are right traces. Write the private and delayed-public contractions of a belief price against opponent ’s filter as Define Without the public row or observed actions the first terms reduce to the baseline: birth term plus accumulated drift inference . When player ’s own control enters opponent ’s private row () the deviation moves that row directly. Like the public-row term , its price enters player ’s first-order condition above rather than the state price. The sums and are the information wedge, the price of moving another player’s beliefs, now including what the delayed public news will reveal.
The mean adjoint equations are Set and . Away from , where is the old-history coefficient of opponent ’s private row (the opponent’s own control is removed because its response to its beliefs is priced through ). In the baseline . Opponent ’s delayed control moves the state later, so player prices that response at . The delayed public signal enters twice. Opponent now reads the public increment generated ago, which loads on the coordinate through ; player prices it with the contraction at arrival, . The row generated now carries opponent ’s response and is observed by every opponent at , priced by . At the arrival age the belief price jumps by the centering trace, the stationary form of the jump condition (2.4.32) at the arrival date. The belief price decays as and .
Proposition 3.1 (Stationary verification). Fix a stationary admissible profile. Suppose its kernels satisfy the forward equations (3.1.8)–(3.1.19), the adjoint equations (3.2.5)–(3.2.10), the jump condition (3.2.11), the first-order condition (3.2.2), and the stated decay/transversality conditions. Then the profile is a stationary best response for each player in the noise-state linear class. If the Schur complement for some ( is the tracking case, where ), the stationary best response is unique.
Proof. Apply the discounted spike variation of Appendix 1.B.2 on with opponents’ stationary maps fixed, and let . The limit is taken as the definition of the stationary problem, with the two-sided adjoints (3.2.1) the objects verified against; convergence of the finite-horizon adjoints to them is not proved here. Write the kernels of (1.B.10) in lag coordinates and in current value. The first variation of in a direction is then plus boundary terms. The finite-horizon adjoints , become the two-sided current-value adjoint (3.2.1), and (3.2.5)–(3.2.6) are the stationary form of the information wedge of Theorem 1.8. Integration by parts gives the boundary terms at age zero, at lag zero , at the arrival age , and at . The boundary terms at age zero are the axis birth terms (3.1.14)–(3.1.15); the terms at cancel because bounded sources keep the kernels continuous there; the terms at the arrival age are the centering trace, which the jump condition (3.2.11) absorbs; the terminal term vanishes as by the transversality condition in the admissibility definition. The remaining variation is with the bracket of the display above inside the conditional expectation, and this is zero by (3.2.2). The cost is convex, so the profile is a best response (Corollary 1.11); under the Schur condition it is the unique one. ◻
3.3Transform identities
Delays enter the transforms as exponential factors. A delayed control row contributes to (3.3.1), the delayed reads , become , , and the births at the arrival age add - and -weighted boundary transforms to (3.3.2). The formulas below are written for the baseline.
The transform formulas are not needed for verification, but they help when solving the stationary kernels. The objects transformed here include the belief prices and the wedge, which the competitive setting of the frequency-domain literature [60, 64, 101] forces to zero. For one-sided lag kernels set and The state equation gives For the filter boundaries, Together these give
For adjoints use the two-sided transform The kernel is continuous at , with a kink there rather than a jump (Section 3.A), so transforming (3.2.9) on the two half-lines produces no boundary term: For belief prices define with continuous across , since its sources are bounded. Then
3.4Rationality and finite-dimensional state
A one-sided kernel has a rational transform exactly when it is the impulse response of a finite-dimensional Markovian system. If the equilibrium kernels were rational, the noise-state would reduce to finitely many sufficient statistics and the stationary system would collapse to matrix Riccati equations. The primitives are rational, and filtering against a fixed observation structure preserves rationality. The equilibrium is different because each player filters observations that contain the other players’ filters. Each added level of beliefs about beliefs [109] raises the degree of the transform, and the equilibrium, sitting at the limit of the hierarchy, need not have a rational transform; whether the hierarchy collapses is model-specific [64, 94].
The computed kernels show this. Each one-sided kernel has a sequence of singular values in which is the Hankel-norm error of the best -dimensional approximation, so a rational kernel of degree has [1, 44]. Figure 3.4 plots these values for the four one-sided pieces of against a rational control of degree two. The control’s third singular value is zero to machine precision. The equilibrium kernels’ singular values fall by a factor of ten to thirty at each index and reach the accuracy of the computation, about , by the twelfth without hitting zero. No low-order Markov state reproduces them exactly. Past the twelfth index the computation cannot distinguish a high degree from an infinite one.
The geometric decay is also a quantitative guarantee. A five-dimensional Markov state reproduces the kernel to better than , and each further dimension gains another factor of ten. No -dimensional model can do better than , and a truncated belief hierarchy is in general not the optimal -dimensional approximation, so its error can be much larger than . Recent computational work on asymmetric-information LQG games restricts strategies to a finite-dimensional state from the outset [48, 92, 112]; the singular values lower-bound what any such restriction discards.
3.5Conclusion
The stationary system is the finite-horizon noise-state calculus with calendar time removed, and its lag equations give the stationary notation the Kyle–Back chapter uses. Proposition 3.1 verifies that an admissible stationary profile solving these equations is a best response in the noise-state linear class, and the transform identities in Section 3.3 give an alternative representation for solving them. The uniqueness clause needs the Schur complement condition (1.3.3), which fails at zero trading cost, so the Kyle–Back computations run at a small positive cost and Chapter 4 verifies optimality through second-order checks instead. Numerically, the computed kernels cannot be generated by any low-dimensional Markov state, though low-dimensional approximations are accurate (Section 3.4). Whether the infinite-horizon fixed point exists remains open.
3.AComputing the stationary equilibrium
Cutting off lags beyond and placing them on a grid of fixed spacing turns the filter and adjoint kernels into vectors indexed by age. Delays are shifts of the age index. The kink of at reappears at and , where the delayed kernels are evaluated, and at age in the filter, so those points are panel boundaries in the spectral scheme.
The natural algorithm alternates between the filtering equations solved forward and the adjoint equations solved backward with damping, and it converges on a coarse grid but fails as the grid is refined. In classical filtering the update is nonexpansive because the observation structure is fixed in advance. Here the observation drift contains the equilibrium kernels themselves, so the projection changes from one iteration to the next. The combined step stops being a contraction as the kink at lag zero becomes steeper on finer grids.
Given the policy kernels, the filtering equations say that the belief loadings are the least-squares projection of each primitive shock onto the observation history. The solver computes that projection directly from the covariance matrix of the observations. That matrix is Toeplitz except in the rows for the shortest ages, and the conjugate gradient method with a circulant preconditioner solves the resulting system [30]. Only the update of the policy kernels remains iterative.
The grid scheme reads the state at the midpoint of each cell, which introduces an error of first order in the spacing. The solutions on grids from to points still move by a few parts in a thousand between refinements. The reported figures therefore come from a second discretization. The kernels are smooth on each side of lag zero, so each one-sided kernel is represented by its values at Chebyshev points on , and each two-sided kernel by two such sets on and . The projection, the adjoint transport, and the wedge integrals become small dense matrices built from polynomial interpolation and Gauss–Legendre quadrature, and the equilibrium is found by Newton’s method on the policy values. With 24 points per side the solution is converged to , and a full equilibrium takes about ten milliseconds on a desktop. The grid solutions converge toward it as the spacing shrinks (Figure 3.5), and the depth of the kink agrees with an independent solution by the Wiener–Hopf method [91]. The spectral solution reproduces the closed-form filter of the uncontrolled problem to , which is the size of the truncation at .
Neural networks were also tried. At the fitting points, the networks reduced equation residuals below , yet still misrepresented the future-lag side of the fundamental piece and the entire kink at lag zero (Figure 3.6). Small residuals at the fitting points do not show that a network solution is correct, so any such solution should be checked through the finite-deviation identity of Chapter 1.
The solvers, refinement studies, and figures in this chapter are the work of Claude Fable 5, a large language model built by Anthropic [7], working under the author’s direction. Interactive versions of the dissertation’s computations are collected at sbabichenko.com/noisestate.