12. Lipschitz Bounds via SDP: LipSDP and Beyond

Certified radii, slope-restricted activations as quadratic constraints, the LipSDP LMI, Pauli's training and estimation extensions, and the limits of SDP certificates

Before you start

This module assumes:

Book contents · Apply this chapter to a real decision · Glossary

Contents
1. Lipschitz Constants and Certified Robustness 2. The Product Bound and Why It Is Loose 3. Slope Restriction as an Incremental Quadratic Constraint 4. The LipSDP Derivation 5. What Went Wrong With Coupled Multipliers 6. Training Under Lipschitz Constraints: ADMM and Barriers (Pauli et al.) 7. CNNs as Dynamical Systems: 1-D, Roesser and GLipSDP 8. Beyond Slope Restriction: GroupSort, MaxMin, Householder 9. Scalable Variants and Hardness Results Walkthrough: LipSDP for One Hidden Layer Interactive: Naive vs LipSDP vs Empirical Graded practice: Easy / Medium / Hard Original research exercises Application lab & chapter review Exercises and readiness check Key Papers Flashcards
Study route — From a difference bound to a certificate

On a first pass, follow the links below and solve the Easy set before opening the research exercises. Try each question on paper; open its hint only when stuck, then compare your reasoning with the worked solution. Use Medium questions to connect the algebra and Hard questions to check the assumptions.

§1: what the bound means · §3: scalar QC · §4: assemble the LMI · §5: assumptions that make it valid

Practice: 4 Easy · 4 Medium · 4 Hard · original research exercises. Check readiness or use the course study guide.

A two-number bridge to the LMI

A difference is just subtraction between two evaluations: $u=a-b$ and $w=\varphi(a)-\varphi(b)$. For ReLU, $a=2,b=-1$ gives $u=3,w=2$, a chord slope $2/3$. The allowed slope interval $[0,1]$ becomes $2w(u-w)=4\ge0$. This is one scalar fact that the matrix certificate will combine with the network equations.

Read the final inequality in two stages: $M\preceq0$ means $\xi^\top M\xi\le0$ for every vector $\xi$; the activation QC is nonnegative only for valid network increments. Subtracting that nonnegative QC from the matrix inequality leaves $\|\Delta f\|^2-\rho\|\Delta x\|^2\le0$. Hence $L=\sqrt\rho$. If matrix signs feel unfamiliar, review quadratic forms and PSD order and the S-procedure sign convention.

A Lipschitz bound is the simplest certificate a neural network can carry: one number $L$ with $\|f(x)-f(y)\|\le L\|x-y\|$ for all inputs. It turns a classifier's margin (see Primer E) into a deterministic robustness radius, bounds the incremental gain of a neural controller in small-gain arguments (see Primer D and, later, Module 14), and is the quantity that Lipschitz-by-design architectures enforce by construction (see Module 13). Computing the smallest such $L$ is NP-hard already for one hidden layer (Section 2; P, NP and NP-hardness are defined in Primer 0), while multiplying spectral norms (see Primer A) is cheap and often very loose. LipSDP sits in between: it describes every activation by the chord-slope inequality it satisfies, writes the Lipschitz question as a quadratic form, and lets the S-procedure of Module 2 turn it into a semidefinite program.

This page derives LipSDP line by line and then follows Patricia Pauli's work on it: the counterexample showing that only diagonal multipliers are valid, training under the LMI (ADMM, then log-det barriers), convolutions as 1-D and 2-D state-space systems (and the layer-wise GLipSDP), and quadratic constraints for activations that are not slope-restricted. It ends with the scalable reformulations and with what SDP certificates provably cannot do.

Notation on this page
  • Network. $z_0=x\in\mathbb R^{n_0}$, pre-activations $v_k=W_{k-1}z_{k-1}+b_{k-1}$ (layers and activations: see Primer E), hidden states $z_k=\phi(v_k)\in\mathbb R^{n_k}$ for $k=1,\dots,l$, output $f(x)=W_lz_l+b_l$; $n=n_1+\dots+n_l$ hidden neurons. One hidden layer: $f(x)=W_1\phi(W_0x+b_0)+b_1$. Scalar activation $\varphi$, vector map $\phi(v)=[\varphi(v_1),\dots,\varphi(v_n)]^{\top}$. Here $f$ is a network, not the dynamics of the control modules.
  • Increments. For two inputs $x,y$: $\Delta x=x-y$, $\Delta v=v(x)-v(y)$, $\Delta z=z(x)-z(y)$. Biases cancel in every increment.
  • Slopes. $\varphi$ slope-restricted in $[\alpha,\beta]$, $0\le\alpha\lt\beta\lt\infty$. This $\beta$ has nothing to do with the GP scaling $\beta_t$ of Modules 3–6. A slope pattern is $D=\mathrm{diag}(d)$ with $d\in[\alpha,\beta]^n$. It has two readings. At a point where a ReLU network (see Primer E) is differentiable, $d\in\{0,1\}^n$ is its derivative (activation) pattern. For a finite increment, $\Delta z_i=d_i\Delta v_i$ with a chord slope $d_i\in[0,1]$ that can be fractional: between pre-activations $-1$ and $1$ the ReLU chord slope is $1/2$. The quadratic constraint of Section 3 describes chord slopes; when maximising over patterns (Section 2), the binary ones suffice.
  • Bounds. $L^\star(f)$ is the Lipschitz constant, $L$ any upper bound, $\rho=L^2$ in LipSDP. The 1-D CNN paper and GLipSDP write $\gamma$ for $L$ itself, LipKernel writes $\rho$ for $L$ itself, ECLipsE uses $F=1/L^2$: always check whether a paper's symbol is the bound or its square.
  • Multipliers. $T=\mathrm{diag}(\lambda_1,\dots,\lambda_n)\succeq0$ (PSD order: see Primer A), one S-procedure multiplier per neuron (Pauli et al. write $\Lambda$). The $\lambda_i$ are Lagrange multipliers in the sense of Module 2, not the CMDP multiplier of Module 8. $M(\rho,T)\preceq0$ is the LipSDP matrix; the barrier paper and ECLipsE write the same certificate with the opposite sign and in strict form ($\succ0$).
  • Other. $\|\cdot\|$ is the Euclidean norm on vectors (see Primer A) and the spectral norm $\sigma_{\max}$ (see Primer A) on matrices; $m_f(x)$ is a classification margin (not the matrix $M$); $e_i$ is the $i$-th unit vector and $\mathbf 1$ the all-ones vector.

1. Lipschitz Constants and Certified Robustness

Definition — Lipschitz constant ($\ell_2$)
A map $f:\mathbb R^{n_0}\to\mathbb R^{m}$ is $L$-Lipschitz if
$$\|f(x)-f(y)\|\ \le\ L\,\|x-y\|\qquad\forall\,x,y\in\mathbb R^{n_0}.$$
The smallest such $L$ is the Lipschitz constant $L^\star(f)$. A Lipschitz map is differentiable almost everywhere (Rademacher), i.e. everywhere except on a set of zero volume (Primer 0, which also covers suprema), and $$L^\star(f)=\sup_{x}\ \|J_f(x)\|,$$ the supremum of the spectral norm of the Jacobian (see Primer B and Primer A) over the points where it exists (Virmaux & Scaman, NeurIPS 2018, Theorem 1). A ReLU network is continuous and piecewise affine, so $J_f$ is constant on each linear region and $L^\star$ is the largest $\|J_f\|$ over the full-dimensional regions: along the segment from $x$ to $y$ the increment is a sum of pieces $J_k(\cdot)$, each bounded by $\max_k\|J_k\|$ times its length.

Here the region boundaries lie in finitely many pieces of hyperplanes, a zero-volume set, and a full-dimensional region is one that contains a small open ball (Primer 0), on which the network is affine. Boundary points need not have a Jacobian; the segment argument covers them by continuity.

Why this one number certifies a classifier: every logit moves by at most $L\|\delta\|$ when the input moves by $\delta$, and a logit difference by at most $\sqrt2\,L\|\delta\|$. As long as the winning logit is ahead by more than that, nothing can overtake it.

Theorem — Certified radius from a Lipschitz bound (Tsuzuku, Sato & Sugiyama 2018, Prop. 1)
Assumptions. $f:\mathbb R^{n_0}\to\mathbb R^{K}$ is the logit map of the classifier $C(x)=\operatorname*{arg\,max}_if_i(x)$; $f$ is $L$-Lipschitz in $\ell_2$ with a known upper bound $L$; at the input $x$ the predicted class is $y=C(x)$ with margin $$m_f(x)=f_y(x)-\max_{j\ne y}f_j(x)\ \gt\ 0 .$$ Statement.
$$C(x+\delta)=y\qquad\text{for all perturbations with}\qquad \|\delta\|\ \lt\ \frac{m_f(x)}{\sqrt2\,L}.$$
In words. The certified radius is the margin divided by $\sqrt2$ times the Lipschitz bound. Tsuzuku et al., NeurIPS 2018 state it as $m_f(x)\ge\sqrt2L\|\delta\|\Rightarrow m_f(x+\delta)\ge0$ (a tie is allowed); the same rule is Proposition 1 in the appendix of Fazlyab et al., NeurIPS 2019.
Why each assumption matters. $L$ must be an upper bound: a constant estimated from sampled gradients is a lower bound and certifies nothing. The radius scales like $1/L$, so a bound twice too loose halves every certified radius; this is why the rest of the page cares about tightness. The norm is $\ell_2$; other norms follow by norm equivalence with dimension factors (see Primer A; LipSDP, Remark 1): for $\delta\in\mathbb R^{n_0}$, $\|\delta\|_2\le\sqrt{n_0}\,\|\delta\|_\infty$ and $\|\delta\|_2\le\|\delta\|_1$, so an $\ell_2$ radius $r$ certifies the $\ell_\infty$ radius $r/\sqrt{n_0}$ and the $\ell_1$ radius $r$ (a certificate computed directly in the other norm can be tighter). The certificate is deterministic and global: it holds for every input and every perturbation, with no probability involved.
Proof sketch — where the $\sqrt2$ comes from

Fix $j\ne y$ and let $g_j(x)=f_y(x)-f_j(x)=(e_y-e_j)^{\top}f(x)$. By Cauchy–Schwarz (see Primer A) and the Lipschitz bound,

$$\begin{aligned}|g_j(x+\delta)-g_j(x)|&=\big|(e_y-e_j)^{\top}\big(f(x+\delta)-f(x)\big)\big|\\ &\le\|e_y-e_j\|\,\|f(x+\delta)-f(x)\|\le\sqrt2\,L\,\|\delta\| .\end{aligned}$$

Hence $g_j(x+\delta)\ge g_j(x)-\sqrt2L\|\delta\|\ge m_f(x)-\sqrt2L\|\delta\|\gt0$ for every $j\ne y$ when $\|\delta\|\lt m_f(x)/(\sqrt2L)$, so $y$ remains the unique arg max. $\blacksquare$ The factor $\|e_y-e_j\|=\sqrt2$ is attained by a perturbation that raises one logit and lowers the other by the same amount; it is lost if one bounds each difference $g_j$ directly (next box).

Caveat — radius conventions differ between papers
(i) Whole logit map: $m_f(x)/(\sqrt2L)$ with $L$ the Lipschitz bound of $f:\mathbb R^{n_0}\to\mathbb R^K$ (Tsuzuku et al., LipSDP). (ii) Pairwise margins: $\min_{j\ne y}g_j(x)/L_{yj}$ with $L_{yj}$ a Lipschitz bound of $f_y-f_j$; Tsuzuku et al.'s Proposition 2 uses $L_{yj}=L_{\rm sub}\|w_y-w_j\|$ with $w_i$ the rows of the last layer and $L_{\rm sub}$ a bound for the network before it, and GloRo networks (Leino, Wang & Fredrikson, ICML 2021) build this rule into training. (iii) One-vs-rest: LipNeXt (Hu, Hu & Fredrikson, ICLR 2026) splits a $K$-class problem into $K-1$ binary problems, certifies each binary logit $g$ with radius $|g(x)|/L_g$ ($L_g$ a Lipschitz bound of $g$) and takes the minimum, which is rule (ii). The best such $L_{yj}$ is at most $\sqrt2L$, so (ii) and (iii) are never worse than (i) when the constants are computed equally tightly. Radii are also scale-dependent: on CIFAR-10 with pixels in $[0,1]$ the standard $\ell_2$ radii are $36/255\approx0.141$, $72/255\approx0.282$ and $108/255\approx0.424$, while randomized-smoothing papers report radii from $0.25$ upwards, and those certify a different, smoothed classifier with a probability (see Module 15; Cohen, Rosenfeld & Kolter, ICML 2019). Compare certified accuracies only within one convention and one radius.

What "smoothed" means (optional; nothing on this page uses it). For a base classifier $h$ and Gaussian noise $\varepsilon\sim\mathcal N(0,\sigma^2I)$, the smoothed classifier is $g(x)=\operatorname*{arg\,max}_c\Pr\big(h(x+\varepsilon)=c\big)$. Cohen et al.'s Theorem 1 assumes nothing about $h$: if $\Pr(h(x+\varepsilon)=A)\ge\underline p_A\ge\overline p_B\ge\max_{c\ne A}\Pr(h(x+\varepsilon)=c)$, then $g(x+\delta)=A$ for all $\|\delta\|\lt\tfrac\sigma2\big[\Phi^{-1}(\underline p_A)-\Phi^{-1}(\overline p_B)\big]$, with $\Phi$ the standard normal CDF. The two probability bounds are estimated from noise samples, so the reported radius holds only with a chosen confidence level (for example $99.9\%$).

Lipschitz-margin training. To make the certificate hold at radius $c$ on the training data, Tsuzuku et al. add $\sqrt2\,c\,L_F$ to every non-target logit before the cross-entropy loss (see Primer E), where $L_F$ is a cheap, differentiable upper bound of the network's Lipschitz constant (their LMT). For target class $y$ and logits $a$ the cross-entropy is $-a_y+\log\sum_je^{a_j}$; after the shift it is at least $\log2$ unless $a_y$ exceeds every other logit by more than $\sqrt2cL_F$. The network is thereby trained to have margins larger than $\sqrt2cL_F$, which is exactly the hypothesis of the theorem; training only encourages this, and the radius $c$ is certified on those inputs where the margin inequality holds after training. For context on what this buys at scale: the 2026 state of the art among deterministic $\ell_2$ certificates on CIFAR-10 is LipNeXt with $85.0\%$ clean and $73.2\%$ certified accuracy at $36/255$ without extra data (see Module 13). Those networks are $1$-Lipschitz by construction, so they need no estimation at all; LipSDP and its descendants matter whenever the architecture does not come with a certificate, and for control, where the Lipschitz bound of a trained controller is an input to a stability test.

Key insight
There are two ways to enlarge certified radii: increase margins, or decrease $L$. Only a certified $L$ counts, and the gap between the certified bound and $L^\star$ is lost radius. A global bound certifies every input at once; a local constant, the Lipschitz constant restricted to a ball around $x$ (see Primer B), can be much smaller but must be recomputed per input (see Module 15). The explorer at the end of the page shows both: an enumerated global estimate and what gradients sampled in a box find.

2. The Product Bound and Why It Is Loose

Theorem — Product of spectral norms
Assumptions. $f$ is the $l$-hidden-layer network of the notation box and $\varphi$ is slope-restricted in $[\alpha,\beta]$ with $\alpha\ge0$, so $|\varphi(a)-\varphi(b)|\le\beta|a-b|$.
Statement.
$$L^\star(f)\ \le\ \beta^{\,l}\,\prod_{k=0}^{l}\|W_k\|\qquad(\beta=1\text{ for ReLU and tanh}).$$
In words. Each affine map stretches increments by at most its largest singular value, each activation layer by at most $\beta$; multiply. For multilayer perceptrons with $1$-Lipschitz activations this is exactly what the AutoLip algorithm returns (Virmaux & Scaman, Proposition 1), and it is the quantity exact spectral normalisation keeps at $1$ by dividing every $W_k$ by $\|W_k\|$ (Miyato et al., ICLR 2018). Their implementation estimates $\|W_k\|$ with one power-iteration step per update, $\tilde\sigma_k=\tilde u^{\top}W_k\tilde v$ with unit vectors $\tilde u,\tilde v$ (their Appendix A). Such an estimate never exceeds $\|W_k\|$, so each normalised norm $\|W_k\|/\tilde\sigma_k$ is at least $1$ and only approximately equal to it. A certificate needs exact norms or certified upper bounds on them (Section 9).
Proof — induction over the layers

Take two inputs and write $\Delta_k=z_k(x)-z_k(y)$, so $\Delta_0=x-y$. The bias cancels in the pre-activation increment, $v_{k+1}(x)-v_{k+1}(y)=W_k\Delta_k$. Component $i$ of the next increment is a chord of $\varphi$:

$$\begin{aligned}|\Delta_{k+1,i}|&=\big|\varphi(v_{k+1,i}(x))-\varphi(v_{k+1,i}(y))\big|\le\beta\,\big|(W_k\Delta_k)_i\big|\\ \Longrightarrow\quad\|\Delta_{k+1}\|&\le\beta\,\|W_k\Delta_k\|\le\beta\,\|W_k\|\,\|\Delta_k\| ,\end{aligned}$$

where the middle step squares and sums the componentwise inequality. Applying this for $k=0,\dots,l-1$ and then $\|f(x)-f(y)\|=\|W_l\Delta_l\|\le\|W_l\|\,\|\Delta_l\|$ gives $\|f(x)-f(y)\|\le\beta^l\prod_{k=0}^{l}\|W_k\|\,\|x-y\|$. $\blacksquare$

Jacobian view. Where $f$ is differentiable, $J_f(x)=W_lD_l(x)W_{l-1}\cdots D_1(x)W_0$ with $D_k(x)=\mathrm{diag}\big(\varphi'(v_k(x))\big)$ and every derivative in $[\alpha,\beta]$. Hence

$$L^\star=\sup_x\big\|W_lD_l(x)\cdots D_1(x)W_0\big\|\ \le\ \max_{D_k\in[\alpha,\beta]^{n_k}}\big\|W_lD_l\cdots D_1W_0\big\|\ \le\ \beta^l\prod_k\|W_k\| .$$

The middle quantity, the all-patterns bound, replaces the slopes that actually occur by every diagonal matrix with entries in $[\alpha,\beta]$. Keep it in mind: Section 4 shows it is exactly what LipSDP's constraints can see. The maximum over the box is attained at a vertex, i.e. at a $0/1$ pattern when $[\alpha,\beta]=[0,1]$. Fix all slopes except one, $d\in[\alpha,\beta]$: the product $W_lD_l\cdots D_1W_0$ is then affine in $d$, so $h(d)=\|W_lD_l\cdots D_1W_0\|$ is convex in $d$ (see Primer B) and $h(d)\le\max\{h(\alpha),h(\beta)\}$. Moving that slope to the better endpoint cannot decrease the objective; doing this for one slope after another, in every layer, ends at a vertex.

The product bound pays for two things that never happen:

SeqLip as an intermediate. Virmaux & Scaman start from the all-patterns bound with $[\alpha,\beta]=[0,1]$ (their eq. 7), which is itself hard to evaluate, and split it layer by layer using SVDs $W_i=U_i\Sigma_iV_i^{\top}$ (box below): each factor involves only two consecutive layers and captures their misalignment. For small layers ($\le20$ neurons) each factor's maximum is found by enumerating $0/1$ patterns; otherwise a power-method heuristic ("Greedy SeqLip") is used, which is not guaranteed to be an upper bound, as Fazlyab et al. point out. For one hidden layer, exact SeqLip coincides with the all-patterns bound, at a cost exponential in the width.

Fact — The SeqLip bound (Virmaux & Scaman 2018, eq. (8), in this page's indexing)
Let the slopes lie in $[0,1]$ and take thin SVDs $W_i=U_i\Sigma_iV_i^{\top}$ ($U_i,V_i$ with orthonormal columns). Splitting every inner $\Sigma_i$, $0\lt i\lt l$, as $\Sigma_i^{1/2}\Sigma_i^{1/2}$ regroups the Jacobian as
$$W_lD_l\cdots D_1W_0=U_l\,F_l(D_l)\cdots F_1(D_1)\,V_0^{\top},\qquad F_i(D_i)=A_iV_i^{\top}D_iU_{i-1}B_{i-1},$$
with $A_l=\Sigma_l$, $A_i=\Sigma_i^{1/2}$ for $i\lt l$, $B_0=\Sigma_0$ and $B_i=\Sigma_i^{1/2}$ for $i\gt0$. The outer factors $U_l$ and $V_0^{\top}$ do not change the norm, so submultiplicativity and maximising each factor on its own give
$$L^\star(f)\ \le\ \max_{D_1,\dots,D_l}\|W_lD_l\cdots D_1W_0\|\ \le\ \prod_{i=1}^{l}\ \max_{D_i}\|F_i(D_i)\|,$$
each $D_i$ diagonal with entries in $[0,1]$. This is a certified bound only if every factor's maximum is computed exactly or bounded from above; a heuristic that stops at a smaller value can underestimate it. For $l=1$ the single factor is the all-patterns bound.
Theorem — Exact Lipschitz computation is NP-hard (Virmaux & Scaman 2018, Theorem 2)
Given $M_1\in\mathbb R^{p\times n}$, $M_2\in\mathbb R^{m\times p}$ and $\ell\ge0$, deciding whether $f=M_2\circ\mathrm{ReLU}\circ M_1$ (one hidden layer; their "2-layer MLP") satisfies $L^\star(f)\le\ell$ is NP-hard. The proof reduces concave quadratic minimisation over a hypercube to it.
Consequence. Unless P = NP (see Primer 0), no polynomial-time method is guaranteed to return the exact value on every network, although particular networks or special classes can be easy; enumerating the $2^p$ activation patterns of the $p$ hidden neurons takes time exponential in $p$. Scalable methods therefore return upper bounds, and the question is how conservative they are and where the conservatism comes from.
Key insight
The product bound pays for alignments and for activation patterns that never occur. LipSDP, derived next, removes most of the first cost and none of the second; Section 9 explains why the second one cannot be removed in polynomial time in general.

3. Slope Restriction as an Incremental Quadratic Constraint

Definition — Slope restriction (Fazlyab et al. 2019, Definition 1)
$\varphi:\mathbb R\to\mathbb R$ is slope-restricted on $[\alpha,\beta]$, $0\le\alpha\lt\beta\lt\infty$, if every chord has slope in $[\alpha,\beta]$:
$$\alpha\ \le\ \frac{\varphi(a)-\varphi(b)}{a-b}\ \le\ \beta\qquad\forall\,a\ne b .$$
Equivalently, the antiderivative $\int\varphi$ is $\alpha$-strongly convex and $\beta$-smooth (see Primer B): activations are gradients of convex potentials, which is the observation LipSDP is built on.

To see this, define $F(v)=\int_0^v\varphi(t)\,dt$, so $F'=\varphi$ ($\varphi$ is continuous, being Lipschitz). The lower chord bound says $F'(v)-\alpha v$ is nondecreasing, so $F(v)-\alpha v^2/2$ is convex: that is $\alpha$-strong convexity (ordinary convexity when $\alpha=0$). Both bounds together give $|F'(a)-F'(b)|\le\beta|a-b|$, which is $\beta$-smoothness. Each step reverses, hence "equivalently".

Activation$[\alpha,\beta]$Remark
ReLU, tanh, softplus$[0,1]$$\alpha=0$ is tight: slopes approach $0$
Leaky ReLU, slope $a\in(0,1)$ for negative inputs$[a,1]$the only common case with $\alpha\gt0$
Sigmoid$[0,\tfrac14]$$[0,1]$ is valid but loose; Pauli et al. use $\beta=\tfrac14$
MaxMin, GroupSort, Householder—not elementwise; Section 8
Derivation — from the chord inequality to a quadratic form

Fix $a,b\in\mathbb R$ and set $u=a-b$, $w=\varphi(a)-\varphi(b)$.

Step 1 (one inequality instead of two). For $u\ne0$ the chord slope $s=w/u$ lies in $[\alpha,\beta]$ iff $(s-\alpha)(s-\beta)\le0$, because the product of the distances to the two endpoints is nonpositive exactly between them.

Step 2 (clear the denominator). Multiply by $u^2\ge0$ and use $su=w$:

$$(w-\alpha u)(w-\beta u)\ \le\ 0 .$$

For $u=0$ we have $w=0$ and the inequality holds with equality, so it is valid for all $a,b$.

Step 3 (expand and flip). $w^2-(\alpha+\beta)uw+\alpha\beta u^2\le0$. Multiplying by $-2$ reverses the inequality and produces the symmetric form used by LipSDP (see Primer A):

$$-2\alpha\beta\,u^2+2(\alpha+\beta)\,uw-2w^2\ \ge\ 0\qquad\Longleftrightarrow\qquad \begin{bmatrix}u\\ w\end{bmatrix}^{\top}\begin{bmatrix}-2\alpha\beta& \alpha+\beta\\ \alpha+\beta& -2\end{bmatrix}\begin{bmatrix}u\\ w\end{bmatrix}\ \ge\ 0 .$$

For $[0,1]$ this is $2w(u-w)\ge0$: the output increment has the same sign as the input increment and is no larger. The inequality involves the increments only; nothing refers to the points $a,b$ themselves. That is what makes it an incremental quadratic constraint (QC), and it is also, as Section 5 shows, what makes coupling two neurons dangerous.

Lemma — Diagonal multipliers (Fazlyab et al. 2019, Lemma 1, current arXiv version)
Let $\varphi$ be slope-restricted on $[\alpha,\beta]$ and $\phi(v)=[\varphi(v_1),\dots,\varphi(v_n)]^{\top}$. For every $T\in\mathcal T_n=\big\{\sum_{i=1}^n\lambda_ie_ie_i^{\top}:\ \lambda_i\ge0\big\}$ (diagonal and positive semidefinite) and all $v,\bar v\in\mathbb R^n$,
$$\begin{bmatrix}v-\bar v\\ \phi(v)-\phi(\bar v)\end{bmatrix}^{\top}\underbrace{\begin{bmatrix}-2\alpha\beta T& (\alpha+\beta)T\\ (\alpha+\beta)T& -2T\end{bmatrix}}_{Q_T}\begin{bmatrix}v-\bar v\\ \phi(v)-\phi(\bar v)\end{bmatrix}\ \ge\ 0 .$$
Proof. With $T$ diagonal the form splits into $\sum_i\lambda_i q_i$, where $q_i$ is the scalar QC of neuron $i$ from the derivation above; each $q_i\ge0$ and each $\lambda_i\ge0$. $\blacksquare$ (The same lemma, with the S-procedure reading of the $\lambda_i$, is in Module 2.)
Proposition — What the QC knows, and what it forgets
A pair $(u,w)\in\mathbb R^n\times\mathbb R^n$ satisfies the QC of the lemma for every $T\in\mathcal T_n$ if and only if $$w=Du\qquad\text{for some }D=\mathrm{diag}(d_1,\dots,d_n),\ d_i\in[\alpha,\beta].$$ Proof. ($\Leftarrow$) With $w_i=d_iu_i$, $q_i=-2u_i^2(d_i-\alpha)(d_i-\beta)\ge0$. ($\Rightarrow$) Take $T=e_ie_i^{\top}$: then $q_i\ge0$, i.e. $(w_i-\alpha u_i)(w_i-\beta u_i)\le0$, so $w_i/u_i\in[\alpha,\beta]$ if $u_i\ne0$, and $-2w_i^2\ge0$ forces $w_i=0$ if $u_i=0$. $\blacksquare$
In words. The abstraction replaces the activation layer by the set-valued map $\Delta v\mapsto\{D\,\Delta v:\ D\in[\alpha,\beta]^n\}$: every neuron gets its own chord slope, chosen independently of the other neurons and of where the inputs are. It forgets which slope combinations occur together (the patterns of Section 2) and it forgets the base points. The first gap is the price LipSDP pays; the second is the reason coupled multipliers fail.

Incremental versus non-incremental. An incremental QC relates two arbitrary inputs; it is the right object for global Lipschitz bounds and contraction. A non-incremental QC relates $v$ and $\phi(v)$ at a single input (with $\phi(0)=0$, the classical sector condition), or $v-v_*$ and $\phi(v)-\phi(v_*)$ around a fixed point $v_*$. Those are what stability analysis of an equilibrium uses, often in a local, much tighter form (see Module 14; Yin, Seiler & Arcak, TAC 2022), and what the reachability and verification SDPs DeepSDP (Fazlyab, Morari & Pappas, TAC 2022) and Reach-SDP (Hu et al., CDC 2020) use. The distinction decides which multipliers are admissible (Section 5).

Going deeper — sectors, slopes and the loop transformation

In absolute-stability theory a static nonlinearity with $\varphi(0)=0$ lies in the sector $[\alpha,\beta]$ if $(\varphi(v)-\alpha v)(\beta v-\varphi(v))\ge0$ for all $v$, which is the $2\times2$ QC above applied to $(v,\varphi(v))$ instead of to increments. Slope restriction is therefore the incremental sector condition, and it implies the sector condition when $\varphi(0)=0$ (take $b=0$); the converse fails, because a sector-bounded function need not be monotone.

The loop transformation $\tilde\varphi(v)=\big(\varphi(v)-\alpha v\big)/(\beta-\alpha)$ maps slope$[\alpha,\beta]$ to slope$[0,1]$, and $\varphi(v)=\alpha v+(\beta-\alpha)\tilde\varphi(v)$. In a network this introduces a linear bypass path from each pre-activation to the next layer, i.e. it changes the architecture. That is why LipSDP keeps $\alpha$ and $\beta$ inside the multiplier matrix, while circle, Popov and Zames–Falb criteria for feedback loops (see Module 14) normalise the sector first. Both descend from the quadratic-constraint view of robust control (Megretski & Rantzer, TAC 1997).

4. The LipSDP Derivation

The whole method fits in one sentence: the Lipschitz inequality is a quadratic inequality in the increments, every neuron contributes a quadratic inequality in the same increments, and the S-procedure turns "the neuron inequalities imply the Lipschitz inequality" into a linear matrix inequality (Fazlyab, Robey, Hassani, Morari & Pappas, NeurIPS 2019). We derive it for one hidden layer, $f(x)=W_1\phi(W_0x+b_0)+b_1$ with $W_0\in\mathbb R^{n\times n_0}$ and $W_1\in\mathbb R^{m\times n}$, and then read off the deep version.

Fix two inputs $x,y$ and write $\Delta x=x-y$, $\Delta v=W_0\Delta x$ (the bias cancels), $\Delta z=\phi(W_0x+b_0)-\phi(W_0y+b_0)$ and $\Delta f=f(x)-f(y)=W_1\Delta z$. Everything below is a statement about the stacked increment $\xi=(\Delta x,\Delta z)\in\mathbb R^{n_0+n}$.

Step 1: the goal as a quadratic form. With $\rho=L^2$,

$$\|\Delta f\|^2\le\rho\,\|\Delta x\|^2\quad\Longleftrightarrow\quad \xi^{\top}\begin{bmatrix}-\rho I_{n_0} & 0\\ 0 & W_1^{\top}W_1\end{bmatrix}\xi\ \le\ 0 ,$$

because $\|\Delta f\|^2=\Delta z^{\top}W_1^{\top}W_1\Delta z$. The output layer is linear, so it only contributes the block $W_1^{\top}W_1$.

Step 2: what the activations guarantee. The lemma of Section 3 applies to the pair $(\Delta v,\Delta z)$. Since $(\Delta v,\Delta z)=\mathrm{blkdiag}(W_0,I)\,\xi$, a congruence moves the constraint onto $\xi$:

$$\begin{aligned}&\xi^{\top}\begin{bmatrix}W_0 & 0\\ 0 & I\end{bmatrix}^{\top}\begin{bmatrix}-2\alpha\beta T & (\alpha+\beta)T\\ (\alpha+\beta)T & -2T\end{bmatrix}\begin{bmatrix}W_0 & 0\\ 0 & I\end{bmatrix}\xi\\ &\qquad=\xi^{\top}\begin{bmatrix}-2\alpha\beta\,W_0^{\top}TW_0 & (\alpha+\beta)W_0^{\top}T\\ (\alpha+\beta)TW_0 & -2T\end{bmatrix}\xi\ \ge\ 0\end{aligned}$$

for every $T\in\mathcal T_n$ and every pair of inputs.

Step 3: the S-procedure. Call the two matrices $G(\rho)$ (goal) and $Q(T)$ (constraint). If $G(\rho)+Q(T)\preceq0$ for some $T\in\mathcal T_n$, then for every increment the network can produce,

$$\xi^{\top}G(\rho)\,\xi\ =\ \underbrace{\xi^{\top}\big(G(\rho)+Q(T)\big)\xi}_{\le0}\ -\ \underbrace{\xi^{\top}Q(T)\,\xi}_{\ge0\ \text{(Step 2)}}\ \le\ 0 .$$

The multipliers $\lambda_i$ on the diagonal of $T$ are exactly the S-procedure multipliers of Module 2, one per neuron. The implication runs one way only: the S-procedure with $n\ge2$ constraints is sufficient, not necessary, and this is one of the places where conservatism enters.

Step 4: assemble. Adding the blocks gives the LipSDP matrix

$$M(\rho,T)=\begin{bmatrix}-2\alpha\beta\,W_0^{\top}TW_0-\rho I_{n_0} & (\alpha+\beta)W_0^{\top}T\\ (\alpha+\beta)TW_0 & -2T+W_1^{\top}W_1\end{bmatrix}\ \preceq\ 0 .$$
Theorem — LipSDP for one hidden layer (Fazlyab et al. 2019, Theorem 1, arXiv v2)
Assumptions. (A1) $f(x)=W_1\phi(W_0x+b_0)+b_1$ with $\phi(v)=[\varphi(v_1),\dots,\varphi(v_n)]^{\top}$ applied elementwise; (A2) $\varphi$ is slope-restricted on $[\alpha,\beta]$; (A3) $T\in\mathcal T_n$, i.e. diagonal with nonnegative entries.
Statement. If $M(\rho,T)\preceq0$ for some $\rho\gt0$ and $T\in\mathcal T_n$, then $\|f(x)-f(y)\|\le\sqrt\rho\,\|x-y\|$ for all $x,y\in\mathbb R^{n_0}$. The best bound is
$$\rho^\star=\min_{\rho\ge0,\ T\in\mathcal T_n}\ \rho\qquad\text{s.t.}\qquad M(\rho,T)\preceq0,$$
a semidefinite program: $M$ is affine in $(\rho,T)$ and $\mathcal T_n$ is a convex cone, so there are no nonglobal local optima; an interior-point solver approximates the optimum to its tolerances, and a proposed certificate still needs a feasibility check.
In words. Find the per-neuron weights for which "every neuron behaves like a chord of slope in $[\alpha,\beta]$" implies "the output moves by at most $\sqrt\rho$ times the input".
Why each assumption matters. (A1) Elementwise application is what makes the QC a sum of scalar QCs; GroupSort-type activations violate it (Section 8). (A2) Slope restriction, not a sector bound, is needed because the certificate must hold for every pair of inputs. Each neuron may even use a different activation as long as all are slope-restricted on $[\alpha,\beta]$. (A3) Diagonality is essential: the NeurIPS version allowed coupled $T$ and was wrong (Section 5). The biases appear nowhere in $M$: the certificate holds for every bias vector at once. We come back to this below, because it explains what LipSDP cannot see.
Pause before the stacked formula

In the one-hidden-layer calculation, $W_0$ maps the input increment to pre-activation increments; $T$ has one diagonal entry per hidden neuron; and $W_1$ maps hidden activation increments to the output. Thus the upper-left block of $M$ has input size, the lower-right block has hidden size, and the off-diagonal blocks must be transposes of one another. Checking these shapes is a useful way to catch a misplaced transpose.

The deeper formula makes the same calculation once for a longer vector. Its selection matrices do not create new assumptions: they pick the needed input and activation differences out of that vector. Read each block as a scalar quadratic term first, then use block multiplication to assemble it.

The deep network. For $l$ hidden layers, stack $\xi=(\Delta z_0,\Delta z_1,\dots,\Delta z_l)\in\mathbb R^{n_0+n}$ with $\Delta z_0=\Delta x$. Two selection matrices produce the pre-activation and activation increments of all hidden layers at once:

$$A\xi=\begin{bmatrix}W_0\Delta z_0\\ \vdots\\ W_{l-1}\Delta z_{l-1}\end{bmatrix}=\Delta v,\qquad B\xi=\begin{bmatrix}\Delta z_1\\ \vdots\\ \Delta z_l\end{bmatrix},$$
$$A=\big[\,\mathrm{blkdiag}(W_0,\dots,W_{l-1})\ \ 0\,\big],\qquad B=\big[\,0\ \ I_n\,\big].$$

With $T=\mathrm{blkdiag}(T_1,\dots,T_l)$ diagonal, Steps 1–4 go through unchanged and give Theorem 2 of LipSDP:

$$\begin{aligned}M(\rho,T)&=\begin{bmatrix}A\\ B\end{bmatrix}^{\top}\begin{bmatrix}-2\alpha\beta T & (\alpha+\beta)T\\ (\alpha+\beta)T & -2T\end{bmatrix}\begin{bmatrix}A\\ B\end{bmatrix}\\ &\qquad+\mathrm{blkdiag}\big(-\rho I_{n_0},0,\dots,0,W_l^{\top}W_l\big)\ \preceq\ 0\quad\Longrightarrow\quad L=\sqrt\rho .\end{aligned}$$

Written out for two hidden layers, the matrix is block tridiagonal, because each neuron's constraint couples only its own input and output increments, which live in consecutive layers:

$$M=\begin{bmatrix}-\rho I-2\alpha\beta W_0^{\top}T_1W_0 & (\alpha+\beta)W_0^{\top}T_1 & 0\\ (\alpha+\beta)T_1W_0 & -2T_1-2\alpha\beta W_1^{\top}T_2W_1 & (\alpha+\beta)W_1^{\top}T_2\\ 0 & (\alpha+\beta)T_2W_1 & -2T_2+W_2^{\top}W_2\end{bmatrix}\preceq0 .$$

This banded structure is the single most important fact for everything that follows: Pauli et al. factor it layer by layer (Section 6), the dissipativity view reads it as a chain of layer-wise storage functions (Section 7), and chordal and compositional methods decompose it (Section 9).

VariantMultiplierUnknownsMeasured cost (Fazlyab et al., MOSEK)
LipSDP-Neuron$T=\mathrm{diag}(\lambda_1,\dots,\lambda_n)$$n+1$one hidden layer: $5.2$ s for $n=500$, $735$ s for $n=3000$
LipSDP-Layer$T=\mathrm{blkdiag}(\lambda_1I_{n_1},\dots,\lambda_lI_{n_l})$$l+1$$2.9$ s and $473$ s for the same networks
Splittingbound sub-networks separately, multiplyper blockup to $500$ hidden layers of $100$ neurons, cut into 5-layer blocks; the largest ($50{,}000$ neurons) took about $12$ min (Neuron) or $4$ min (Layer)

Splitting is valid because the Lipschitz constant of a composition is at most the product of the constants of its parts, but it reintroduces a product bound at every cut. In their MNIST experiments (five hidden layers, test accuracy above $97\%$), LipSDP-Neuron was tighter than CPLip and SeqLip.

Proposition — Where LipSDP sits (slopes in $[0,1]$, e.g. ReLU and tanh)
$$\underbrace{L^\star(f)}_{\text{true}}\ \le\ \underbrace{\max_{D_k\in[0,1]^{n_k}}\big\|W_lD_l\cdots D_1W_0\big\|}_{\text{all-patterns bound}}\ \le\ L_{\rm Neuron}\ \le\ L_{\rm Layer}\ \le\ \prod_{k=0}^{l}\|W_k\| .$$
Proof. The first inequality is the Jacobian argument of Section 2. For the second, fix any slope pattern $D=(D_1,\dots,D_l)$ and consider the linear network $x\mapsto W_lD_l\cdots D_1W_0x$: its increments satisfy every neuron's QC (Proposition of Section 3), so a LipSDP certificate for $f$ is also a certificate for it and $\sqrt{\rho}\ge\|W_lD_l\cdots W_0\|$. The third holds because Layer restricts Neuron. For the fourth, exhibit a feasible point; for one hidden layer take $T=tI$ with $t=\|W_1\|^2$: then $2tI-W_1^{\top}W_1\succeq tI$, and the Schur complement (see the walkthrough) gives $\rho\ge t^2\lambda_{\max}\big(W_0^{\top}C^{-1}W_0\big)$ with $C=2tI-W_1^{\top}W_1$. Since $C\succeq tI$, every eigenvalue of $C^{-1}$ is at most $1/t$, i.e. $C^{-1}\preceq\tfrac1tI$, and a congruence with $W_0$ gives $t^2W_0^{\top}C^{-1}W_0\preceq t\,W_0^{\top}W_0\preceq t\,\|W_0\|^2I$. So $\rho=t\,\|W_0\|^2=\|W_0\|^2\|W_1\|^2$ is feasible (if $W_1=0$, $T=0$ works for every $\rho\gt0$). The multi-layer construction is in Section 7. $\blacksquare$
In words. LipSDP is never worse than the product bound, and it can never be better than the all-patterns bound.
Key insight — LipSDP does not look at the biases
Since $M(\rho,T)$ contains no bias, one certificate holds for $f_b$ with every bias vector $b$, so $\sqrt{\rho^\star}\ge\sup_bL^\star(f_b)$. For ReLU networks this supremum is the all-patterns bound: at any input $x_0$ one can choose the biases layer by layer so that every neuron has the sign prescribed by a given $0/1$ pattern, and the maximum of $\|W_lD_l\cdots W_0\|$ over the box is attained at a $0/1$ vertex, because the norm is convex in each $D_k$ separately. In the example $f(x)=\mathrm{ReLU}(x)-\mathrm{ReLU}(-x)$ of Section 2, the biases $(1,1)$ make both neurons active on $(-1,1)$, where the slope is $2$. LipSDP's answer $2$ is the correct answer to the question "how steep can a network with these weights be?". It is a loose answer to the question about this network. Closing that gap requires knowing which patterns the actual biases make reachable, which is where the hardness results of Section 9 bite.
Going deeper — LipSDP is the dual of a Shor relaxation

For a scalar output $f(x)=v^{\top}\phi(W_0x+b_0)$ with slopes in $[0,1]$, the neuron constraints say $\Delta z_i(\Delta z_i-w_i^{\top}\Delta x)\le0$ with $w_i^{\top}$ the $i$-th row of $W_0$, i.e. $\Delta z_i=d_i\,w_i^{\top}\Delta x$ for some $d_i\in[0,1]$. The constraints are homogeneous: replacing $(\Delta x,\Delta z)$ by $t(\Delta x,\Delta z)$ multiplies each quadratic constraint by $t^2$. For $\Delta x\ne0$, take $t=1/\|\Delta x\|$; when $\Delta x=0$ the QC forces $\Delta z=0$. Central symmetry lets us maximize the signed output instead of its absolute value. Thus the Lipschitz question becomes the quadratically constrained quadratic program

$$\max_{\Delta x,\Delta z}\ v^{\top}\Delta z\qquad\text{s.t.}\qquad \Delta z_i(\Delta z_i-w_i^{\top}\Delta x)\le0\ \ (i=1,\dots,n),\qquad \|\Delta x\|\le1,$$

whose optimum is exactly the all-patterns bound $\max_{d\in[0,1]^n}\|W_0^{\top}\mathrm{diag}(d)v\|$, a non-convex, max-cut-like problem. Lifting: with $q=(\Delta x,\Delta z)$, the matrix $Y=\begin{bmatrix}1\\ q\end{bmatrix}\begin{bmatrix}1\\ q\end{bmatrix}^{\top}$ is PSD with rank one and $Y_{00}=1$; every product $q_iq_j$ is an entry $Y_{ij}$ and every linear term $q_i$ an entry $Y_{0i}$, so the objective and all constraints are linear in $Y$. Dropping the rank-one condition enlarges the feasible set and gives Shor's SDP relaxation, an upper bound, and its Lagrange dual is LipSDP up to a Schur complement and a rescaling (Wang, Hu, Havens, Araujo, Zheng, Chen & Jha, ICLR 2024, Section 3). So the gap between the all-patterns bound and LipSDP-Neuron is a relaxation gap. It is often zero in small examples, but not always: the walkthrough network has all-patterns bound $\sqrt5\approx2.236$ and LipSDP value $4/\sqrt3\approx2.309$.

Fact — LipSDP is exactly the dual of Shor's relaxation of the squared problem (derived here; cf. Wang et al. 2024, Section 3)
Squaring the objective makes the problem homogeneous, and then no constant coordinate is needed; we allow a general output layer $W_1$ ($W_1=v^{\top}$ above). Take slopes in $[0,1]$, $q=(u,z)\in\mathbb R^{n_0+n}$ and the symmetric matrices $P=\mathrm{blkdiag}(I_{n_0},0)$, $G=\mathrm{blkdiag}(0,W_1^{\top}W_1)$ and $Q_i$ with $q^{\top}Q_iq=2z_i(w_i^{\top}u-z_i)$. The problem $\max_q q^{\top}Gq$ s.t. $q^{\top}Pq\le1$, $q^{\top}Q_iq\ge0$ ($i=1,\dots,n$) has value $\big(\max_D\|W_1DW_0\|\big)^2$, the squared all-patterns bound, because the constraints say exactly $z=DW_0u$ with $D$ diagonal in $[0,1]$ and $\|u\|\le1$. Replacing $qq^{\top}$ by $X\succeq0$ and dropping rank one gives the SDP $\max\langle G,X\rangle$ s.t. $\langle P,X\rangle\le1$, $\langle Q_i,X\rangle\ge0$, $X\succeq0$, with $\langle A,B\rangle=\mathrm{tr}(A^{\top}B)$. Its conic dual is
$$\min_{\rho\ge0,\ \lambda\ge0}\ \rho\qquad\text{s.t.}\qquad G-\rho P+\sum_i\lambda_iQ_i\preceq0 .$$
Since $\sum_i\lambda_iQ_i=\begin{bmatrix}0 & W_0^{\top}T\\ TW_0 & -2T\end{bmatrix}$ with $T=\mathrm{diag}(\lambda)$, the dual constraint is exactly $M(\rho,T)\preceq0$ with $\alpha=0$, $\beta=1$. Weak duality is one line: for feasible $X$ and dual-feasible $(\rho,\lambda)$, $\langle G,X\rangle\le\langle\rho P-\sum_i\lambda_iQ_i,X\rangle\le\rho$. The dual is strictly feasible ($T=tI$ with $2t\gt\|W_1\|^2$ and $\rho$ large give $M\prec0$), so the two optimal values coincide (Slater, Module 2): the SDP relaxation value is exactly $\rho^\star$.

5. What Went Wrong With Coupled Multipliers

The NeurIPS 2019 version of LipSDP (arXiv v1) stated its Lemma 1 for a larger multiplier class than the diagonal one,

$$\mathcal T_n^{\rm v1}=\Big\{T=\sum_{i=1}^n\lambda_{ii}e_ie_i^{\top}+\sum_{1\le i\lt j\le n}\lambda_{ij}(e_i-e_j)(e_i-e_j)^{\top}:\ \lambda_{ij}\ge0\Big\},$$

on the grounds that all neurons apply the same function $\varphi$ ("repeated nonlinearities"). The resulting variant with $O(n^2)$ multipliers (at most a constant times $n^2$ for large $n$; see Primer 0, which also covers the other use, $O(\varepsilon^2)$ as $\varepsilon\to0$, in Section 6), LipSDP-Network, was presented as the most accurate one. It is wrong. Pauli, Koch, Berberich, Kohler & Allgöwer (arXiv May 2020; IEEE L-CSS 2022 and ACC 2021) gave two counterexamples, and the current arXiv version of LipSDP (v2, January 2023) states Lemma 1 and Theorems 1–2 for diagonal $T$ only and lists only LipSDP-Neuron and LipSDP-Layer.

What a coupling term asserts. For $\alpha=0$, $\beta=1$ the term $\lambda_{12}(e_1-e_2)(e_1-e_2)^{\top}$ contributes

$$2\lambda_{12}\Big[(\Delta v_1-\Delta v_2)(\Delta z_1-\Delta z_2)-(\Delta z_1-\Delta z_2)^2\Big]\ \ge\ 0 ,$$

i.e. it treats the pair $(\Delta v_1-\Delta v_2,\ \Delta z_1-\Delta z_2)$ as if it were a chord of $\varphi$ with slope in $[0,1]$. But

$$\Delta z_1-\Delta z_2=\big[\varphi(v_1)-\varphi(\bar v_1)\big]-\big[\varphi(v_2)-\varphi(\bar v_2)\big]$$

is a difference of two chords taken at different places of the graph (between $\bar v_1,v_1$ and between $\bar v_2,v_2$), and nothing constrains its ratio to $\Delta v_1-\Delta v_2$.

Counterexample 1 — the quadratic constraint itself fails (Pauli et al., Section II-C)
Take ReLU ($[\alpha,\beta]=[0,1]$), $n=2$, $T=(e_1-e_2)(e_1-e_2)^{\top}=\begin{bmatrix}1 & -1\\ -1 & 1\end{bmatrix}$ and the two pre-activation vectors $v=(0,1)$, $\bar v=(-1.5,0)$. Then
$$\Delta v=(1.5,\ 1),\qquad \Delta z=\mathrm{ReLU}(v)-\mathrm{ReLU}(\bar v)=(0,1)-(0,0)=(0,\ 1),$$
so $\Delta v_1-\Delta v_2=0.5$ and $\Delta z_1-\Delta z_2=-1$, and the quadratic form of the lemma is
$$\begin{bmatrix}\Delta v\\ \Delta z\end{bmatrix}^{\top}\begin{bmatrix}0 & T\\ T & -2T\end{bmatrix}\begin{bmatrix}\Delta v\\ \Delta z\end{bmatrix}=2(0.5)(-1)-2(-1)^2=-3\ \lt\ 0 .$$
The "chord" $(0.5,-1)$ has slope $-2$, impossible for a chord of the monotone ReLU. (The L-CSS paper prints the value $-2$; evaluating its stated numbers gives $-3$. The sign, and hence the conclusion, is the same.)
Counterexample 2 — a network certified with an arbitrarily small constant
One hidden layer, $n_0=m=1$, $n=2$, $\varphi=\tanh$ (slope-restricted on $[0,1]$), and
$$W_0=\begin{bmatrix}-1\\ -1\end{bmatrix},\quad b_0=\begin{bmatrix}-1\\ 1\end{bmatrix},\quad W_1=\begin{bmatrix}-1 & 1\end{bmatrix},\quad b_1=-0.5,$$
$$\begin{aligned}f(x)&=-\tanh(-x-1)+\tanh(-x+1)-0.5\\ &=\tanh(x+1)-\tanh(x-1)-0.5\end{aligned}$$
(using that $\tanh$ is odd). It fits $\cos x$ on $[-\pi/2,\pi/2]$ with maximum error $0.0843$. Its true constant is $L^\star=\max_x|\mathrm{sech}^2(x+1)-\mathrm{sech}^2(x-1)|\approx0.9335$, attained at $x\approx\pm1.061$; Pauli et al. argue $L^\star\approx1$ from the slope of the cosine it approximates. Now take $T=(e_1-e_2)(e_1-e_2)^{\top}$:
$$TW_0=\begin{bmatrix}1 & -1\\ -1 & 1\end{bmatrix}\begin{bmatrix}-1\\ -1\end{bmatrix}=0,\qquad W_1^{\top}W_1=\begin{bmatrix}1 & -1\\ -1 & 1\end{bmatrix}=T,$$
$$\Longrightarrow\qquad M(\rho,T)=\begin{bmatrix}-\rho & 0\\ 0 & -2T+T\end{bmatrix}=\mathrm{blkdiag}(-\rho,\,-T)\ \preceq\ 0$$
for every $\rho\gt0$ (its eigenvalues are $-\rho,-2,0$). The coupled LMI "certifies" $L=\sqrt\rho\to0$ for a cosine-shaped function. With diagonal multipliers, $T=I$ gives $M(1,I)=-\mathbf 1\mathbf 1^{\top}\preceq0$, so LipSDP-Neuron returns $L=1$; this matches the all-patterns bound $\max_{d\in[0,1]^2}|d_1-d_2|=1$ and is valid. The product bound is $2$.
Intuition — same weights, different biases
Both neurons have the same weight $-1$ and differ only in their bias. Hence $\Delta v_1=\Delta v_2$ for every pair of inputs, the first term of the coupling constraint vanishes, and what is left is $-2\lambda_{12}(\Delta z_1-\Delta z_2)^2\ge0$, i.e. the claim $\Delta z_1=\Delta z_2$. That would be true if the biases were equal, since the two neurons would then be identical. With different biases the two tanh's are evaluated at different points and their increments differ, and the output increment is exactly $\Delta f=\Delta z_2-\Delta z_1$, the quantity the false constraint declares to be zero. The "certificate" proves that $f$ is constant.

Where the proof broke. Version 1 proved the incremental lemma by fixing $x$ and applying a non-incremental repeated-nonlinearity lemma to the shifted map $\tilde\phi(x,\delta)=\phi(x+\delta)-\phi(x)$. Its $i$-th component is $\delta_i\mapsto\varphi(x_i+\delta_i)-\varphi(x_i)$. Each component is slope-restricted and vanishes at $\delta_i=0$, so the diagonal terms are fine. But component $i$ and component $j$ are different functions unless $x_i=x_j$, so the repeated-nonlinearity lemma does not apply to them. In the words of Wang & Manchester (ICML 2023, Remark A.2), who credit the explanation to Revay, Wang & Manchester (2020): the nonlinearities are repeated as functions of $v_i$, but their increments are not repeated as functions of $\Delta v_i$.

What survives. Coupling is legitimate whenever the two compared quantities really are a chord of one function. At a single input, $\big(v_i-v_j,\ \varphi(v_i)-\varphi(v_j)\big)$ is a genuine chord of $\varphi$ between the points $v_i$ and $v_j$, so for ReLU

$$2\lambda_{ij}\Big[(v_i-v_j)\big(\varphi(v_i)-\varphi(v_j)\big)-\big(\varphi(v_i)-\varphi(v_j)\big)^2\Big]\ \ge\ 0\qquad(\lambda_{ij}\ge0)$$

is valid. Such non-incremental repeated-nonlinearity terms are used, correctly, in DeepSDP (Fazlyab, Morari & Pappas, TAC 2022) and Reach-SDP (Hu, Fazlyab, Morari & Pappas, CDC 2020), where the input set is fixed and each constraint relates quantities at the same input, and in Appendix A.8 of LipSDP v2, which bounds $\|f(x)-f(y)\|\le\sqrt{\rho(y)}\|x-y\|$ for one fixed point $y$. Linear operations are also safe: in the 1-D CNN paper, average pooling admits full multiplier matrices while max pooling requires diagonal ones (Section 7).

Pitfall — coupled multipliers in incremental constraints
Never use a non-diagonal $T$ in an incremental QC for elementwise activations, i.e. in any global Lipschitz, incremental-gain or contraction certificate. Concretely:
  • Cite LipSDP by its arXiv v2 statement (diagonal $T$, Neuron and Layer only). The proceedings version still contains LipSDP-Network, and its bounds are not certificates.
  • Chordal-LipSDP (Xue et al., CDC 2022) has a sparsity parameter $\tau$ that adds exactly such couplings; its v2 footnote states that "only the ($\tau=0$) case will certify the Lipschitz constant".
  • Later papers restate the correction: SLL, ECLipsE (Remark 1), the ICLR 2024 GroupSort paper, GLipSDP and LipKernel all use diagonal multipliers for elementwise activations.
  • A tighter-looking number is not evidence. Here the invalid multiplier produced a bound below the true constant, and a sampled gradient norm ($\approx0.93$) exposes it immediately. Comparing every certified bound with a sampled lower bound is a cheap sanity check.

6. Training Under Lipschitz Constraints: ADMM and Barriers (Pauli et al.)

Estimating $L$ after training is passive: if the bound is bad, one can only retrain and hope. Pauli and co-authors turned the certificate into a training constraint, $\min_W\ \mathcal L(W)$ subject to "the LMI holds". Two obstacles have to be removed first: $M(\rho,T)$ is not affine in the weights ($W_1^{\top}W_1$ is quadratic and $TW_0$ is bilinear in the unknowns; see Primer B), and stochastic gradient descent (see Primer B) does not handle semidefinite constraints.

Making the certificate convex in the weights. Following Pauli et al. (L-CSS 2022), fix $T$, set $\alpha=0$, and take a Schur complement to move the last layer out of the quadratic term. For one hidden layer (their Remark 4, with $L^2$ in place of $\rho$):

$$M_{\rm tr}(L^2,W)=\begin{bmatrix}-L^2I & \beta W_0^{\top}T & 0\\ \beta TW_0 & -2T & W_1^{\top}\\ 0 & W_1 & -I\end{bmatrix}\ \preceq\ 0 .$$

Because the corner block $-I$ is negative definite, the Schur complement of Module 2 gives

$$\begin{aligned}M_{\rm tr}\preceq0\quad&\iff\quad\begin{bmatrix}-L^2I & \beta W_0^{\top}T\\ \beta TW_0 & -2T\end{bmatrix}-\begin{bmatrix}0\\ W_1^{\top}\end{bmatrix}(-I)^{-1}\begin{bmatrix}0 & W_1\end{bmatrix}\preceq0\\ &\iff\quad\begin{bmatrix}-L^2I & \beta W_0^{\top}T\\ \beta TW_0 & -2T+W_1^{\top}W_1\end{bmatrix}\preceq0,\end{aligned}$$

which is $M(L^2,T)$ with $\alpha=0$. Every entry of $M_{\rm tr}$ is affine in $(L^2,W_0,W_1)$, so for fixed $T$ the set of certified weights is convex. The multi-layer version (their eq. (7)) has the same form, with $[A;B]^{\top}\begin{bmatrix}0 & \beta T\\ \beta T & -2T\end{bmatrix}[A;B]$ in place of the first two block rows and the last layer moved into a $-I$ corner. Two choices make this work:

ADMM (L-CSS 2022). Duplicate the weights, $W=\bar W$, so that the loss sees $W$ and the certificate sees $\bar W$:

$$\min_{W,\bar W,L^2}\ \mathcal L(W)+\mu L^2+\iota\big(M_{\rm tr}(L^2,\bar W)\preceq0\big)\qquad\text{s.t.}\qquad W=\bar W,$$

where the indicator $\iota(\cdot)$ is $0$ when its condition holds and $+\infty$ otherwise, and $\mu\gt0$ trades accuracy against the bound. With the augmented Lagrangian (see Primer A) $\mathcal L_\eta=\mathcal L(W)+\mu L^2+\iota(\cdot)+\mathrm{tr}\big(Y^{\top}(W-\bar W)\big)+\tfrac\eta2\|W-\bar W\|_F^2$ (the paper calls the penalty $\rho$; we write $\eta$ because $\rho=L^2$ here), ADMM alternates a loss step (backpropagation), a Lipschitz step (an SDP) and a dual update:

$$\begin{aligned} W_{k+1}&=\arg\min_W\ \mathcal L(W)+\mathrm{tr}(Y_k^{\top}W)+\tfrac\eta2\|W-\bar W_k\|_F^2,\\ (L^2_{k+1},\bar W_{k+1})&=\arg\min_{L^2,\bar W}\ \mu L^2+\tfrac\eta2\big\|\bar W-(W_{k+1}+Y_k/\eta)\big\|_F^2\quad\text{s.t.}\quad M_{\rm tr}(L^2,\bar W)\preceq0,\\ Y_{k+1}&=Y_k+\eta\,(W_{k+1}-\bar W_{k+1}). \end{aligned}$$

Here $W$ stands for all layers $(W_0,\dots,W_l)$, which have different shapes: $\|W-\bar W\|_F^2=\sum_j\|W_j-\bar W_j\|_F^2$ and $\mathrm{tr}\big(Y^{\top}(W-\bar W)\big)=\sum_j\mathrm{tr}\big(Y_j^{\top}(W_j-\bar W_j)\big)$ with one dual matrix $Y_j$ per layer, while the subscript $k$ above counts iterations. The loss step is solved only approximately, by stochastic gradient steps. The Lipschitz step follows from completing the square, $\mathrm{tr}(Y^{\top}(W-\bar W))+\tfrac\eta2\|W-\bar W\|_F^2=\tfrac\eta2\|\bar W-W-Y/\eta\|_F^2-\tfrac1{2\eta}\|Y\|_F^2$. It projects $W_{k+1}+Y_k/\eta$ onto the set of weights with a certified bound, traded against $\mu L^2$. That set is described by an LMI in $\bar W$, not by $\bar W\succeq0$, so there is no eigenvalue-clipping shortcut: every iteration calls an SDP solver. To enforce a prescribed bound, drop $\mu L^2$ and fix $L=L_{\rm des}$. Their Theorem 6 then guarantees that $L_{\rm des}$ bounds the network with weights $\bar W$ at every iteration, because every $\bar W$ is produced by a feasible SDP. The guarantee is about $\bar W$, so $\bar W$ is the network to deploy. Convergence of ADMM is not guaranteed for the non-convex loss; each subproblem is well behaved (SGD for the first, a convex SDP with a unique minimiser for the second).

MNIST, $14\times14$ input, 50 tanh neurons (L-CSS Table I)Test accuracyCertified $L$Training time
Nominal$96.65\%$$96.6$$56.4$ s
L2-regularised$90.58\%$$9.49$$57.4$ s
Lipschitz-regularised (ADMM)$96.45\%$$8.74$$2566$ s

An eleven times smaller certified bound for $0.2$ percentage points of accuracy; weight decay reaches a similar bound only by giving up six points. The price is a factor of about $45$ in training time, and the SDP step dominates as the network grows.

Log-det barriers (CDC 2022). Pauli, Funcke, Gramlich, Msalmi & Allgöwer (CDC 2022) replace the SDP subproblem by an interior-point penalty that ordinary backpropagation can handle. They write the certificate in positive-definite form (the negative of $M_{\rm tr}$, with $\beta=1$ and $\Lambda$ for $T$). For one hidden layer:

$$N(\theta)=\begin{bmatrix}L^2I & -W_0^{\top}\Lambda & 0\\ -\Lambda W_0 & 2\Lambda & -W_1^{\top}\\ 0 & -W_1 & I\end{bmatrix}\ \succ\ 0,\qquad \min_{\theta}\ \mathcal L(f_\theta)-\mu\log\det N(\theta),$$

with barrier weight $\mu\gt0$ (their $\rho_j$), and the barrier set to $+\infty$ where $N\not\succ0$. As $\mu\to0$ the barrier vanishes at each fixed strictly feasible point, so optima on the boundary can be approached from inside; as $N$ approaches singularity, $-\log\det N\to+\infty$ and pushes the iterate back. A finite step can still jump across the boundary, which is why Algorithm 1 below tests every step.

Derivation — the gradient of the barrier

Step 1 (directional derivative of log det; see Primer B). For $N\succ0$ and a symmetric perturbation $E$, $\det(N+\varepsilon E)=\det N\cdot\det(I+\varepsilon N^{-1}E)$, and $\det(I+\varepsilon X)=\prod_i(1+\varepsilon\,\omega_i)=1+\varepsilon\,\mathrm{tr}X+O(\varepsilon^2)$ with $\omega_i$ the eigenvalues of $X$. Taking logarithms,

$$\log\det(N+\varepsilon E)=\log\det N+\varepsilon\,\mathrm{tr}(N^{-1}E)+O(\varepsilon^2)$$
$$\Longrightarrow\qquad \frac{\partial}{\partial x_i}\log\det N(x)=\mathrm{tr}\Big(N^{-1}\frac{\partial N}{\partial x_i}\Big).$$

Step 2 (apply to $W_0$). $W_0$ enters only the blocks $(2,1)$ and $(1,2)$: $dN_{21}=-\Lambda\,dW_0$ and $dN_{12}=-dW_0^{\top}\Lambda$. Writing $(N^{-1})_{ij}$ for the blocks of the inverse and using $(N^{-1})_{21}=(N^{-1})_{12}^{\top}$,

$$d\log\det N=\mathrm{tr}\big((N^{-1})_{12}(-\Lambda\,dW_0)\big)+\mathrm{tr}\big((N^{-1})_{21}(-dW_0^{\top}\Lambda)\big)=-2\,\mathrm{tr}\big((N^{-1})_{12}\Lambda\,dW_0\big).$$

Since $d\,g=\mathrm{tr}(G^{\top}dW_0)$ identifies the gradient $G$,

$$\begin{aligned}\nabla_{W_0}\log\det N&=-2\,\Lambda\,(N^{-1})_{21},\qquad \nabla_{W_1}\log\det N=-2\,(N^{-1})_{32},\\ \frac{\partial\log\det N}{\partial\lambda_i}&=2\big[(N^{-1})_{22}\big]_{ii}-2\big[W_0(N^{-1})_{12}\big]_{ii},\end{aligned}$$

the last two by the same computation. The training gradient is therefore $\nabla_{W_0}\mathcal L+2\mu\,\Lambda(N^{-1})_{21}$. All three formulas agree with finite differences to about $10^{-9}$ on random instances.

Step 3 (only a band of $N^{-1}$ is needed). Each $\partial N/\partial x_i$ is nonzero only inside the block-tridiagonal band, so only the band of $N^{-1}$ enters. Pauli et al. compute a block-bidiagonal Cholesky factor $\mathcal C$, $N=\mathcal C\mathcal C^{\top}$ (see Primer A), with diagonal blocks $D_k$ and subdiagonal blocks $R_k$ given by the recursion $D_0=\mathrm{chol}(L^2I)$, $D_k=\mathrm{chol}(2\Lambda_k-R_{k-1}R_{k-1}^{\top})$, $D_{l+1}=\mathrm{chol}(I-R_lR_l^{\top})$ and $R_k=-\big(D_k^{-1}W_k^{\top}\Lambda_{k+1}\big)^{\top}$ ($\Lambda_{l+1}=I$), so each $R_k$ uses the factor $D_k$ just computed. The band of the inverse then follows from a backward recursion (their Section III-B). Write $S_k$ for the diagonal blocks of $N^{-1}$ and $K_k$ for the blocks just below them. The identity $N^{-1}\mathcal C=\mathcal C^{-\top}$ has a block upper triangular right side with diagonal blocks $D_k^{-\top}$, so its block column $k$ reads $K_kD_k+S_{k+1}R_k=0$ in row $k+1$ and $S_kD_k+K_k^{\top}R_k=D_k^{-\top}$ in row $k$. Starting from $S_{l+1}=(D_{l+1}D_{l+1}^{\top})^{-1}$,

$$K_k=-S_{k+1}R_kD_k^{-1},\qquad S_k=(D_kD_k^{\top})^{-1}-K_k^{\top}R_kD_k^{-1}\qquad(k=l,\dots,0).$$

On random two-layer instances these blocks match a full inverse to rounding error. The whole computation costs $l+1$ layer-sized factorisations instead of one factorisation of the full matrix. The same Schur recursion reappears as ECLipsE in Section 9.

Background — Numerical evidence and certificates

Floating-point arithmetic rounds operations to finitely many digits. A tolerance is a chosen threshold for calling a residual "small"; a residual measures how closely computed values satisfy an equation or inequality. Neither is a proof by itself. For example, $\mathrm{diag}(1,-10^{-12})$ has tiny distance to the PSD cone but is not PSD.

Near a singular matrix, small rounding errors can change the sign of an eigenvalue. A validated check bounds these errors: if $N=\widehat{\mathcal C}\widehat{\mathcal C}^\top+E$ with rigorously bounded $\|E\|_2\le\eta$ and $\sigma_{\min}(\widehat{\mathcal C})^2\gt\eta$, then $N\succ0$. Finite-difference agreement checks a derivative implementation; a floating-point Cholesky success is useful evidence of feasibility. Rigorous certification additionally needs an error bound, for example from interval arithmetic.

Algorithm 1: Lipschitz-constrained training with a log-det barrier (after Pauli et al., CDC 2022)
  1. Choose the bound $L\gt0$, $\mu_0\gt0$ and positive diagonal multipliers (e.g. $\Lambda_k=I$); initialise with weights small enough that $N(\theta_0)\succ0$ // at zero weights $N=\mathrm{blkdiag}(L^2I,2\Lambda_1,\dots,2\Lambda_l,I)\succ0$, so small weights work by continuity; confirm with the Cholesky test
  2. for each mini-batch do
  3. block-Cholesky factorise $N(\theta)$; compute the band of $N^{-1}$
  4. $g\leftarrow\nabla_\theta\mathcal L-\mu\,\nabla_\theta\log\det N(\theta)$ // Step 2 of the derivation
  5. take a step $\theta^+=\theta-\eta_k g$ (e.g. Adam) // small, decreasing steps (Remark 8)
  6. if the Cholesky factorisation of $N(\theta^+)$ fails then shrink the step and retry // Cholesky exists iff $N\succ0$ (Lemma 7)
  7. periodically decrease $\mu$
  8. return $\theta$: every accepted iterate satisfies the certificate

Treating $\Lambda$ as fixed gives the "linear" barrier method (convex constraint); training it as well gives the "bilinear" one. The template is not limited to Lipschitz bounds. Their Theorem 4 certifies any incremental property

$$\begin{bmatrix}x_1-x_2\\ f_\theta(x_1)-f_\theta(x_2)\end{bmatrix}^{\top}\begin{bmatrix}Q & S\\ S^{\top} & R\end{bmatrix}\begin{bmatrix}x_1-x_2\\ f_\theta(x_1)-f_\theta(x_2)\end{bmatrix}\ge0\qquad\forall x_1,x_2$$

with an LMI of the same form. $Q=L^2I$, $S=0$, $R=-I$ is Lipschitz continuity; note that the vector is ordered (input, output) here, the reverse of the QSR convention in Module 2. Their Remark 5 points to closed-loop stability of feedback loops containing a network as another semidefinite constraint (see Module 14).

CDC 2022, Table I (2-D example, $L\le50$)mean certified $L$test accuracynormalised training time
nominal (no constraint)$10780$$0.868$$1$
projected gradient (SDP projection each step)$48.25$$0.902$$7.35$
ADMM (L-CSS)$46.08$$0.851$$78.72$
barrier, bilinear ($\Lambda$ trained)$43.94$$0.903$$1.15$
barrier, linear ($\Lambda$ fixed)$47.99$$0.904$$1.30$

On MNIST ($14\times14$ inputs, hidden layers of $100$ and $30$ tanh neurons, $L\le20$) the bilinear barrier method reached $98.2\%$ with mean bound $16.7$ at $1.74$ times the nominal training time, where ADMM needed $104.4$ times (normalised to its own framework). The same machinery trains Wasserstein-GAN critics with a hard 1-Lipschitz constraint. There, weight clipping kept the bound far below $1$ (overly conservative), while with a gradient penalty the estimated bound was far above $1$, which suggests that the constraint was violated.

Background — Wasserstein distance and why a GAN critic must be 1-Lipschitz

A GAN trains a generator to produce samples that resemble data. For distributions $P,Q$ on $\mathbb R^d$ with finite first moments, the Wasserstein-1 distance is the least expected transport distance, $\inf\mathbb E\|X-Y\|$ over all joint distributions of $(X,Y)$ with marginals $P$ and $Q$; for point masses at $0$ and $2$ on the line it equals $2$. A Wasserstein-GAN critic is a scalar network $f$ trained to maximise $\mathbb E f(X_{\rm data})-\mathbb E f(X_{\rm generated})$. If $f$ is 1-Lipschitz, then for every such joint distribution $\mathbb E f(X)-\mathbb E f(Y)=\mathbb E[f(X)-f(Y)]\le\mathbb E\|X-Y\|$, so the critic's objective is a lower bound on the Wasserstein distance; without the constraint the maximum is $+\infty$ whenever the two distributions differ (scale $f$ up), and the estimate is meaningless. This application is optional context; nothing else on the page uses it.

Connection to Module 13
The barrier and the Cholesky test keep every accepted iterate strictly inside the certified set. That set is convex in the weights when $\Lambda$ is fixed (the linear variant) but not jointly convex in the weights and $\Lambda$ when $\Lambda$ is trained (the bilinear variant; CDC 2022, Remark 6). The loss is non-convex in either case, so the method returns a certified network with no guarantee of global optimality. It also pays for a factorisation and a feasibility check at every step. Wang & Manchester (ICML 2023) removed the factorisation and the feasibility check for feedforward networks: their Theorem 3.1 states that a network with slope-$[0,1]$ activations satisfies the LipSDP-Neuron LMI for a prescribed bound $\gamma$ with some positive diagonal multiplier if and only if its weights are the image of an explicit smooth map of unconstrained parameters, built from 1-Lipschitz "Sandwich" layers (Theorem 3.2). This completeness concerns that certificate class, not every Lipschitz network. Training then becomes plain SGD, and no certificate can be violated. That is the direct-parameterisation route of Module 13, which Pauli followed with Cayley/Gramian layers for 1-D CNNs (Pauli, Wang, Manchester & Allgöwer, CDC 2023) and LipKernel for 2-D CNNs (Automatica 2026).

7. CNNs as Dynamical Systems: 1-D, Roesser and GLipSDP

A convolutional layer (see Primer E) acting on a signal of length $N$ can be unrolled into a Toeplitz matrix (see Primer A) and handed to LipSDP; the CDC 2022 paper did exactly this for its WGAN critic. The unrolled matrix has $cN$ rows, most of its entries are zero, LipSDP needs one multiplier per channel and position, and the resulting bound is valid only for that one input size. Control theory offers a better description: a convolution is a shift-invariant linear system, so it has a state-space realisation whose size depends on the channels and the kernel, not on $N$. Lipschitz estimation then becomes a dissipativity problem with a storage function (Module 2; Willems 1972).

Definition — A 1-D convolutional layer as an FIR system (Pauli, Gramlich & Allgöwer, L4DC 2023)
A layer with kernel $K_0,\dots,K_{\ell-1}\in\mathbb R^{c_{\rm out}\times c_{\rm in}}$ and zero padding maps $(u_k)_{k\ge0}$, $u_k\in\mathbb R^{c_{\rm in}}$, to
$$y_k=b+\sum_{j=0}^{\ell-1}K_j\,u_{k-j}\quad(u_{k-j}=0\text{ for }k-j\lt0),\qquad w_k=\phi(y_k).$$
This is a causal finite-impulse-response filter; the usual centred convolution becomes causal after an index shift. Storing the last $\ell-1$ inputs in the state $x_k=(u_{k-1},\dots,u_{k-\ell+1})\in\mathbb R^{(\ell-1)c_{\rm in}}$ gives
$$x_{k+1}=Ax_k+Bu_k,\qquad y_k=Cx_k+Du_k+b,$$
$$A=\begin{bmatrix}0 & & & \\ I & 0 & & \\ & \ddots & \ddots & \\ & & I & 0\end{bmatrix},\ \ B=\begin{bmatrix}I\\ 0\\ \vdots\\ 0\end{bmatrix},\ \ C=\begin{bmatrix}K_1 & \cdots & K_{\ell-1}\end{bmatrix},\ \ D=K_0 .$$
$A$ shifts the stored inputs down by one slot and is nilpotent ($A^{\ell-1}=0$). The state dimension $n_x=(\ell-1)c_{\rm in}$ does not depend on the signal length. The paper stores the delayed inputs in the opposite order, which gives a similar realisation (a permutation of the state). A numerical check with random kernels confirms that this realisation reproduces the convolution exactly.

Layer-wise incremental dissipativity. Run the layer on two input signals and write $\Delta$ for the differences. Give the layer an input weight $X_{\rm in}\succeq0$, an output weight $X_{\rm out}\succeq0$, a storage matrix $P\succeq0$ and a diagonal $\Lambda\succeq0$ for the activation. The layer LMI of the 1-D CNN paper (Corollary 10 there, written with $X=-\tilde Q$ and slopes $[0,1]$) is

$$\begin{bmatrix}P-A^{\top}PA & -A^{\top}PB & -C^{\top}\Lambda\\ -B^{\top}PA & X_{\rm in}-B^{\top}PB & -D^{\top}\Lambda\\ -\Lambda C & -\Lambda D & 2\Lambda-X_{\rm out}\end{bmatrix}\ \succeq\ 0 .$$
Derivation — why the layer LMI bounds the energy gain for every signal length

Step 1. Multiply the LMI from both sides by $(\Delta x_k,\Delta u_k,\Delta w_k)$. With $V(\Delta x)=\Delta x^{\top}P\Delta x$, $\Delta x_{k+1}=A\Delta x_k+B\Delta u_k$ and $\Delta y_k=C\Delta x_k+D\Delta u_k$ (the bias cancels), the quadratic form is

$$V(\Delta x_k)-V(\Delta x_{k+1})+\|\Delta u_k\|^2_{X_{\rm in}}-\|\Delta w_k\|^2_{X_{\rm out}}-\underbrace{\big(2\Delta w_k^{\top}\Lambda\Delta y_k-2\Delta w_k^{\top}\Lambda\Delta w_k\big)}_{\ge0\ \text{(slope QC of Section 3)}}\ \ge\ 0 .$$

Here $\|v\|_X^2:=v^{\top}Xv$. For $X\succ0$ its square root is a norm; for a singular $X\succeq0$ it is only a seminorm (it can vanish for $v\ne0$), which is all the telescoping below needs.

Step 2. Drop the nonnegative QC term to get the dissipation inequality $V(\Delta x_{k+1})-V(\Delta x_k)\le\|\Delta u_k\|^2_{X_{\rm in}}-\|\Delta w_k\|^2_{X_{\rm out}}$.

Step 3. Sum over $k=0,\dots,N-1$. The left side telescopes to $V(\Delta x_N)-V(\Delta x_0)=V(\Delta x_N)\ge0$, because zero padding means $\Delta x_0=0$. Hence

$$\sum_{k=0}^{N-1}\|\Delta w_k\|^2_{X_{\rm out}}\ \le\ \sum_{k=0}^{N-1}\|\Delta u_k\|^2_{X_{\rm in}}\qquad\text{for every }N .$$

Step 4. Chain the layers. Setting $X_{\rm in}$ of the first layer to $\gamma^2I$, the $X_{\rm out}$ of each layer to the $X_{\rm in}$ of the next, and requiring $X\succeq W_l^{\top}W_l$ before the linear output layer, the sums telescope across layers exactly as in LipKernel's cascade theorem (Module 2): $\sum_k\|\Delta\,\text{output}_k\|^2\le\gamma^2\sum_k\|\Delta u_k\|^2$. A numerical check (random kernel, $c_{\rm in}=2$, $c_{\rm out}=3$, $\ell=4$, a feasible $(P,\Lambda,X_{\rm in},X_{\rm out})$, $200$ random signal pairs) found the ratio of the two sums always below $1$, as the derivation requires. $\blacksquare$

Fully connected layers use the same chain with $A=B=C=0$, $D=W$: $\begin{bmatrix}X_{k-1} & -W^{\top}\Lambda\\ -\Lambda W & 2\Lambda-X_k\end{bmatrix}\succeq0$. Pooling layers need their own incremental QCs. The paper takes the stride equal to the window length $\ell$, so the windows do not overlap. Averaging over one window is then $1/\sqrt\ell$-Lipschitz (Proposition 7: the averaging row $\tfrac1\ell\mathbf 1^{\top}$ has norm $\sqrt\ell/\ell$), and so is the whole layer, which acts on disjoint windows: square the per-window bounds and add. Being linear, average pooling admits full multiplier matrices; max pooling, $1$-Lipschitz under the same assumption (per window, $|\max_ia_i-\max_ib_i|\le\max_i|a_i-b_i|\le\|a-b\|$), admits only diagonal ones, the same distinction as in Section 5. Overlapping windows need a bound on the whole pooling operator: averaging the adjacent pairs of $(u_1,u_2,u_3)$ is the matrix $\tfrac12\begin{bmatrix}1&1&0\\0&1&1\end{bmatrix}$, with norm $\sqrt3/2\gt1/\sqrt2$. For fully connected networks the layer-wise LMIs are equivalent to LipSDP (Remark 12, via chordal sparsity). For CNNs they are slightly more conservative than LipSDP on the unrolled network, but they hold for every input length and use multipliers of size $c$ instead of $cN$. In the experiments, LipSDP on the unrolled network was a little tighter for short signals, but its computation time grew quickly with the signal length, while the state-space SDP of a fully convolutional network does not grow at all. A fully connected head after flattening still sees all $c_pN_p$ features.

Two-dimensional convolutions. Images are indexed by two coordinates, so the natural state space is two-dimensional. Gramlich, Pauli, Scherer & Ebenbauer (Automatica 2026) represent a 2-D convolutional layer as a Roesser model

$$\begin{bmatrix}x_1(i_1{+}1,i_2)\\ x_2(i_1,i_2{+}1)\\ y(i_1,i_2)\end{bmatrix}=\begin{bmatrix}A_{11} & A_{12} & B_1\\ A_{21} & A_{22} & B_2\\ C_1 & C_2 & D\end{bmatrix}\begin{bmatrix}x_1(i_1,i_2)\\ x_2(i_1,i_2)\\ u(i_1,i_2)\end{bmatrix},$$

with a horizontal state $x_1$ and a vertical state $x_2$. A fully convolutional CNN is then a 2-D Lur'e system (see Primer D): a Roesser system in feedback with the activations. The dissipation inequality becomes $V_1(x_1(i_1{+}1,i_2))+V_2(x_2(i_1,i_2{+}1))\le V_1(x_1(i_1,i_2))+V_2(x_2(i_1,i_2))+s(u,y)$ with $V_j(x)=x^{\top}P_jx$. Summed over an image with zero initial states, the $V_1$ terms telescope along every row and the $V_2$ terms along every column; only nonnegative terms at the far edges remain, so the supply summed over the image is nonnegative. This yields an LMI in $(P_1,P_2)$ and a Lipschitz bound valid for images of any size. The arXiv version of the paper also lists Allgöwer as an author.

Theorem — Roesser realisation of a 2-D convolution (Pauli, Gramlich & Allgöwer, IFAC-PapersOnLine 2024, Theorems 1–2)
Setting. $y[i_1,i_2]=b+\sum_{t_1=0}^{r_1}\sum_{t_2=0}^{r_2}K[t_1,t_2]\,u[i_1-t_1,i_2-t_2]$ with $K[t_1,t_2]\in\mathbb R^{c_{\rm out}\times c_{\rm in}}$ (a kernel of size $(r_1{+}1)\times(r_2{+}1)$) and zero padding.
Statement. (Thm. 1) The layer has a Roesser realisation with $A_{21}=0$ and state dimensions $n_1=c_{\rm out}r_1$ and $n_2=c_{\rm in}r_2$; shift blocks $A_{11},A_{22}$ store delayed values and the kernel blocks fill $\begin{bmatrix}A_{12} & B_1\\ C_2 & D\end{bmatrix}$. (Thm. 2) If $c_{\rm in}=c_{\rm out}$ and $K[r_1,r_2]$ has full rank, then $n_1+n_2$ is the minimal state dimension among all realisations.
In words. A $3\times3$ convolution with $64$ channels in and out needs $n_1=n_2=128$ states, whatever the image size. The paper also treats dilated, strided and N-D convolutions.
Why the assumptions matter. Zero padding and the causal index convention are what make the realisation exact with zero initial states; a centred or circular convolution needs an index shift or a different boundary treatment. Equal channel numbers and a full-rank corner block $K[r_1,r_2]$ are what the minimality proof uses.
Caveat. The abstract writes $c_{\rm in}r_1+c_{\rm out}r_2$ states, which equals the theorem's total $c_{\rm out}r_1+c_{\rm in}r_2$ only when $c_{\rm in}=c_{\rm out}$ or $r_1=r_2$; quote the theorem. For $c_{\rm in}\ne c_{\rm out}$ the paper notes that the realisation may not be minimal and leaves minimal realisations for general channel sizes to future work.

GLipSDP: one LMI per layer, any architecture. Pauli, Gramlich & Allgöwer (arXiv 2405.01125, v2 2024; a preprint without a journal record so far) read the network itself as a time-varying system whose "time" is the layer index, $u_{k+1}=y_k=\mathcal L_k(u_k)$. The exact Lipschitz constant then satisfies a dynamic-programming recursion on value functions (see Primer D):

$$\begin{aligned}V_l(y^1,y^2)&=\|y^1-y^2\|^2,\qquad V_{k-1}(u^1,u^2)=V_k\big(\mathcal L_k(u^1),\mathcal L_k(u^2)\big),\\ L^{\star2}&=\min\big\{\gamma^2:\ V_0(u^1,u^2)\le\gamma^2\|u^1-u^2\|^2\ \ \forall u^1,u^2\big\}.\end{aligned}$$

Relax the equalities to inequalities $V_{k-1}\ge V_k\circ\mathcal L_k$, which still carry the output bound backwards, and the value functions to quadratics $V_k=\Delta^{\top}X_k\Delta$. The layer's QC and the S-procedure then turn each inequality into one LMI, $G_k(X_k,X_{k-1},\nu_k)\succeq0$, where $\nu_k$ collects the layer's other certificate variables (activation multipliers and, for state-space layers, storage matrices), and the bound comes from the SDP $\min\gamma^2$ s.t. $X_0=\gamma^2I$, $G_k\succeq0$, $X_l=I$. Lemmas supply $G_k$ for fully connected, 1-D/2-D/N-D convolutional (Roesser), state-space-model, residual, average and max pooling, slope-restricted and GroupSort layers. For GroupSort, $X_k$ is constrained to the group structure of Section 8 with $0\preceq X_k\preceq X_{k-1}$. Theorem 1 of the paper shows that for fully connected networks the layer-wise LMIs are equivalent to LipSDP, so the splitting adds no conservatism, and Remark 8 identifies them with LipSDP's chordal decomposition. The remaining sources of conservatism are the QCs themselves, structure restrictions on $X_k$, boundary effects of treating convolutions on infinite signals, and quadratic value functions. The authors report bounds tighter than LipLT and the weight-norm product on MNIST and CIFAR-10 CNNs and 18-layer ResNets, including networks for which LipSDP on the unrolled convolutions runs into memory issues.

Derivation — the layer-wise chain is LipSDP, and the product bound is one of its points

Fully connected network, slopes $[0,1]$, $T_k$ the multiplier of hidden layer $k$. The chain is

$$X_0=\rho I,\qquad G_k=\begin{bmatrix}X_{k-1} & -W_{k-1}^{\top}T_k\\ -T_kW_{k-1} & 2T_k-X_k\end{bmatrix}\succeq0\ \ (k=1,\dots,l),\qquad X_l\succeq W_l^{\top}W_l .$$

It certifies $L=\sqrt\rho$. Multiplying $G_k$ by $(\Delta z_{k-1},\Delta z_k)$ gives $\Delta z_{k-1}^{\top}X_{k-1}\Delta z_{k-1}-\Delta z_k^{\top}X_k\Delta z_k\ge2\Delta z_k^{\top}T_k\Delta v_k-2\Delta z_k^{\top}T_k\Delta z_k\ge0$, so the value $V_k=\Delta z_k^{\top}X_k\Delta z_k$ never increases through a layer. Then $\|\Delta f\|^2=\|W_l\Delta z_l\|^2\le V_l\le\dots\le V_0=\rho\|\Delta x\|^2$.

It is LipSDP. Place each $G_k$ in block rows and columns $(k-1,k)$ of an $(n_0+n)$-square matrix, place $X_l-W_l^{\top}W_l$ in the last diagonal block, and add. Each $X_k$ appears once with a plus sign (in $G_{k+1}$) and once with a minus sign (in $G_k$), so it cancels, and what remains is $-M(\rho,T)$ from Section 4. A sum of PSD matrices is PSD, so the chain implies LipSDP. Conversely, if $-M(\rho,T)\succ0$, the block-tridiagonal Schur recursion $X_k=2T_k-T_kW_{k-1}X_{k-1}^{-1}W_{k-1}^{\top}T_k$ produces a feasible chain (GLipSDP Theorem 1; ECLipsE Theorem 3). The recursion needs invertible $X_{k-1}$, which strict feasibility guarantees; for a singular $-M(\rho,T)\succeq0$ the chordal decomposition of Section 9 splits $-M$ into PSD blocks on consecutive layer pairs, and those blocks are a feasible chain.

The product bound is feasible. Take $T_k=t_kI$, $X_k=x_kI$ and $t_k=x_k=x_{k-1}/\|W_{k-1}\|^2$. By the Schur complement on the block $t_kI\succ0$, $G_k\succeq0\iff x_{k-1}I\succeq t_kW_{k-1}^{\top}W_{k-1}$, which holds with equality in the top eigen-direction. Hence $x_l=\rho/\prod_{k\lt l}\|W_k\|^2$, and the last condition $x_l\ge\|W_l\|^2$ reads $\rho\ge\prod_{k=0}^{l}\|W_k\|^2$. If some weight matrix is zero, run the same choice backwards, which never divides: $x_l=t_l=\|W_l\|^2$, $x_k=t_k=x_{k+1}\|W_k\|^2$ for $k=l-1,\dots,1$, and $\rho=x_1\|W_0\|^2$, again the product. Each $G_k$ is PSD: for $t_k\gt0$ its Schur complement is $x_{k-1}I-t_kW_{k-1}^{\top}W_{k-1}\succeq0$, and for $t_k=0$ it is $\mathrm{blkdiag}(x_{k-1}I,0)$. This completes the proof of the Proposition in Section 4. $\blacksquare$

Caveat — is the symbol the bound or its square?
LipSDP, the ICLR 2024 GroupSort paper and the page you are reading use $\rho=L^2$; Pauli et al.'s training papers write $L^2$ explicitly. The 1-D CNN paper and GLipSDP call the bound itself $\gamma$ (and GLipSDP's SDP (16) writes $\rho^2$ with $\rho=L$); LipKernel writes $\rho$ for $L$. ECLipsE uses $F$ with $L^2=1/F$, and the eigenvalue form of EP-LipSDP (Section 9) optimises a quantity whose optimum is $2L$. Before comparing numbers across papers, check which one you are looking at.

8. Beyond Slope Restriction: GroupSort, MaxMin, Householder

Many Lipschitz-by-design networks avoid elementwise activations. Anil, Lucas & Grosse (ICML 2019) showed that 2-norm-constrained networks with ReLU, tanh or sigmoid activations cannot even represent the absolute value function, because these activations cannot preserve the gradient norm. They proposed GroupSort: split the $n$ pre-activations into $N=n/n_g$ groups of size $n_g$ and sort each group. MaxMin is the case $n_g=2$, $(x_1,x_2)\mapsto(\max,\min)$. GroupSort is 1-Lipschitz, its Jacobian is a permutation matrix almost everywhere ("gradient norm preserving"), and with $\infty$-norm-constrained weights it gives universal approximators of Lipschitz functions; whether 2-norm-constrained GroupSort networks are universal was left open by Anil et al. (see Module 13). The Householder activation (see Primer A) applies, per group, $x\mapsto x$ if $v^{\top}x\gt0$ and $x\mapsto(I-2vv^{\top})x$ otherwise, with $\|v\|=1$ learnable; $v=(1,-1)/\sqrt2$ recovers MaxMin. None of these is elementwise, so assumption (A1) of LipSDP fails.

Theorem — Norm-constrained networks with elementwise activations (Anil, Lucas & Grosse 2019, Theorem 1)
Let $f:\mathbb R^{n_0}\to\mathbb R$ be a feedforward network whose weight matrices all satisfy $\|W\|_2\le1$ and whose activations are elementwise, monotone and 1-Lipschitz. If $\|\nabla f(x)\|_2=1$ almost everywhere, then $f$ is linear (affine, counting biases).
Consequence. Such a network cannot represent $|x|$, whose derivative is $\pm1$ at every $x\ne0$ but which is not affine. For ReLU layers the mechanism is visible: the gradient norm survives a layer only if every unit that affects the output is active, and then the network is linear.
Theorem — Universal approximation with GroupSort (Anil, Lucas & Grosse 2019, Theorem 3)
Let $X\subset\mathbb R^{n_0}$ be closed and bounded, with the $\ell_p$ metric. Consider fully connected networks with GroupSort activations of group size $2$ (MaxMin) whose first weight matrix has $\|W\|_{p,\infty}:=\sup_{\|x\|_p=1}\|Wx\|_\infty=1$ and whose other weight matrices have $\|W\|_\infty=1$ (largest absolute row sum). Then for every function $g:X\to\mathbb R$ that is 1-Lipschitz with respect to $\ell_p$ and every $\varepsilon\gt0$, some network $f$ of this class has $\sup_{x\in X}|f(x)-g(x)|\lt\varepsilon$.
In words. An existence result: width and depth may grow as $\varepsilon\to0$, and nothing says that training finds the network. The constraints are $\infty$-norm constraints; for spectral-norm constraints the question was left open.

Why the obvious workaround fails. MaxMin is a residual ReLU network,

$$\mathrm{MaxMin}(x)=\begin{bmatrix}x_2+\mathrm{ReLU}(x_1-x_2)\\ x_2-\mathrm{ReLU}(x_2-x_1)\end{bmatrix}=Hx+G\,\mathrm{ReLU}(Wx),$$
$$H=\begin{bmatrix}0 & 1\\ 0 & 1\end{bmatrix},\qquad G=\begin{bmatrix}1 & 0\\ 0 & -1\end{bmatrix},\qquad W=\begin{bmatrix}1 & -1\\ -1 & 1\end{bmatrix},$$

so LipSDP applies to it. Pauli, Havens, Araujo, Garg, Khorrami, Allgöwer & Hu (ICLR 2024) show that the resulting SDP returns $\rho=2$: it certifies $\sqrt2$ for a map that is exactly 1-Lipschitz. The reason is the impossible-pattern cost from Section 2 in its purest form. The two ReLUs receive $u$ and $-u$ and can never be active together, but the slope QC allows $D=I$, for which the Jacobian is $H+GW=\begin{bmatrix}1 & 0\\ 1 & 0\end{bmatrix}$ with norm $\sqrt2$. What is needed is a constraint that describes the group as a whole.

Derivation — the residual LipSDP for MaxMin gives exactly $\rho=2$

For $f(x)=Hx+G\phi(Wx)$ the goal $\|H\Delta x+G\Delta z\|^2\le\rho\|\Delta x\|^2$ is a quadratic form in $\xi=(\Delta x,\Delta z)$, and the ReLU QC acts on $(\Delta v,\Delta z)=\mathrm{blkdiag}(W,I)\,\xi$. Steps 1–4 of Section 4 give the LMI

$$\begin{bmatrix}H^{\top}H-\rho I & H^{\top}G+W^{\top}T\\ G^{\top}H+TW & G^{\top}G-2T\end{bmatrix}\preceq0 .$$

Upper bound. With $T=I$: $G^{\top}G-2T=-I$, $H^{\top}H=\mathrm{diag}(0,2)$ and $H^{\top}G+W^{\top}=\begin{bmatrix}1 & -1\\ 0 & 0\end{bmatrix}=:B$, so by the Schur complement the LMI holds iff $H^{\top}H+BB^{\top}=2I\preceq\rho I$, i.e. iff $\rho\ge2$. Lower bound. Any feasible $(\rho,T)$ also certifies the linear map for the pattern $D=I$ (as in the Proposition of Section 4), whose Jacobian $H+GW$ has norm $\sqrt2$, so $\rho\ge2$. Hence the optimum is $\rho=2$.

Lemma — A quadratic constraint for GroupSort (Pauli et al., ICLR 2024, Lemma 1)
Let $\phi:\mathbb R^n\to\mathbb R^n$ be GroupSort with group size $n_g$ and $N=n/n_g$ groups. For all $\lambda\in\mathbb R^N_{+}$ and all $\gamma,\nu,\tau\in\mathbb R^N$ (no sign constraint), and all $x,y\in\mathbb R^n$,
$$\begin{bmatrix}x-y\\ \phi(x)-\phi(y)\end{bmatrix}^{\top}\begin{bmatrix}T-2S & P+S\\ P+S & -T-2P\end{bmatrix}\begin{bmatrix}x-y\\ \phi(x)-\phi(y)\end{bmatrix}\ \ge\ 0,$$

The grouped matrices use the Kronecker product (see Primer A):

$$\begin{aligned}T&=\mathrm{diag}(\lambda)\otimes I_{n_g}+\mathrm{diag}(\gamma)\otimes\mathbf 1\mathbf 1^{\top},\\ P&=\mathrm{diag}(\nu)\otimes\mathbf 1\mathbf 1^{\top},\qquad S=\mathrm{diag}(\tau)\otimes\mathbf 1\mathbf 1^{\top}.\end{aligned}$$

For two groups of size two, $\mathrm{diag}(\lambda_1,\lambda_2)\otimes I_2=\mathrm{blkdiag}(\lambda_1I_2,\lambda_2I_2)$. Likewise $\mathrm{diag}(\gamma)\otimes\mathbf1\mathbf1^\top$ places one block $\gamma_i\begin{bmatrix}1&1\\1&1\end{bmatrix}$ on each group. More generally, $A\otimes B$ replaces each scalar entry $A_{ij}$ by the block $A_{ij}B$.

Lemma 2 of the paper is the Householder analogue, with $\mathbf 1\mathbf 1^{\top}$ replaced by $\Pi=I_{n_g}-vv^{\top}$. The reason: writing a group as $x=\Pi x+av$ with $a=v^{\top}x$, the Householder activation is $\Pi x+|a|v$, so $\Pi\Delta\phi=\Pi\Delta x$ (the analogue of sum preservation, making $\Delta x^{\top}\Pi\Delta x$, $\Delta x^{\top}\Pi\Delta\phi$ and $\Delta\phi^{\top}\Pi\Delta\phi$ equal), and $\big||a|-|b|\big|\le|a-b|$ gives the norm fact. (Symbols as in the paper: this $T$ is block diagonal rather than diagonal, and $\gamma,\nu,\tau$ are multipliers, unrelated to GLipSDP's bound $\gamma$.)
In words. Each group contributes two facts. It is 1-Lipschitz (multiplier $\lambda_i\ge0$), and it preserves the sum of its entries (multipliers $\gamma_i,\nu_i,\tau_i$ of either sign, because an equality can be added with any sign).
Why the assumptions matter. $\lambda_i\ge0$ is needed because the norm fact is an inequality; a negative weight would flip it. The Kronecker structure must match the groups actually sorted: each group's sum is preserved, but a sum over entries that straddle a group boundary is not, and the norm fact holds group by group. The displayed block-diagonal family is sufficient, not the only valid choice. Because every group sum is preserved, $\Delta x^{\top}(\Gamma\otimes\mathbf 1\mathbf 1^{\top})\Delta x=\Delta\phi^{\top}(\Gamma\otimes\mathbf 1\mathbf 1^{\top})\Delta\phi$ for every symmetric $\Gamma\in\mathbb S^N$, so extra equality terms may couple the group sums. Arbitrary couplings of individual neurons in different groups are not justified by these two facts.
Proof sketch — sum preservation kills three of the four multipliers

Write $\Delta x=x-y$, $\Delta\phi=\phi(x)-\phi(y)$, $\Delta x_{(i)}$ for the entries of group $i$, and $E_i=(e_ie_i^{\top})\otimes\mathbf 1\mathbf 1^{\top}$, so $\xi^{\top}E_i\eta=(\mathbf 1^{\top}\xi_{(i)})(\mathbf 1^{\top}\eta_{(i)})$.

Step 1 (sum preservation). Sorting permutes the entries of a group, so $\mathbf 1^{\top}\phi(x)_{(i)}=\mathbf 1^{\top}x_{(i)}$ and hence $\mathbf 1^{\top}\Delta\phi_{(i)}=\mathbf 1^{\top}\Delta x_{(i)}=:\sigma_i$. Therefore

$$\Delta x^{\top}E_i\Delta x=\Delta\phi^{\top}E_i\Delta\phi=\Delta x^{\top}E_i\Delta\phi=\sigma_i^2 .$$

Step 2 (expand the form). The form equals $\Delta x^{\top}(T-2S)\Delta x+2\Delta x^{\top}(P+S)\Delta\phi-\Delta\phi^{\top}(T+2P)\Delta\phi$. Collect terms per multiplier and use Step 1:

$$\begin{aligned} \gamma_i:&\quad \sigma_i^2-\sigma_i^2=0, &\qquad \nu_i:&\quad 2\sigma_i^2-2\sigma_i^2=0,\\ \tau_i:&\quad -2\sigma_i^2+2\sigma_i^2=0, &\qquad \lambda_i:&\quad \|\Delta x_{(i)}\|^2-\|\Delta\phi_{(i)}\|^2 . \end{aligned}$$

Step 3 (1-Lipschitz groups). The form reduces to $\sum_i\lambda_i\big(\|\Delta x_{(i)}\|^2-\|\Delta\phi_{(i)}\|^2\big)$, which is $\ge0$ because sorting is 1-Lipschitz. For $n_g=2$ this is a two-line check. If $a$ and $b$ are in the same order, sorting applies the same permutation to both and the distance is unchanged. If $a_1\ge a_2$ but $b_1\le b_2$, then $\|a-b\|^2-\|\phi(a)-\phi(b)\|^2=(a_1-b_1)^2+(a_2-b_2)^2-(a_1-b_2)^2-(a_2-b_1)^2=2(a_1-a_2)(b_2-b_1)\ge0$. For a larger group, permute the coordinates of both vectors so that $a$ is sorted, which changes neither the distance nor the sorted vectors. While two entries of $b$ are in the opposite order to the corresponding entries of $a$, swap them: by the two-entry computation this does not increase $\|a-b\|^2$. Finitely many swaps sort $b$, so $\|\phi(a)-\phi(b)\|\le\|a-b\|$. $\blacksquare$

A numerical test with $n_g\in\{2,3,4\}$, $3000$ random pairs and random multipliers ($\gamma,\nu,\tau$ of both signs) gave a minimum value of $-3\cdot10^{-13}$, i.e. zero up to rounding.

LipSDP-NSR. Replacing the slope multiplier $\begin{bmatrix}0 & T\\ T & -2T\end{bmatrix}$ by $\begin{bmatrix}T-2S & P+S\\ P+S & -T-2P\end{bmatrix}$ in the LipSDP matrix of Section 4 gives the paper's Theorem 1: if $M(\rho,P,S,T)\preceq0$, the GroupSort (or Householder) network is $\sqrt\rho$-Lipschitz. In practice the authors set $S=P=0$, which in their tests gave the same bounds. For one hidden layer, $f(x)=W_1\phi(W_0x+b_0)+b_1$, the matrix then becomes block diagonal,

$$\begin{aligned}&\begin{bmatrix}W_0^{\top}TW_0-\rho I & 0\\ 0 & -T+W_1^{\top}W_1\end{bmatrix}\preceq0\\ \iff\ &W_1^{\top}W_1\preceq T\quad\text{and}\quad \rho\ge\lambda_{\max}\big(W_0^{\top}TW_0\big).\end{aligned}$$

This is a weighted product bound: $T=\|W_1\|^2I$ recovers $\|W_0\|^2\|W_1\|^2$, and a better $T$ within the group structure gives less. For MaxMin alone ($W_0=W_1=I$), $T=I$ gives $\rho=1$, the correct constant that the residual-ReLU route missed. The multipliers $\gamma_i$ are a free adjustment along $\mathbf 1$ inside each group: sum preservation makes input and output agree in that direction, so weight placed there costs nothing.

MaxMin MLP on MNIST (ICLR 2024, Table 1)sampled (lower)all permutations (FGL)LipSDP-NSRLipSDP on residual ReLUweight product
2 layers, 16 units$20.98$$22.02$$22.59$$23.92$$23.46$
5 layers, 32 units$106.35$—$224.53$$388.0$$298.41$
8 layers, 32 units$113.34$—$401.03$$1078.5$$780$
18 layers, 32 units$267.32$—$17432$—$73405$

FGL ("formal global Lipschitz") is the largest Jacobian norm over all combinations of within-group sorting permutations, including combinations that no input realises; it is an upper bound, computable only for small networks, while the sampled column is a lower bound, so the true constant lies between the two.

These networks were trained with $\ell_2$ adversarial training (see Primer E) and reach more than $96\%$ accuracy. Three observations. The residual-ReLU route can be worse than the naive product: the both-active pattern it cannot exclude costs up to a factor $\sqrt2$ at each MaxMin. The group-level constraint beats the product at every depth. And the gap between certified upper bounds and the sampled lower bound grows with depth, to a factor of about $65$ at 18 layers; Section 9 explains why no polynomial-time method can be expected to close it in general. The paper also extends the constraint to residual networks (generalising the residual LipSDP condition behind SLL layers; Araujo et al., ICLR 2023), to implicit models, to $\ell_\infty\to\ell_1$ bounds and, via the state-space view, to CNNs. GLipSDP uses the same structure: for a GroupSort layer it restricts $X_k$ to the group form and requires $0\preceq X_k\preceq X_{k-1}$.

Why it matters
If the weights of a GroupSort network are orthogonal, the network is exactly 1-Lipschitz and there is nothing to estimate. Estimation matters for the many MaxMin networks trained without weight constraints, and for mixed architectures. The general lesson carries over to any structured activation: write down every input–output fact it satisfies (norm bounds as inequalities, conservation laws as equalities with free-sign multipliers) and let the SDP combine them.

9. Scalable Variants and Hardness Results

A generic SDP solver treats $M(\rho,T)$ as a dense matrix. That is what limits the plain method to a few thousand neurons (Section 4). Every scalable variant exploits the block-tridiagonal structure, and each one is exact in a precise sense or loses something identifiable.

Going deeper — what an SDP costs, and why LipSDP is well posed

A semidefinite program in LMI form, $\min_y c^{\top}y$ s.t. $F_0+\sum_{i=1}^my_iF_i\preceq0$ with $N\times N$ matrices, has the conic dual $\max_{Z\succeq0}\ \langle F_0,Z\rangle$ s.t. $\langle F_i,Z\rangle=-c_i$. Weak duality always holds. Strong duality holds, with the dual optimum attained, under Slater's condition, i.e. a strictly feasible point (Module 2). LipSDP has one. In the chain of Section 7 take $T_k=t_kI$, $X_k=x_kI$, $x_0=\rho$ and $x_k=t_k=x_{k-1}/(c\|W_{k-1}\|^2)$ with $c\gt1$ (use any positive number in place of a zero norm). The Schur complement of $t_kI$ in $G_k$ is then $x_{k-1}I-t_kW_{k-1}^{\top}W_{k-1}\succeq x_{k-1}(1-1/c)I\succ0$, so every $G_k\succ0$; the last condition $x_l\gt\|W_l\|^2$ holds for every $\rho\gt c^{\,l}\prod_k\|W_k\|^2$, and summing the blocks as in Section 7 gives $M(\rho,T)\prec0$. So solvers return a primal certificate $(\rho,T)$ together with a dual matrix $Z$, the Shor lifting of Section 4. By the self-concordance theory of Nesterov and Nemirovskii, interior-point methods need a number of Newton iterations that grows at most like $\sqrt N\log(1/\varepsilon)$, and in practice a few tens (surveyed, together with how solvers exploit problem structure, in Boyd, El Ghaoui, Feron & Balakrishnan 1994, Ch. 2). Each iteration, however, forms and factors an $m\times m$ Newton system; the standard dense count is about $O(mN^3+m^2N^2+m^3)$ operations and $O(m^2+N^2)$ memory. For LipSDP-Neuron $N=n_0+n$ and $m=n+1$, so a dense Newton step grows like the fourth power of the number of neurons. The measured times grow more slowly but still steeply: from $5.2$ s at $500$ neurons to $735$ s at $3000$, a factor of about $140$ for six times the width (a dense fourth-power law would predict about $1300$; presumably the solver exploits the sparse constraint data when it forms the Newton system, even though its matrix variables stay dense).

Chordal decomposition. Xue, Lindemann, Robey, Hassani, Pappas & Alur (CDC 2022) use a chordal block sparsity pattern containing all nonzeros of $M(\rho,T)$, with maximal cliques given by pairs of consecutive layers, and the decomposition theorem below. Chordal-LipSDP replaces the one large LMI by one small LMI per clique and is equivalent to LipSDP (their Theorem 3); on deep networks it is much faster. Its tunable sparsity parameter $\tau\gt0$ adds neuron couplings and is invalid after Section 5; only $\tau=0$ certifies. The layer-wise chain of Section 7 (1-D CNN paper, Remark 12; GLipSDP, Remark 8) is exactly this decomposition, with the clique blocks written as value functions $X_k$.

Background — graphs, cliques and chordal sparsity

A graph has vertices joined by edges. A symmetric $N\times N$ matrix gets one vertex per coordinate and an edge for every off-diagonal position that is allowed to be nonzero (allowed entries may happen to vanish). A clique is a set of pairwise joined vertices; it is maximal if no vertex can be added. A graph is chordal if every cycle through four or more distinct vertices has a chord, an edge between two vertices that are not neighbours on the cycle. For LipSDP, join two coordinates when they lie in the same layer block or in adjacent ones: this block path is chordal, and its maximal cliques are the pairs of consecutive layers. With three scalar blocks the path $0$–$1$–$2$ has maximal cliques $\{0,1\}$ and $\{1,2\}$; the selection matrix $E_{\{1,2\}}=\begin{bmatrix}0&1&0\\0&0&1\end{bmatrix}$ picks the last two coordinates, and $E^{\top}ZE$ places a $2\times2$ matrix $Z$ in those rows and columns.

Theorem — Chordal decomposition of a semidefinite matrix (Xue et al. 2022, Lemma 1)
Let a graph on the coordinates $1,\dots,N$ be chordal with maximal cliques $\mathcal C_1,\dots,\mathcal C_s$, and let $M$ be symmetric with $M_{ij}=0$ for every off-diagonal pair $(i,j)$ that is not an edge. With $E_{\mathcal C_k}$ the matrix selecting the coordinates in $\mathcal C_k$,
$$M\preceq0\quad\Longleftrightarrow\quad M=\sum_{k=1}^{s}E_{\mathcal C_k}^{\top}Z_kE_{\mathcal C_k}\quad\text{for some symmetric }Z_k\preceq0 .$$
In words. Singular $M$ are included. "$\Leftarrow$" is immediate, since a sum of negative semidefinite terms is negative semidefinite; chordality is what makes "$\Rightarrow$" true, with no relaxation. The blocks $Z_k$ split the diagonal entries shared by overlapping cliques, so they are in general not the principal submatrices of $M$. Xue et al. quote this classical result (their Lemma 1) and apply it with the consecutive-layer cliques at sparsity parameter $\tau=0$.

ECLipsE: eliminate the value functions in closed form. In the chain of Section 7, the largest admissible $X_k$ for given multipliers is the Schur complement $X_k=2T_k-T_kW_{k-1}X_{k-1}^{-1}W_{k-1}^{\top}T_k$, and a larger $X_k$ only makes the next layer's LMI easier. Xu & Sivaranjani (NeurIPS 2024) run this recursion forward. Normalising $X_k=\rho M_k$ and $T_k=\rho\Lambda_k/2$ turns it into their recursion, in our indexing

$$\begin{aligned}M_0&=I,\qquad M_k=\Lambda_k-\tfrac14\Lambda_kW_{k-1}M_{k-1}^{-1}W_{k-1}^{\top}\Lambda_k\ \ (k=1,\dots,l),\\ L^2&=\frac1F=\lambda_{\max}\big(W_l^{\top}W_lM_l^{-1}\big).\end{aligned}$$

Their Theorem 3 states that, for slopes in $[0,1]$ and given diagonal $\Lambda_k$, the strict LipSDP certificate holds if and only if every $M_k\succ0$ and $M_l-FW_l^{\top}W_l\succ0$. So the decomposition itself is exact, and the only approximation is how the $\Lambda_k$ are chosen: one layer at a time instead of jointly. ECLipsE picks $\Lambda_k$ by a small SDP of layer size that looks one layer ahead. ECLipsE-Fast uses $\Lambda_k=\lambda_kI$ with the closed form $\lambda_k=2/\lambda_{\max}\big(W_{k-1}M_{k-1}^{-1}W_{k-1}^{\top}\big)$ and needs no SDP at all. The authors report speed-ups of up to several thousand times on deep networks with estimates comparable to LipSDP; ECLipsE-Fast is a feasible point of LipSDP-Layer, hence never below it. On the walkthrough network, ECLipsE-Fast gives $\lambda_1=1/4$ and $L\approx3.02$, between LipSDP ($2.31$) and the product ($4$). The same Schur recursion is the block Cholesky factorisation of Pauli et al.'s barrier method (Section 6).

Derivation — why $L^2=\lambda_{\max}\big(W_l^{\top}W_lM_l^{-1}\big)$

The last condition of the chain, $X_l\succeq W_l^{\top}W_l$, reads $\rho M_l\succeq W_l^{\top}W_l$. For $M_l\succ0$ it is equivalent, by a congruence with $M_l^{-1/2}$ (see Primer A), to $\rho I\succeq M_l^{-1/2}W_l^\top W_lM_l^{-1/2}$. Therefore the smallest non-strict bound is the largest eigenvalue of this symmetric PSD matrix. It has the same eigenvalues as $W_l^\top W_lM_l^{-1}$ by similarity. Strict feasibility requires $\rho$ strictly larger than this value; the displayed equality is the limiting boundary bound.

EP-LipSDP: an eigenvalue problem for first-order methods. Wang, Hu, Havens, Araujo, Zheng, Chen & Jha (ICLR 2024) move the LMI into the objective. The naive penalty $\zeta+c\,\lambda_{\max}^+(\cdot)$ is exact only if $c$ is large enough, and for LipSDP it was not known how large. Their trick is a redundant constraint. Slope restriction and $\|\Delta x\|\le1$ imply $\Delta z_i^2\le\|w_i\|^2=:a_i$ ($w_i^{\top}$ the $i$-th row of $W_0$), which gives the Shor relaxation an explicit trace bound $1+\|\Delta x\|^2+\|\Delta z\|^2\le2+\sum_ja_j$. With a trace bound, the penalty weight equal to that bound is exact. For a scalar-output one-hidden-layer network $f(x)=v^{\top}\phi(W_0x+b_0)+b_1$ with slopes in $[0,1]$:

$$C(\zeta,\lambda,\tau,\gamma)=\begin{bmatrix}\sum_ja_j\lambda_j+\gamma-\zeta & 0 & v^{\top}\\ 0 & -\gamma I & W_0^{\top}\mathrm{diag}(\tau)\\ v & \mathrm{diag}(\tau)W_0 & -2\,\mathrm{diag}(\tau)-\mathrm{diag}(\lambda)\end{bmatrix},$$
$$\min_{\zeta,\lambda,\tau,\gamma\ge0}\ \zeta+\Big(2+\sum_{j=1}^na_j\Big)\,\lambda^+_{\max}\big(C(\zeta,\lambda,\tau,\gamma)\big),\qquad\lambda^+_{\max}=\max(0,\lambda_{\max}).$$

The letters are the paper's: $\mathrm{diag}(\tau)$ is the slope multiplier ($T$ of Section 4), $\lambda$ multiplies the redundant constraints $\Delta z_i^2\le a_i$ and $\gamma$ the constraint $\|\Delta x\|^2\le1$; neither is the $\lambda_i$ of $T$ or GLipSDP's bound $\gamma$. Their Theorem 1: the optimal value equals that of the SDP with the redundant constraints and equals $2\sqrt{\rho^\star}$, twice the LipSDP bound. The problem has only sign constraints, so subgradient or bundle methods with autodiff and a Lanczos routine for $\lambda_{\max}$ apply. The implementation, LipDiff, scaled SDP-based Lipschitz estimation to networks on ImageNet, far beyond the memory limits of interior-point solvers. Theorem 2 of the paper covers multi-layer networks.

Fact — Why a trace bound makes the penalty exact (standard argument, derived here)
Let $p^\star=\max\{\langle H,Y\rangle:\ \mathcal A(Y)=b,\ Y\succeq0\}$ be an SDP whose feasible matrices all satisfy $\mathrm{tr}\,Y\le R$, and assume strong duality: $p^\star$ equals the dual value $\min\{b^{\top}y:\ \mathcal A^*y-H\succeq0\}$, where the adjoint is defined by $\langle\mathcal A^*y,Y\rangle=y^{\top}\mathcal A(Y)$. Then
$$p^\star=\inf_y\Big[\,b^{\top}y+R\,\lambda^+_{\max}\big(H-\mathcal A^*y\big)\Big].$$
Proof. Fix $y$ and a feasible $Y$ and put $C=H-\mathcal A^*y$. Then $\langle H,Y\rangle=b^{\top}y+\langle C,Y\rangle$, and since $\lambda_{\max}(C)I-C\succeq0$ and $Y\succeq0$, $\langle C,Y\rangle\le\lambda_{\max}(C)\,\mathrm{tr}\,Y\le R\,\lambda^+_{\max}(C)$. So every bracket is at least $p^\star$. A dual-feasible $y$ has $\lambda_{\max}(C)\le0$, so its bracket is just $b^{\top}y$, and the infimum of those is the dual value $p^\star$. $\blacksquare$ Inequality constraints work the same way with sign-constrained multipliers. In EP-LipSDP the lifted matrix of $(1,\Delta x,\Delta z)$ has trace at most $R=2+\sum_ja_j$ by the redundant constraints, and the $v$ blocks of the objective give $2v^{\top}\Delta z$, which is why the optimal value is twice the Lipschitz bound. The penalty removes no conservatism: it has the same optimum as the SDP it came from.
Background — eigenvalue subgradients, Lanczos and Jacobi

These are standard linear-algebra facts, not results of the EP-LipSDP paper. For symmetric $C$ with a unit top eigenvector $u$, $\lambda_{\max}(C+E)\ge u^{\top}(C+E)u=\lambda_{\max}(C)+u^{\top}Eu$ for every symmetric $E$ (Rayleigh quotient). So $uu^{\top}$ is a subgradient of the convex function $\lambda_{\max}$, and if the top eigenvalue is simple, $\partial_\theta\lambda_{\max}(C(\theta))=u^{\top}(\partial_\theta C)u$; this is what automatic differentiation computes, and a bundle method keeps several such supporting planes. The Lanczos method estimates $\lambda_{\max}$ from the span of $v,Cv,C^2v,\dots$ using only products $x\mapsto Cx$, which is why the sparse band of $C$ helps; in exact arithmetic its estimate is a Rayleigh quotient, never above $\lambda_{\max}$, so a penalty evaluated with it can come out too small. The explorer's Jacobi method rotates $C$ until $Q^{\top}CQ$ is nearly diagonal with diagonal $D$; if $\|C-QDQ^{\top}\|_2\le\eta$, then $|\lambda_{\max}(C)-\max_iD_{ii}|\le\eta$ (Weyl's inequality), so a rigorous bound on the residual $\eta$ turns the computed value into a certified one.

Cheaper ingredients. The product bound itself can be improved per layer: for convolutions, Gram iteration gives fast, differentiable and certified upper bounds on the spectral norm (Delattre, Barthélemy, Araujo & Allauzen, ICML 2023). For local certificates around one input, SDP-CROWN imports SDP-style coupling between neurons into bound propagation (Chiu, Chen, Zhang & Zhang, ICML 2025; see Module 15). Bound propagation pushes guaranteed enclosures of every neuron's possible values, for one specified input set, through the network layer by layer; SDP-CROWN tightens those enclosures on $\ell_2$ balls. These are per-input certificates and play no role in the global LipSDP derivation.

Theorem — Gram iteration (Delattre, Barthélemy, Araujo & Allauzen 2023, Theorem 3)
For a matrix $W$ with singular values $\sigma_i$, set $A_0=W$ and $A_{k+1}=A_k^{\top}A_k$, so $A_k$ has singular values $\sigma_i^{2^k}$. Then for every $k\ge0$
$$\|W\|_2\ \le\ b_k:=\|A_k\|_F^{1/2^k}=\Big(\sum_i\sigma_i^{2^{k+1}}\Big)^{1/2^{k+1}}\ \xrightarrow[k\to\infty]{}\ \|W\|_2,$$
If the largest singular value is simple ($\sigma_1\gt\sigma_2$), the convergence is superlinear, of order almost $2$, as in the paper's Appendix proof. The upper bound and convergence hold without that gap, but the rate can be linear: for $W=I_2$, $b_k=2^{1/2^{k+1}}$ and $(b_{k+1}-1)/(b_k-1)\to1/2$. A rank-one matrix is already exact.
In words. $b_k$ is the $\ell_{2^{k+1}}$ norm of the vector of singular values, which shrinks towards its largest entry as the exponent grows: for singular values $3$ and $1$, $b_0=\sqrt{10}\approx3.162$, $b_1=82^{1/4}\approx3.009$, $b_2\approx3.00006$. Unlike power iteration, which approaches $\|W\|_2$ from below, every $b_k$ is an upper bound, so it can enter a certificate. Implementations rescale $A_k$ at every step to avoid overflow and must undo the rescaling exactly; for circular convolutions the iteration runs on the small blocks of the Fourier-domain block diagonalisation, and the largest of their bounds is taken.
MethodWhat is solvedRelation to LipSDP-NeuronReach
Product $\prod_k\|W_k\|$exact spectral norms, or certified upper bounds on them (e.g. Gram iteration); a finite power iteration only underestimates each normupper bound, never tighterany size
SeqLipSVD blocks, pattern enumerationexact version $\ge$ all-patterns value (equal for one hidden layer, then never looser than LipSDP, at exponential cost); greedy version not certifiedsmall layers
LipSDP-Neuron / -Layerdense SDPreference / looserthousands of neurons
Chordal-LipSDP ($\tau=0$)clique LMIsequivalentdeep networks
1-D CNN SDP, GLipSDPlayer-wise value functionsequivalent for fully connected; conv via state spaceCNNs, ResNets, any input size
ECLipsE / ECLipsE-FastSchur recursion; layer SDPs / closed formexact for given $\Lambda$; greedy $\Lambda$ (Fast: $\ge$ Layer)very deep
EP-LipSDP (LipDiff)exact-penalty eigenvalue problemsame optimum, first-order solverImageNet-scale
LipSDP-NSRGroupSort / Householder QCsreplaces the slope QCas LipSDP

What no polynomial-time method can do. Exact computation of $L^\star$ is NP-hard already for one hidden layer (Section 2). Kuang, Xu, Sivaranjani & Lin (arXiv 2603.28113, v2 May 2026) locate the difficulty. Estimating a network's Lipschitz constant requires knowing which hidden states are reachable, and reachability is NP-hard. Through explicit constructions they show that this blindness can force SDP-based bounds to inherit the qualitative failures of the product bound, including polynomial conservatism per layer (box below). They argue that the difficulty afflicts every instance of the verification problem, not only worst-case reductions, so SDP is not sufficient: their Theorem 2.7 (assuming P $\ne$ NP) gives every ReLU network with more than three hidden layers a twin of width one larger that either computes the same function or has an arbitrarily large Lipschitz constant, depending on an infinitesimal change of two biases, and that no polynomial-time verifier can tell apart from the original. Read it carefully: it says that each network has a hard-to-distinguish twin, not that computing $L^\star(f)$ is hard for each fixed $f$. They also argue SDP is not necessary: several failures of the product bound come from removable parameterisation pathologies, which optimising or regularising the product bound itself can mitigate, and for a new bias-free trigonometric layer $x\mapsto A\cos(Wx)+B\sin(Wx)$ with $W$ of full row rank the product bound is tight up to a factor $\sqrt2\,\kappa(W)$, the condition number (their Theorem 3.1). This page has shown the mechanism several times: the slope QC forgets which patterns occur together (Section 3); the certificate ignores the biases that decide reachability (Section 4); MaxMin's $u$ and $-u$ pair (Section 8); and the growing gap in the 18-layer table.

Theorem — Bias blindness costs a factor growing with the width (Kuang et al. 2026, Theorem 2.5)
For ReLU and for tanh there are one-hidden-layer networks $f_b(x)=W_1\varphi(W_0x+b)$, $\mathbb R\to\mathbb R^d\to\mathbb R$, with fixed weights, whose product bound is $\Omega(d)$ and whose true constant ranges from $O(1)$ to $\Omega(d)$ as only the biases vary. The ReLU construction of their proof is $f_b(x)=\sum_{i=1}^d(-1)^i\,\mathrm{ReLU}(x+b_i)$, i.e. $W_0=\mathbf 1$ and $W_1=(-1,1,-1,\dots)$. With $b_i=i$ the neurons active at any $x$ form a tail $\{k,\dots,d\}$, whose alternating signs sum to $-1$, $0$ or $1$, so $L^\star=1$. With $b=(1,-1,1,-1,\dots)$ exactly the odd-indexed neurons are active on $(-1,1)$, so $L^\star\ge\lceil d/2\rceil$.
Consequence. Any bound computed from the weights alone, LipSDP and the product bound $\|W_0\|\|W_1\|=d$ included, must be at least $\lceil d/2\rceil$ for both bias vectors, i.e. at least $\lceil d/2\rceil$ times the true constant of the first network. This is an existence result for specific families, not a statement about every trained network.
Caveat — reading the hardness results correctly
NP-hardness is a worst-case statement about exact computation, or about reachability, under P $\ne$ NP. It does not say that LipSDP is loose on the networks you train: on small networks it is often within a few percent of the exact value (the walkthrough network: $3\%$), and in Table 1 of the ICLR paper LipSDP-NSR is only $2$–$3\%$ above FGL for the two 2-layer networks (16 and 32 units) where FGL was computed. FGL enumerates all permutation patterns, infeasible ones included, so it is itself an upper bound; the exact constant lies between the sampled value and FGL. What hardness does say is that no polynomial-time relaxation can be tight on all networks. It does not say where a particular gap comes from, and LipSDP loses tightness in two identifiable ways. It discards reachability information (the biases, and which patterns can occur together), and its S-procedure step, the Shor relaxation of Section 4, can be loose even when every pattern is reachable. The walkthrough network shows the second: all four patterns occur, yet LipSDP gives $4/\sqrt3\approx2.309$ against $L^\star=\sqrt5\approx2.236$. Kuang et al. is a preprint whose v2 changed scope ("reduced scope, new theorems on NP-hardness"); check the version before quoting a specific theorem. Finally, a sampled gradient norm is only a lower bound. The explorer below shows how sampling can miss a thin region where the network is steepest.

Walkthrough: LipSDP for One Hidden Layer

The derivation of Section 4, carried out by hand for the network $f(x)=W_1\mathrm{ReLU}(W_0x+b_0)+b_1$ with $W_0=\begin{bmatrix}1 & 2\\ 1 & -2\end{bmatrix}$ and $W_1=\begin{bmatrix}1 & 1\end{bmatrix}$ (any biases), from the neuron constraints to the optimal multiplier and a comparison with the product bound and the true constant.

Interactive: Naive vs LipSDP vs Empirical

A 2-3-1 ReLU network with Gaussian weights and biases (see Primer C) from a seeded generator. For the same network the explorer computes six numbers. The product bound uses spectral norms from a Jacobi eigen-solver. LipSDP-Layer and LipSDP-Neuron are approximated numerically on the $5\times5$ LMI by an interior-point method: the log-det barrier of Section 6, minimised by Newton steps while $\mu\to0$ (Section 6 uses gradient steps because it trains the weights). The numerical LipSDP value is a point where $-M(\rho,T)\succ0$ passes a Cholesky test. The all-patterns bound is the largest $\|W_1DW_0\|$ over all eight $0/1$ patterns. The enumerated global estimate of $L^\star$ is the largest gradient over the patterns that some input realises, found by solving one small linear program per pattern (see Primer B). The sampled lower bound is the largest gradient norm at $4000$ random inputs in the square $[-3,3]^2$. The slider $\kappa$ blends neuron 3 into the negative of neuron 1 (weights, bias and output weight); at $\kappa=1$ the pair computes a linear function, like $\mathrm{ReLU}(u)-\mathrm{ReLU}(-u)$ in Section 2.

All six numbers are floating-point computations. In exact arithmetic any feasible $(\rho,T)$ is an upper bound and enumerating the full-dimensional patterns gives $L^\star$ exactly; here the barrier stops at a finite tolerance and the Cholesky test and the pattern LPs run with rounding and thresholds, so the labels say "numerical" and "estimate". A rigorous certificate would need validated arithmetic (background box in Section 6). If a Cholesky check fails, the explorer says so instead of labelling the number a bound.

Background — how the explorer tests whether a pattern occurs

For a pattern $d$ put $s_i=2d_i-1$, so $s_i=+1$ for an active neuron. The pattern occurs on an open set of inputs if and only if some $x$ and $r\gt0$ satisfy $s_i(w_i^{\top}x+b_i)\ge r\,\|w_i\|$ for every neuron, a linear program in $(x,r)$. The explorer maximises $r$ subject to these constraints, $r\le1$ and a box around all intersection points of the boundary lines (so the LP is bounded and every region meets the box), by checking the vertices of the feasible set, and counts the pattern as realised when the optimum exceeds a small tolerance. Very thin regions or nearly parallel boundaries can be misclassified in floating point. The square $[-3,3]^2$ is only the display and sampling domain, not the domain of $L^\star$.

Naive vs LipSDP vs Empirical

Left: $\|\nabla f(x)\|$ on $[-3,3]^2$. Each region between the neuron boundaries $w_i^{\top}x+b_i=0$ (coloured lines) has one activation pattern and one constant gradient, printed in the region; darker is steeper. Right: the six numbers. Numerical upper-bound estimates are drawn solid, the enumerated global estimate green, the sampled lower bound orange.

What to look for. (1) With $\kappa=0$ LipSDP-Neuron equals the all-patterns bound for $280$ of the first $300$ seeds, and the largest relaxation gap among the rest is $3.4\%$. The product bound is typically $24$–$86\%$ above $L^\star$ (quartiles over the same seeds, see Primer C; median $45\%$): LipSDP removes the alignment cost. (2) "Walkthrough network" loads the example above: product $4$, LipSDP $2.309$, $L^\star=\sqrt5\approx2.236$. The small gap between LipSDP and the all-patterns bound is the relaxation gap of the S-procedure step, and LipSDP-Layer equals LipSDP-Neuron by the symmetry argument of Step 6, to the digits shown. The explorer pads the network with a third neuron that has output weight $0$ and input row $(0.01,0)$. LipSDP-Neuron gives it multiplier $0$, but the shared Layer multiplier cannot, which raises LipSDP-Layer by about $5\cdot10^{-6}$. (3) Move $\kappa$ to $1$. At exactly $\kappa=1$ neurons 1 and 3 can no longer be active together; for $80\%$ of the seeds $L^\star$ drops by more than $10\%$ between $\kappa=0.99$ and $\kappa=1$ (median drop $34\%$), while the all-patterns bound and both LipSDP bounds, which depend continuously on the weights, change much less: the median change is below $0.7\%$, all three stay within $1\%$ for $191$ of the $300$ seeds, and the largest change is $6.5\%$. This is the impossible-pattern cost that no bias-independent certificate can avoid (Section 4). For $\kappa$ slightly below $1$ the both-active region still exists as a thin wedge. The enumerated value counts it, and sampling often misses it: at $\kappa=0.99$ the sampled value reaches $L^\star$ for only $64\%$ of the seeds. (4) Lower the scale $s$. The product, both LipSDP bounds, the all-patterns bound and $L^\star$ scale like $s^2$, so their ratios do not change: the biases are not scaled, so $f_s(x)=s\,f_1(sx)$ and $\nabla f_s(x)=s^2\nabla f_1(sx)$. The sampled value does not scale like $s^2$, because the square stays fixed while the boundaries move away from the origin relative to it, so sampling sees fewer regions: at $s=0.4$ it reaches $L^\star$ for $68\%$ of the seeds, against $85\%$ at $s=1$.

Why can $L^\star$ jump at $\kappa=1$ although $f$ changes continuously at every input? $L^\star$ is a supremum over all inputs, including distant ones. For $\kappa\lt1$ the steep both-active region can be a thin wedge, or lie far away, and still determine that supremum; at $\kappa=1$ its two boundaries coincide, the region loses its interior and its Jacobian no longer counts. Sampling in one fixed square can miss the region long before it disappears.

From the mathematics to a real decision

Learning objectives

A commissioning decision

A learned module corrects the enclosure temperature prediction from two normalized sensor features $x=(x_1,x_2)$. Features are dimensionless and the physical correction is $c(x)=2f(x)$ degrees Celsius, where

$$f(x)=\tfrac12\operatorname{ReLU}(x_1+2x_2)+\tfrac12\operatorname{ReLU}(x_1-2x_2).$$

Assume the deployed module is exactly this real-valued function, including the factor 2, and the normalized sensor error satisfies $\|\Delta x\|_2\le0.04$. Floating-point and quantization error are excluded for now. The downstream controller has reserved 0.10 degrees for the change in this correction caused by sensor error. The decision is whether the learned module meets that component budget.

The weight matrices are $W_0=\left[\begin{smallmatrix}1&2\\1&-2\end{smallmatrix}\right]$ and $W_1=(1/2,1/2)$. Their spectral norms are $2\sqrt2$ and $1/\sqrt2$, so the usual product upper bound is 2 for $f$. It would bound the physical correction change by $2(2)(0.04)=0.16$ degrees, which fails the reserved budget. A failed sufficient bound does not establish a faulty network.

Worked decision, with its limits

Propose a valid multiplier. ReLU is slope-restricted in $[0,1]$. Choose the diagonal nonnegative matrix $T=I/3$ and squared sensitivity $\rho=4/3$. The one-hidden-layer LipSDP matrix becomes

$$M=\begin{bmatrix}-4/3&0&1/3&1/3\\0&-4/3&2/3&-2/3\\1/3&2/3&-5/12&1/4\\1/3&-2/3&1/4&-5/12\end{bmatrix}.$$

Verify its sign. Rotate the hidden coordinates to their normalized sum and difference. The matrix separates into two blocks: $\left[\begin{smallmatrix}-4/3&\sqrt2/3\\\sqrt2/3&-1/6\end{smallmatrix}\right]$ and $\left[\begin{smallmatrix}-4/3&2\sqrt2/3\\2\sqrt2/3&-2/3\end{smallmatrix}\right]$. Each has determinant zero and negative trace. Thus the eigenvalues of $M$ are $-1.5,-2,0,0$, establishing negative semidefiniteness exactly, rather than relying only on a solver status.

Spend the physical budget. The certificate gives $L\le\sqrt{4/3}\approx1.154701$ for $f$. Consequently $|c(x+\Delta x)-c(x)|\le2\sqrt{4/3}(0.04)\approx0.092376$ degrees. The module passes the 0.10-degree allowance, leaving about 0.007624 degrees of certified slack.

Compare with the actual piecewise-linear map. The four activation patterns have gradients $(0,0)$, $(1/2,1)$, $(1/2,-1)$, and $(1,0)$. Each occurs on a nonempty region, so the exact global Lipschitz constant is $\sqrt5/2\approx1.118034$. The SDP bound is slightly larger. Its usefulness is that it establishes a sufficient inequality; it need not recover the sharp constant to approve this component.

The approved statement concerns sensitivity of a function. A thermal trajectory still needs the plant model, an action limit, and an invariant-set or other closed-loop argument. A small correction change does not bound the correction's absolute value, nor does it ensure the nominal temperature prediction is accurate. Those quantities require their own budgets.

A tempting wrong approach

Common mistake — A large sample becomes an upper bound

Sampling sensor inputs and recording the largest observed gradient produces a lower estimate of the worst possible gradient, not a certificate. Rare activation regions may be missed. The exact pattern calculation works here because there are only two hidden neurons and their regions can be checked. Its computational convenience should not be generalized to arbitrary large networks.

Transfer the argument

Exercise 12.B1 — Medium: Return to physical sensor errors

Suppose $x_1=(T-40)/10$ and $x_2=(d-0.5)/0.1$, with $T$ in degrees Celsius and distance $d$ in metres. Hardware errors satisfy $|\Delta T|\le0.2$ degrees and $|\Delta d|\le0.002$ metres. Find the correction-error bound. Does a tighter allowance of 0.06 degrees pass?

Review: Sensitivity and certified radii.

Show hint

Transform the sensor-error box into normalized coordinates and bound its Euclidean radius.

Show worked solution

Both normalized coordinate errors are at most 0.02, so the radius is $\sqrt{2}(0.02)\approx0.028284$. This SDP certificate bounds physical correction error by $2\sqrt{4/3}\sqrt2(0.02)\approx0.065320$ degrees, so it cannot approve the tighter 0.06-degree allowance. That does not establish a physical violation. In fact, the physical correction's regional gradients are $(0,0),(1,2),(1,-2),(2,0)$. Their largest $\ell_1$ norm is 3, giving exact box error at most $3(0.02)=0.06$ degrees, attained within a one-active region. Thus an exact box analysis passes the non-strict allowance. Scaling both hardware-error bounds by at most $0.06/0.065320\approx0.918559$ would instead make the original SDP certificate sufficient. Treating the numerical metre and temperature errors as coordinates in one unscaled Euclidean norm would misrepresent the preprocessing.

Exercise 12.B2 — Hard: Audit an attractive coupled multiplier

A colleague proposes $T=\left[\begin{smallmatrix}1&-1\\-1&1\end{smallmatrix}\right]$ because it is positive semidefinite. Test whether the incremental ReLU inequality $2\Delta z^\top T(\Delta v-\Delta z)\ge0$ holds for $v=(2,-2)$ and $\bar v=(1,-3)$. Explain the consequence for a resulting sensitivity certificate.

Review: The incremental multiplier restriction.

Show hint

Compute each ReLU output before forming its increment. Positive semidefiniteness of $T$ alone is not the admissibility condition.

Show worked solution

The preactivation increment is $\Delta v=(1,1)$, while ReLU outputs are $(2,0)$ and $(1,0)$, giving $\Delta z=(1,0)$. Thus $\Delta v-\Delta z=(0,1)$ and the quadratic expression is $2(1,0)T(0,1)^\top=-2$. The claimed constraint fails even though $T$ has eigenvalues 0 and 2. An LMI derived using it would not imply a valid incremental bound. The diagonal nonnegative multiplier restriction protects the sum of separate scalar inequalities; admissible non-incremental verification multipliers answer a different question.

Synthesis and bridge

A network certificate becomes useful when connected to a physical sensitivity allowance and its preprocessing map. The chain here is explicit: normalized error radius, certified network gain, physical output scaling, and downstream slack. Each arrow can invalidate the final number if it is silently omitted.

The next chapter changes the order of operations. Instead of training an arbitrary network and seeking a certificate afterward, a constrained architecture makes a sensitivity budget structural. That can simplify this commissioning calculation, while still leaving units, numerical implementation, and closed-loop consequences to be checked.

Exercises

Readiness check

Explain why the output bound is a square root, why a sampled norm is a lower bound, and why a PSD multiplier can still be invalid. Then try the scalar certificate before the deep-network derivation.

If this is difficult, revisit the earlier prerequisite, work the Easy questions, and return to the linked section. You can postpone the advanced extensions while building confidence with the core certificate.

Graded practice: build the calculation, then audit the claim

These twelve new questions each include an independent hint and a fully worked solution. The difficulty measures the amount of reasoning, not the amount of notation. The original research exercises follow below.

Easy: read definitions and compute

Easy 1 — A radius in two norms

A logit map with input domain $\mathbb R^3$ has certified Euclidean Lipschitz bound $L=2$ and positive margin $m=0.6$. Compute the strict Euclidean robustness radius and a sufficient $\ell_\infty$ radius. Does equality at either radius certify the label?

Review if needed: Primer A: norm comparisons and dual norms; this module's relevant section.

Hint

First divide by $\sqrt2L$, then use $\|\delta\|_2\le\sqrt3\|\delta\|_\infty$.

Worked solution

Step 1. The difference of two logits has Lipschitz bound $\sqrt2L$, so the margin stays positive whenever $0.6-2\sqrt2\|\delta\|_2\gt0$. Solving gives $r_2=0.6/(2\sqrt2)\approx0.212132$.

Step 2. An infinity-norm perturbation of size $r_\infty$ can have Euclidean norm $\sqrt3r_\infty$. Thus $r_\infty=r_2/\sqrt3=0.6/(2\sqrt6)\approx0.122474$ is sufficient, with a strict inequality.

Step 3. At equality the lower bound on a margin is zero. A tie may change the label, so these rules certify open balls unless a suitable tie convention is separately justified.

Easy 2 — Which direction does a product bound pay for?

Let $W_0=\operatorname{diag}(3,1)$ and $W_1=[0\ \ 2]$, with zero biases and ReLU between them. Compute the product bound and the exact Lipschitz constant of $f(x)=W_1\operatorname{ReLU}(W_0x)$.

Review if needed: Primer A: spectral norms and products; this module's relevant section.

Hint

Write the scalar output explicitly before multiplying norms.

Worked solution

Step 1. The largest singular value of $W_0$ is $3$, and the Euclidean norm of the row $W_1$ is $2$. The product bound is therefore $6$.

Step 2. The first hidden coordinate is multiplied by zero at the output. Consequently $f(x)=2\operatorname{ReLU}(x_2)$, whose slope in the second coordinate is either $0$ or $2$.

Step 3. ReLU is 1-Lipschitz, so $|f(x)-f(y)|\le2|x_2-y_2|\le2\|x-y\|_2$. Equality occurs for two distinct inputs with positive second coordinate and equal first coordinate. Thus $L^\star=2$; the product paid for an unused direction.

Easy 3 — Read a scalar quadratic constraint

For slope bounds $[0,1]$, evaluate $q(u,w)=2w(u-w)$ at $(u,w)=(2,1),(2,3),(2,-1)$. Which pairs could be increments of a slope-restricted function?

Review if needed: Primer 0: inequalities and proof steps; this module's relevant section.

Hint

For $u\ne0$, the chord slope is $w/u$.

Worked solution

Step 1. The three values are $2(1)(2-1)=2$, $2(3)(2-3)=-6$, and $2(-1)(2+1)=-6$.

Step 2. The first pair has slope $1/2$, which belongs to $[0,1]$. The other slopes are $3/2$ and $-1/2$, which violate the upper bound and monotonicity respectively.

Step 3. For a single increment pair the nonnegative QC is equivalent to the allowed slope interval. It does not determine which activation or basepoints produced the pair.

Easy 4 — The bound or its square?

A valid LipSDP certificate returns $\rho=9/4$. What bound does it certify? A sampled gradient has norm $1.6$. Can both computations be correct for this same network and norm?

Review if needed: Primer A: norm comparisons and dual norms; this module's relevant section.

Hint

The performance inequality compares squared norms.

Worked solution

Step 1. LipSDP proves $\|\Delta f\|^2\le\rho\|\Delta x\|^2$. Taking nonnegative square roots gives $L=\sqrt{9/4}=3/2=1.5$.

Step 2. At a differentiability point a gradient or Jacobian norm of $1.6$ gives the lower bound $L^\star\ge1.6$. The certificate would give $L^\star\le1.5$.

Step 3. These statements contradict each other. Recheck the matrix feasibility, the multiplier assumptions, the gradient calculation, preprocessing and the norm convention. Sampling alone cannot validate an upper bound, but it can refute one.

Medium: connect two or three steps

Medium 1 — A complete scalar LipSDP certificate

For $f(x)=2\operatorname{ReLU}(3x+b)$, substitute $T=4$ and $\rho=36$ in the one-hidden-layer LMI. Factor the resulting matrix to prove feasibility. Is the bound tight for any finite $b$?

Review if needed: Primer A: quadratic forms and PSD order; this module's relevant section.

Hint

For $[0,1]$ slopes, the matrix is $[ -\rho,\ 3T;\ 3T,\ -2T+4]$.

Worked solution

Step 1. Substitution gives $M=\begin{bmatrix}-36&12\\12&-4\end{bmatrix}=-4\begin{bmatrix}3\\-1\end{bmatrix}\begin{bmatrix}3&-1\end{bmatrix}$.

Step 2. For every vector $\xi$, $\xi^\top M\xi=-4(3\xi_1-\xi_2)^2\le0$. Also $T=4\ge0$, so all certificate conditions hold and $L\le\sqrt{36}=6$.

Step 3. When $x\gt-b/3$, the neuron is active and $f(x)=6x+2b$. Two distinct inputs in this half-line attain difference ratio $6$. Hence $L^\star=6$ for every finite bias.

Medium 2 — Add neuron constraints with valid weights

Take $u=(2,-2)$, $w=(1,-1/2)$ and diagonal $T=\operatorname{diag}(3,2)$. Evaluate $2w^\top T(u-w)$. Explain why allowing a negative diagonal entry would invalidate the general argument.

Review if needed: Primer 0: inequalities and proof steps; this module's relevant section.

Hint

Evaluate one channel at a time; nonnegative sums preserve inequalities.

Worked solution

Step 1. The channel contributions are $2\cdot3\cdot1\cdot(2-1)=6$ and $2\cdot2\cdot(-1/2)\cdot(-2+1/2)=3$, so the total is $9$.

Step 2. The slopes are $1/2$ and $1/4$, both in $[0,1]$. Each unweighted scalar QC is nonnegative; multiplying by $3$ and $2$ and summing preserves that sign.

Step 3. A negative multiplier reverses the inequality for a channel. For instance the first channel alone with weight $-1$ gives $-2$. Diagonal structure supplies valid individual constraints, and nonnegative weights preserve them.

Medium 3 — A loop transformation can see cancellation

Let $W_0=[1\ \ -1]^\top$, $W_1=[1\ \ 1]$ and $f(x)=W_1\operatorname{ReLU}(W_0x)$. Compare the product bound with $U=\tfrac12\|W_1W_0\|+\tfrac12\|W_1\|\|W_0\|$. Find the exact constant.

Review if needed: Primer A: spectral norms and products; this module's relevant section.

Hint

Use $\operatorname{ReLU}(x)+\operatorname{ReLU}(-x)=|x|$.

Worked solution

Step 1. Both weight norms equal $\sqrt2$, so the product is $2$. But $W_1W_0=1-1=0$, giving $U=0+\tfrac12\cdot2=1$.

Step 2. The loop transformation writes ReLU as $t/2+r(t)$ with $r$ having slopes in $[-1/2,1/2]$. The linear term cancels in this network; only the half-Lipschitz remainder contributes.

Step 3. The actual output is $|x|$. The reverse triangle inequality gives $||x|-|y||\le|x-y|$, and equality holds for distinct positive inputs. Thus $L^\star=1$ and the transformed bound is tight.

Medium 4 — Read a chain of weighted gains

Two scalar layers are $z_1=1.5x$ and $z_2=2z_1$, with output $f=z_2$. Use $X_0=9,X_1=4,X_2=1$ to check the layer inequalities $X_k(\Delta z_k)^2\le X_{k-1}(\Delta z_{k-1})^2$ and recover the total gain.

Review if needed: Primer A: quadratic forms and PSD order; this module's relevant section.

Hint

Compare weighted squared increments rather than ordinary layer norms.

Worked solution

Step 1. The first layer gives $4(1.5\Delta x)^2=9(\Delta x)^2$. The second gives $(2\Delta z_1)^2=4(\Delta z_1)^2$. Both inequalities hold with equality.

Step 2. Chaining them yields $|\Delta f|^2\le X_0|\Delta x|^2=9|\Delta x|^2$, so the certified gain is $3$.

Step 3. The composite map is $f(x)=3x$, which attains gain $3$. Intermediate storage matrices can carry unequal coordinate scales; they are not themselves Euclidean layer Lipschitz constants.

Hard: combine calculations with assumptions

Hard 1 — Bias blindness on two reachable-pattern sets

Compare $f_0(x)=\operatorname{ReLU}(x)-\operatorname{ReLU}(-x)$ with $f_1(x)=\operatorname{ReLU}(x+1)-\operatorname{ReLU}(-x+1)$. Find their piecewise slopes and exact constants. What lower limit does this put on a weight-only bound shared by both?

Review if needed: Primer B: derivatives and directional slopes; this module's relevant section.

Hint

Place all kinks on the number line; the middle interval matters.

Worked solution

Step 1. For $f_0$, one neuron is active on each side of zero and $f_0(x)=x$ everywhere. Its slope is $1$ away from the kink and $L^\star(f_0)=1$.

Step 2. For $f_1$, the slopes are $1$ for $x\lt-1$, $2$ for $-1\lt x\lt1$, and $1$ for $x\gt1$. The functions agree continuously at the kinks, so the maximum slope magnitude gives $L^\star(f_1)=2$.

Step 3. The two networks have identical weight matrices. A bound that does not use biases must be valid for $f_1$ as well and therefore be at least $2$, even when applied to $f_0$. This is a reachability loss before any numerical optimization error.

Hard 2 — PSD does not make a multiplier valid

Use ReLU, $v=(0,2)$, $\bar v=(-1,0)$ and $T=(e_1-e_2)(e_1-e_2)^\top$. Show that $T\succeq0$ but the coupled incremental QC is negative. Compare with $T=I$.

Review if needed: Primer A: quadratic forms and PSD order; this module's relevant section.

Hint

The coupled form is $2(\Delta v_1-\Delta v_2)(\Delta z_1-\Delta z_2)-2(\Delta z_1-\Delta z_2)^2$.

Worked solution

Step 1. $T=\begin{bmatrix}1&-1\\-1&1\end{bmatrix}=aa^\top$ with $a=(1,-1)^\top$, so $y^\top Ty=(a^\top y)^2\ge0$. It is PSD.

Step 2. Here $\Delta v=(1,2)$ and $\Delta z=(0,2)$. Their channel differences are $-1$ and $-2$. The coupled form is $2(-1)(-2)-2(-2)^2=4-8=-4$, violating the proposed QC.

Step 3. With $T=I$, the two scalar contributions are $2(0)(1-0)=0$ and $2(2)(2-2)=0$. Those valid constraints hold. PSD of $T$ is an algebraic property; validity of the QC for the actual activation increments is a separate requirement.

Hard 3 — Check a numerical margin before trusting a status

Compare $M_1=\begin{bmatrix}-1&1.1\\1.1&-1\end{bmatrix}$ and $M_2=\begin{bmatrix}-1&0.9\\0.9&-1\end{bmatrix}$. Which is negative semidefinite? If the actual symmetric matrix is $M_2+E$ with a proven $\|E\|_2\le0.04$, does the certificate survive?

Review if needed: Primer A: quadratic forms and PSD order; this module's relevant section.

Hint

The vectors $(1,1)$ and $(1,-1)$ are eigenvectors. Then bound $x^\top Ex$ by $\|E\|_2\|x\|^2$.

Worked solution

Step 1. The eigenvalues of $M_1$ are $-1+1.1=0.1$ and $-1-1.1=-2.1$. It is not negative semidefinite, regardless of a solver success flag.

Step 2. $M_2$ has eigenvalues $-0.1$ and $-1.9$, so $x^\top M_2x\le-0.1\|x\|^2$ for every $x$.

Step 3. The perturbation adds at most $0.04\|x\|^2$. Thus $x^\top(M_2+E)x\le-0.06\|x\|^2$, still strictly negative for nonzero $x$. A proven error bound and a margin together justify the conclusion.

Hard 4 — Pooling and a hidden overlap assumption

A length-three signal is mapped to $y=((x_1+x_2)/2,(x_2+x_3)/2)$. Compute its Euclidean gain. Why is the non-overlapping two-point average-pooling gain $1/\sqrt2$ not valid for this map?

Review if needed: Primer A: spectral norms and products; this module's relevant section.

Hint

Form the $2\times3$ pooling matrix and compute $PP^\top$.

Worked solution

Step 1. $P=\tfrac12\begin{bmatrix}1&1&0\\0&1&1\end{bmatrix}$, so $PP^\top=\tfrac14\begin{bmatrix}2&1\\1&2\end{bmatrix}$. Its eigenvalues are $3/4$ and $1/4$.

Step 2. The gain is the largest singular value, $\|P\|_2=\sqrt3/2\approx0.866025$, which exceeds $1/\sqrt2\approx0.707107$. For example $x=(1,2,1)$ attains squared ratio $4.5/6=3/4$.

Step 3. The middle input is reused in both outputs. The orthogonal, disjoint windows needed for the $1/\sqrt2$ rule are absent. The general bound $1$ remains valid, but importing the tighter formula without its stride/overlap assumptions would be unsound.

Original research exercises

Continue here when the core calculations and the certificate assumptions are clear. Use the graded questions above as a warm-up; the original derivations below remain available in full.

Exercise 12.1 — The product bound, and why LipSDP never does worse

Let $f(x)=W_1\phi(W_0x+b_0)+b_1$ with $\varphi$ slope-restricted on $[0,1]$. (a) Prove $\|f(x)-f(y)\|\le\|W_1\|\,\|W_0\|\,\|x-y\|$. (b) Show that $T=tI$ with $t=\|W_1\|^2$ makes $\rho=\|W_0\|^2\|W_1\|^2$ feasible for LipSDP. (c) Conclude $L_{\rm Layer}\le\|W_0\|\,\|W_1\|$ and evaluate the feasible point of (b) for the walkthrough network.

Show answer

(a) Each neuron is a chord of slope in $[0,1]$: $|\Delta z_i|\le|\Delta v_i|$. Squaring and summing gives $\|\Delta z\|\le\|\Delta v\|=\|W_0\Delta x\|\le\|W_0\|\,\|\Delta x\|$, and $\|\Delta f\|=\|W_1\Delta z\|\le\|W_1\|\,\|\Delta z\|$.

(b) With $\alpha=0,\beta=1$, $M(\rho,tI)=\begin{bmatrix}-\rho I & tW_0^{\top}\\ tW_0 & -C\end{bmatrix}$ with $C=2tI-W_1^{\top}W_1$. Since $W_1^{\top}W_1\preceq\|W_1\|^2I=tI$, we get $C\succeq tI\succ0$ and $C^{-1}\preceq\tfrac1tI$. By the Schur complement, $M\preceq0\iff\rho I\succeq t^2W_0^{\top}C^{-1}W_0$, and $t^2W_0^{\top}C^{-1}W_0\preceq t\,W_0^{\top}W_0\preceq t\|W_0\|^2I=\|W_1\|^2\|W_0\|^2I$. So $\rho=\|W_0\|^2\|W_1\|^2$ is feasible. (This needs $W_1\ne0$; if $W_1=0$, then $T=0$ gives $M=\mathrm{blkdiag}(-\rho I,0)\preceq0$ for every $\rho\ge0$.)

(c) LipSDP minimises over a set containing this point, so $L_{\rm Layer}=\sqrt{\rho^\star}\le\|W_0\|\,\|W_1\|$. For the walkthrough network $t=\|W_1\|^2=2$ and $\|W_0\|^2=8$, so the point of (b) is $(T,\rho)=(2I,16)$, certifying $L=4$. Keeping $T=2I$ but minimising $\rho$, Step 5 gives $\rho(2I)=\max\{t^2/(t-1),4t\}=\max\{4,8\}=8$, i.e. $L=2\sqrt2\approx2.83$; optimising $t$ as well gives $\rho=16/3$, $L\approx2.31$.

Exercise 12.2 — Derive the incremental QC for leaky ReLU

Let $\varphi_a(u)=\max(u,au)$ with $0\lt a\lt1$. (a) Show that $\varphi_a$ is slope-restricted on $[a,1]$. (b) Derive the scalar incremental QC in matrix form from the chord inequality. (c) Evaluate it for $a=0.1$ and the pair $u=2$, $\bar u=-1$; when does it hold with equality? (d) Why do Pauli et al. nevertheless use $\alpha=0$ when training with such an activation?

Show answer

(a) $\varphi_a$ is continuous and piecewise linear with slopes $a$ (for $u\lt0$) and $1$ (for $u\gt0$). A chord slope $(\varphi_a(u)-\varphi_a(\bar u))/(u-\bar u)$ is the average of $\varphi_a'$ over the interval between the points, hence lies in $[a,1]$.

(b) With $s$ the chord slope, $s\in[a,1]\iff(s-a)(s-1)\le0$. Multiply by $(\Delta u)^2\ge0$ and use $s\Delta u=\Delta\varphi$: $(\Delta\varphi-a\Delta u)(\Delta\varphi-\Delta u)\le0$. Expanding and multiplying by $-2$ gives

$$\begin{bmatrix}\Delta u\\ \Delta\varphi\end{bmatrix}^{\top}\begin{bmatrix}-2a & 1+a\\ 1+a & -2\end{bmatrix}\begin{bmatrix}\Delta u\\ \Delta\varphi\end{bmatrix}\ge0 .$$

(c) $\Delta u=3$ and $\Delta\varphi=2-(-0.1)=2.1$, a chord slope of $0.7$. The form is $-2(0.1)(9)+2(1.1)(3)(2.1)-2(2.1)^2=-1.8+13.86-8.82=3.24\ge0$, which agrees with $-2(\Delta\varphi-a\Delta u)(\Delta\varphi-\Delta u)=-2(1.8)(-0.9)=3.24$. Equality holds iff the chord slope is exactly $a$ or $1$ (both points on the same side of $0$) or $\Delta u=0$.

(d) With $\alpha=a\gt0$ the training LMI contains $-2\alpha\beta W_0^{\top}TW_0$, which is matrix-concave in the weights, so the set of certified weights is no longer convex (Section 6). $\alpha=0$ is still valid, because every slope $\ge a\gt0$ is also $\ge0$, but it is conservative for leaky ReLU.

Exercise 12.3 — Reproduce the coupled-multiplier counterexamples

(a) For ReLU and $T=(e_1-e_2)(e_1-e_2)^{\top}$, evaluate the incremental QC with slopes $[0,1]$ at $v=(0,1)$, $\bar v=(-1.5,0)$. (b) For the tanh network of Section 5 ($W_0=[-1;-1]$, $b_0=[-1;1]$, $W_1=[-1\ \ 1]$), compute $TW_0$, $W_1^{\top}W_1$ and the eigenvalues of $M(\rho,T)$. What does the coupled "certificate" claim? (c) Compute the true Lipschitz constant and the valid LipSDP-Neuron value.

Show answer

(a) $\Delta v=(1.5,1)$ and $\Delta z=(0,1)$. For $T=(e_1-e_2)(e_1-e_2)^{\top}$ the form is $2(\Delta v_1-\Delta v_2)(\Delta z_1-\Delta z_2)-2(\Delta z_1-\Delta z_2)^2=2(0.5)(-1)-2(1)=-3\lt0$. The QC is violated; the paper prints $-2$ for the same evaluation.

(b) $TW_0=\begin{bmatrix}1 & -1\\ -1 & 1\end{bmatrix}\begin{bmatrix}-1\\ -1\end{bmatrix}=0$ and $W_1^{\top}W_1=\begin{bmatrix}1 & -1\\ -1 & 1\end{bmatrix}=T$, so $M(\rho,T)=\mathrm{blkdiag}(-\rho,-2T+T)=\mathrm{blkdiag}(-\rho,-T)$ with eigenvalues $-\rho$, $-2$, $0$. It is $\preceq0$ for every $\rho\gt0$, so the certificate claims $L=\sqrt\rho$ for arbitrarily small $\rho$, i.e. that $f$ is constant.

(c) $f(x)=\tanh(x+1)-\tanh(x-1)-0.5$, so $f'(x)=\mathrm{sech}^2(x+1)-\mathrm{sech}^2(x-1)$, an odd function. Maximising $|f'|$ numerically gives $L^\star\approx0.9335$ at $x\approx\pm1.061$; for example $\mathrm{sech}^2(-0.061)\approx0.996$ and $\mathrm{sech}^2(-2.061)\approx0.063$. With diagonal multipliers, the all-patterns bound $\max_{d\in[0,1]^2}|W_1\mathrm{diag}(d)W_0|=\max|d_1-d_2|=1$ is a lower bound for LipSDP, and $T=I$ gives $M(1,I)=-\mathbf 1\mathbf 1^{\top}\preceq0$. Hence LipSDP-Neuron returns exactly $L=1\ge0.9335$: valid, and $7\%$ above the true value.

Here $\mathrm{sech}\,t=1/\cosh t$, so $\mathrm{sech}^2t=1-\tanh^2t$ is the derivative of $\tanh$. The maximisers of $|f'|$ solve $f''(x)=-2\,\mathrm{sech}^2(x+1)\tanh(x+1)+2\,\mathrm{sech}^2(x-1)\tanh(x-1)=0$; since $|f'|$ is even and $f'(x)\to0$ as $|x|\to\infty$, a grid search on $[0,6]$ refined by Newton's method on $f''=0$ finds the value above.

Exercise 12.4 — Derive the gradient of the log-det barrier

For the one-hidden-layer certificate $N(\theta)=\begin{bmatrix}L^2I & -W_0^{\top}\Lambda & 0\\ -\Lambda W_0 & 2\Lambda & -W_1^{\top}\\ 0 & -W_1 & I\end{bmatrix}\succ0$: (a) show $\partial_x\log\det N(x)=\mathrm{tr}(N^{-1}\partial_xN)$; (b) derive $\nabla_{W_0}\log\det N$; (c) give the gradient of $\mathcal L(\theta)-\mu\log\det N(\theta)$ with respect to $W_0$ and describe what happens near the boundary of the feasible set; (d) explain the Cholesky feasibility test in exact arithmetic and its floating-point limitations.

Show answer

(a) $\det(N+\varepsilon E)=\det N\,\det(I+\varepsilon N^{-1}E)$, and $\det(I+\varepsilon X)=1+\varepsilon\,\mathrm{tr}X+O(\varepsilon^2)$ (product of $1+\varepsilon\omega_i$ over the eigenvalues $\omega_i$ of $X$). Take logarithms and let $\varepsilon\to0$ with $E=\partial_xN$.

(b) Only blocks $(2,1)$ and $(1,2)$ contain $W_0$: $dN_{21}=-\Lambda\,dW_0$ and $dN_{12}=-dW_0^{\top}\Lambda$. Then $d\log\det N=\mathrm{tr}\big((N^{-1})_{12}dN_{21}\big)+\mathrm{tr}\big((N^{-1})_{21}dN_{12}\big)=-2\,\mathrm{tr}\big((N^{-1})_{12}\Lambda\,dW_0\big)$, using the symmetry of $N^{-1}$ and the cyclic property of the trace. Matching $d\,g=\mathrm{tr}(G^{\top}dW_0)$ gives $\nabla_{W_0}\log\det N=-2\Lambda(N^{-1})_{21}$. A finite-difference check on random instances agrees to about $10^{-9}$.

(c) $\nabla_{W_0}\big[\mathcal L-\mu\log\det N\big]=\nabla_{W_0}\mathcal L+2\mu\,\Lambda(N^{-1})_{21}$. As $\lambda_{\min}(N)\to0$, $\|N^{-1}\|$ blows up like $1/\lambda_{\min}(N)$, so the barrier discourages approaching singularity. This does not guarantee that a finite step stays inside; acceptance requires a feasibility check. As $\mu\to0$ this repulsion acts only ever closer to the boundary, so the iterates may approach the boundary of the certified set, where a constrained optimum may lie. Nothing guarantees that they reach the constrained global optimum: the training loss is non-convex, and with $\Lambda$ trained the certified set is not convex either. The method is a local search in which every accepted iterate is certified.

(d) A symmetric matrix has a Cholesky factorisation $N=GG^{\top}$, $G$ lower triangular with positive diagonal, iff it is positive definite (all leading principal minors positive). ($G$ rather than the usual $L$, which is the Lipschitz bound here.) In exact arithmetic, if the factorisation of $N(\theta^+)$ breaks down, $N(\theta^+)\not\succ0$ and the certificate fails for $\theta^+$, so the step is rejected. The same factor is reused for the gradient, so the test costs nothing extra.

In floating point the test is evidence, not proof: near singularity rounding can make the factorisation fail for a positive definite matrix or succeed for one that is barely indefinite. A careful implementation therefore accepts a step only with a safety margin, and a proof needs validated arithmetic (background box in Section 6).

Exercise 12.5 — LipSDP by hand for a one-neuron network

Let $f(x)=w_1\varphi(w_0x+b)+c$ with scalars $w_0,w_1\ne0$ and $\varphi$ slope-restricted on $[\alpha,\beta]$, $0\le\alpha\lt\beta$. (a) Write $M(\rho,t)$. (b) For fixed $t\gt w_1^2/2$, find the smallest feasible $\rho(t)$. (c) Minimise over $t$ and show $\rho^\star=\beta^2w_0^2w_1^2$ at $t^\star=\beta w_1^2/(\beta-\alpha)$. (d) Is LipSDP tight here? (e) Evaluate for ReLU with $w_0=1.3$, $w_1=-0.7$.

Show answer

(a) $M(\rho,t)=\begin{bmatrix}-2\alpha\beta w_0^2t-\rho & (\alpha+\beta)w_0t\\ (\alpha+\beta)w_0t & -2t+w_1^2\end{bmatrix}\preceq0$.

(b) For $2t\gt w_1^2$ the lower-right entry is negative, and the Schur complement gives $\rho\ge\rho(t)=w_0^2\,g(t)$ with $g(t)=\dfrac{(\alpha+\beta)^2t^2}{2t-w_1^2}-2\alpha\beta t$.

(c) $g'(t)=\dfrac{2(\alpha+\beta)^2t(t-w_1^2)}{(2t-w_1^2)^2}-2\alpha\beta$. Setting $g'=0$ and writing $s=t/w_1^2$: $(\alpha+\beta)^2(s^2-s)=\alpha\beta(2s-1)^2$, i.e. $(\beta-\alpha)^2(s^2-s)=\alpha\beta$, whose root above $\tfrac12$ is $s=\tfrac12\big(1+\tfrac{\alpha+\beta}{\beta-\alpha}\big)=\tfrac{\beta}{\beta-\alpha}$. At this point $2s-1=\tfrac{\alpha+\beta}{\beta-\alpha}$, so $\dfrac{(\alpha+\beta)^2t^2}{2t-w_1^2}=w_1^2\dfrac{(\alpha+\beta)\beta^2}{\beta-\alpha}$ and $2\alpha\beta t=w_1^2\dfrac{2\alpha\beta^2}{\beta-\alpha}$. Hence $g(t^\star)=w_1^2\beta^2\dfrac{(\alpha+\beta)-2\alpha}{\beta-\alpha}=\beta^2w_1^2$ and $\rho^\star=\beta^2w_0^2w_1^2$. Differentiating $g'$ once more gives $g''(t)=\dfrac{2(\alpha+\beta)^2w_1^4}{(2t-w_1^2)^3}\gt0$ for $t\gt w_1^2/2$, so $g$ is convex there and this stationary point is the unique minimum.

(d) $L=\beta|w_0w_1|$. With one neuron there is nothing to align and no impossible pattern, so LipSDP, the all-patterns bound and the product bound all equal $\beta|w_0w_1|$. The true constant is $|w_0w_1|\sup_u\varphi'(u)$, so LipSDP is tight exactly when the supplied $\beta$ is the activation's own Lipschitz constant, attained or only approached: ReLU and tanh with $\beta=1$ (tanh has slope $1$ at $0$), sigmoid with $\beta=\tfrac14$. A larger supplied $\beta$ makes it loose by the factor $\beta/\sup\varphi'$.

(e) $\alpha=0$, $\beta=1$: $t^\star=w_1^2=0.49$, $\rho^\star=1.69\cdot0.49=0.8281$, $L=0.91=|1.3\cdot0.7|$. A grid search over $t$ reproduces $\rho^\star=0.8281$ at $t=0.49$, and $M(\rho^\star,t^\star)$ has eigenvalues $-1.318$ and $0$.

Exercise 12.6 — State-space realisation of a 1-D convolution with kernel size 3

A 1-D convolutional layer with zero padding computes $y_k=b+K_0u_k+K_1u_{k-1}+K_2u_{k-2}$, $K_j\in\mathbb R^{c_{\rm out}\times c_{\rm in}}$. (a) Give $(A,B,C,D)$ for the state $x_k=(u_{k-1},u_{k-2})$. (b) Verify that it reproduces the convolution. (c) Show $A^2=0$ and compute the transfer function (see Primer D). (d) What is the size of the layer LMI of Section 7, and why does it not grow with the signal length? (e) For a $3\times3$ 2-D convolution with $c_{\rm in}=16$, $c_{\rm out}=32$, how many states does the Roesser realisation of Pauli, Gramlich & Allgöwer use, and is minimality guaranteed?

Show answer

(a) $A=\begin{bmatrix}0 & 0\\ I & 0\end{bmatrix}$, $B=\begin{bmatrix}I\\ 0\end{bmatrix}$, $C=\begin{bmatrix}K_1 & K_2\end{bmatrix}$, $D=K_0$, with $c_{\rm in}\times c_{\rm in}$ identity blocks, and $y_k=Cx_k+Du_k+b$.

(b) $Ax_k+Bu_k=(u_k,u_{k-1})=x_{k+1}$, and $Cx_k+Du_k=K_1u_{k-1}+K_2u_{k-2}+K_0u_k$. The initial state $x_0=0$ is exactly zero padding. A random-kernel simulation confirms equality for all $k$.

(c) $A^2=\begin{bmatrix}0 & 0\\ I & 0\end{bmatrix}\begin{bmatrix}0 & 0\\ I & 0\end{bmatrix}=0$. Hence $(zI-A)^{-1}=z^{-1}(I-A/z)^{-1}=z^{-1}I+z^{-2}A$, and $C(zI-A)^{-1}B+D=K_0+K_1z^{-1}+K_2z^{-2}$, the kernel itself: an FIR filter.

(d) $n_x=2c_{\rm in}$; the LMI has blocks for $\Delta x$ ($2c_{\rm in}$), $\Delta u$ ($c_{\rm in}$) and $\Delta w$ ($c_{\rm out}$), size $3c_{\rm in}+c_{\rm out}$, with unknowns $P$, a diagonal $\Lambda$ of size $c_{\rm out}$, and the weights $X_{\rm in},X_{\rm out}$. The dissipation inequality holds step by step and telescopes over any number of steps, so the same LMI certifies every signal length.

(e) The kernel is $(r_1{+}1)\times(r_2{+}1)$ with $r_1=r_2=2$, so $n_1=c_{\rm out}r_1=64$ and $n_2=c_{\rm in}r_2=32$: $96$ states. Minimality is proven only for $c_{\rm in}=c_{\rm out}$ (with $K[r_1,r_2]$ of full rank), so it is not guaranteed here. The abstract's count $c_{\rm in}r_1+c_{\rm out}r_2$ also gives $96$, but only because $r_1=r_2$; for a $3\times5$ kernel ($r_1=2$, $r_2=4$) the theorem gives $64+64=128$ states and the abstract's formula $32+128=160$.

Key Papers

PaperVenueContributionWhy read it
Efficient and Accurate Estimation of Lipschitz Constants for Deep Neural Networks (Fazlyab, Robey, Hassani, Morari, Pappas)NeurIPS 2019; arXiv v2 2023LipSDP: slope-restricted activations as incremental QCs, the Lipschitz SDP, Neuron and Layer variants, splittingThe reference method. Read arXiv v2, which keeps only diagonal multipliers.
Training Robust Neural Networks Using Lipschitz Bounds (Pauli, Koch, Berberich, Kohler, Allgöwer)IEEE L-CSS 2022; ACC 2021ADMM training with the LMI ($\alpha=0$, fixed $T$); two counterexamples to coupled multipliersThe source of the diagonal-only correction, and the starting point of Pauli's line of LMI-constrained training (Section 6).
Neural network training under semidefinite constraints (Pauli, Funcke, Gramlich, Msalmi, Allgöwer)CDC 2022Log-det barrier training, block Cholesky of the banded LMI, bilinear multipliers, WGAN criticsMakes SDP-constrained training cost about the same as nominal training (normalised time $1.15$ vs ADMM $78.7$).
Lipschitz constant estimation for 1D convolutional neural networks (Pauli, Gramlich, Allgöwer)L4DC 2023, PMLR 211Convolutions as FIR state-space systems; layer-wise incremental dissipativity; pooling QCsThe start of the "layers as dynamical systems" programme: LMI size independent of signal length.
Convolutional neural networks as 2-D systems (Gramlich, Pauli, Scherer, Ebenbauer)Automatica 2026Roesser realisations; CNNs as 2-D Lur'e systems; 2-D dissipativity and IQC analysisLipschitz bounds valid for images of any size; the 2-D systems view behind LipKernel.
State space representations of the Roesser type for convolutional layers (Pauli, Gramlich, Allgöwer)IFAC-PapersOnLine 2024Explicit realisation with $c_{\rm out}r_1+c_{\rm in}r_2$ states; minimal for $c_{\rm in}=c_{\rm out}$; dilated, strided, N-DThe realisation used by GLipSDP and LipKernel.
Lipschitz constant estimation for general neural network architectures using control tools (Pauli, Gramlich, Allgöwer)arXiv 2024 (preprint)GLipSDP: dynamic programming over layers with quadratic value functions; one LMI per layer for conv, SSM, residual, pooling, GroupSortProves that layer-wise splitting of LipSDP loses nothing for fully connected networks.
Novel Quadratic Constraints for Extending LipSDP beyond Slope-Restricted Activations (Pauli, Havens, Araujo, Garg, Khorrami, Allgöwer, Hu)ICLR 2024QCs for GroupSort, MaxMin and Householder from 1-Lipschitzness and sum preservation; $\ell_2$ and $\ell_\infty\to\ell_1$ SDPsShows how to build QCs for structured activations; LipSDP on the residual-ReLU form of MaxMin only gives $\sqrt2$.
Lipschitz regularity of deep neural networks: analysis and efficient estimation (Virmaux, Scaman)NeurIPS 2018NP-hardness of exact computation; AutoLip; SeqLip via SVD alignmentThe hardness baseline and the first attack on the product bound's misalignment cost.
Chordal Sparsity for Lipschitz Constant Estimation of Deep Neural Networks (Xue, Lindemann, Robey, Hassani, Pappas, Alur)CDC 2022Chordal decomposition of the LipSDP LMI into clique LMIsExact and much faster for deep networks. Only $\tau=0$ certifies (v2 footnote).
ECLipsE: Efficient Compositional Lipschitz Constant Estimation for Deep Neural Networks (Xu, Sivaranjani)NeurIPS 2024Exact Schur decomposition of the certificate; layer-wise SDPs (ECLipsE) or closed form (ECLipsE-Fast)Current fast baseline, up to several thousand times faster than LipSDP.
On the Scalability and Memory Efficiency of Semidefinite Programs for Lipschitz Constant Estimation of Neural Networks: Scaling the Computation for ImageNet (Wang, Hu, Havens, Araujo, Zheng, Chen, Jha)ICLR 2024EP-LipSDP: exact-penalty eigenvalue form via redundant trace constraints; first-order solver LipDiffTakes SDP-based estimation to ImageNet-scale networks.
Demystifying Lipschitz verification: positive matrices, negative results (Kuang, Xu, Sivaranjani, Lin)arXiv 2026 (preprint)Hidden-state reachability is the source of hardness; SDP bounds can inherit the product bound's failuresThe sharpest statement of what LipSDP-type certificates cannot do.
Direct Parameterization of Lipschitz-Bounded Deep Networks (Wang, Manchester)ICML 2023Sandwich layers: a complete, unconstrained parameterisation of all networks satisfying the LipSDP certificateWhere Section 6 leads (Module 13); Remark A.2 explains the LipSDP-Network proof error.
Lipschitz-Margin Training: Scalable Certification of Perturbation Invariance for Deep Neural Networks (Tsuzuku, Sato, Sugiyama)NeurIPS 2018Certified radius $m_f(x)/(\sqrt2L)$; Lipschitz-margin trainingWhy a Lipschitz bound is a robustness certificate in the first place.

Flashcards