Subdifferentials of saddle-functions #
A saddle-function is concave in one variable and convex in the other, so it has two one-sided
subdifferentials: a superdifferential in the concave variable and a subdifferential in the convex
one. Their product is ∂K. Two facts make it useful: (u*, x*) ∈ ∂K (u, x) says exactly that
(u, x) is a saddle-point of K tilted by ⟨·, u*⟩ + ⟨·, x*⟩, and for a closed proper K one
has ri (dom K) ⊆ dom ∂K ⊆ dom K.
Moreover ∂K depends only on the equivalence class of K: on Ω (F) it is one relation attached
to F, and the relations of conjugate classes are inverse. In particular ∂K*(0, 0) is the set of
saddle-points of K, so one exists whenever the origin lies in ri (dom K*).
Main definitions #
concaveSubgradient B g x— the superdifferential of a concaveg: theywithg z ≤ g x + ⟨z - x, y⟩for allz. The sign dictionary tosubgradientismem_concaveSubgradient_iff_neg_mem_subgradient_neg.saddleSubgradient Bu Bx K p—∂K (u, x) = ∂₁K (u, x) × ∂₂K (u, x) ⊆ V × Y, the concave variable being paired againstVand the convex one againstY;domSaddleSubgradientis where it is nonempty, andsaddleTilt Bu Bx K qisK - ⟨·, u*⟩ - ⟨·, x*⟩.IsBifunSubgradientPair Bu Bx F p q— the relation(F u) x - ⟨x, y⟩ = (F* y) v - ⟨u, v⟩: the subdifferential of a class, without a representative.
Main results #
mem_concaveSubgradient_iff_concaveConj_eq,concaveSubgradient_nonempty_of_mem_relint_domConcave— the conjugate criterion for a supergradient, and existence of one at a relative interior point.mem_saddleSubgradient_iff_isSaddlePoint— subgradients are saddle-points of the tilt, with no hypotheses at all (Theorem 37.4 in [^1]);kernelSet_subset_domSaddleSubgradient_subset_domSaddle—ri (dom K) ⊆ dom ∂K ⊆ dom K.mem_saddleSubgradient_iff_isBifunSubgradientPair,mem_saddleSubgradient_upperConjSaddle_iff—∂Kis one relation attached to the class, read from either side (Theorem 37.5 in [^1]).mem_saddleSubgradient_upperConjSaddle_zero_iff—∂K* (0, 0)is the set of saddle-points;exists_isSaddlePoint_of_zero_mem_kernelSet_upperConjSaddle— one exists if0 ∈ ri (dom K*).
Implementation notes #
In Rᵐ × Rⁿ the four spaces coincide; keeping them apart is what makes ∂K* land back in U × Y.
The variant (-v, y) ∈ ∂f (u, x) for the graph function f of F is not equivalent to
IsBifunSubgradientPair without properness: where F u x = (F* y) v = ⊤, the latter reads
⊤ - r = ⊤ - s and holds while the former fails. The customary statements do not record the
restriction; the form used in Saddle/Monotone.lean assumes Proper (graphFn F).
References #
[^1]: R. T. Rockafellar, Convex Analysis, Princeton University Press, 1970, §23, §35 and §37.
Moving a real subtrahend across an EReal inequality: z - c ≤ w - d ↔ z ≤ w + e whenever
c - d = e. There is no side condition, because c and d are finite. The difference is passed
as a parameter with its defining equation, so that the caller supplies whatever form it has.
The reflection that exchanges a class with its conjugate class:
z - r = w - s ↔ -w - r = -z - s. Both say z + s = w + r; the right-hand side is the left with
the two EReals negated and exchanged, which is what conjugating a bifunction does.
Supergradients: the subdifferential of a concave function #
The superdifferential of a concave g at x for the pairing B: the set of y : F with
g z ≤ g x + ⟨z - x, y⟩ for every z. This is subgradient with the inequality turned around,
and it is what Rockafellar writes ∂ for a concave function.
Equations
Instances For
The sign dictionary: y is a supergradient of g at x exactly when -y is a
subgradient of -g there.
y ∈ ∂g x exactly when the infimum of ⟨·, y⟩ - g over the space is attained at x.
Unconditional.
Existence of a supergradient #
A proper concave function has a supergradient at every relative interior point of its effective domain.
The subdifferential of a saddle-function #
The subdifferential of a saddle-function: ∂K (u, x) = ∂₁K (u, x) × ∂₂K (u, x), the
supergradients of the concave slice through x paired with the subgradients of the convex slice
through u.
Equations
- Tdaf.ConvexAnalysis.saddleSubgradient Bu Bx K p = Tdaf.ConvexAnalysis.concaveSubgradient Bu (fun (u : U) => K (u, p.2)) p.1 ×ˢ Tdaf.ConvexAnalysis.subgradient Bx (fun (x : X) => K (p.1, x)) p.2
Instances For
∂K (u, x) is convex with no hypothesis on K; being a product it is even a convex product
set, which is what makes the set of saddle-points a convex product set.
The set where the subdifferential of a saddle-function is nonempty, dom ∂K.
Equations
- Tdaf.ConvexAnalysis.domSaddleSubgradient Bu Bx K = {p : U × X | (Tdaf.ConvexAnalysis.saddleSubgradient Bu Bx K p).Nonempty}
Instances For
Tilting a saddle-function by a linear function #
Rockafellar's K - ⟨·, u*⟩ - ⟨·, x*⟩, the tilt of K by the linear function determined by
q = (u*, x*). The two pairings are combined into one real coercion, which is what keeps the
EReal arithmetic free of side conditions.
Equations
- Tdaf.ConvexAnalysis.saddleTilt Bu Bx K q p = K p - ↑((Bu p.1) q.1 + (Bx p.2) q.2)
Instances For
Subgradients are saddle-points of the tilted function #
(u*, x*) ∈ ∂K (u, x) exactly when (u, x) is a saddle-point of
K - ⟨·, u*⟩ - ⟨·, x*⟩. There are no hypotheses at all — not concavity, not
convexity, not properness: both sides are the same pair of inequalities, one in each variable, with
a real number moved across.
The effective domain of the subdifferential #
dom ∂K ⊆ dom K for a proper saddle-function; closedness is not needed. A subgradient pair
at p makes p a saddle-point of the tilt, and the saddle-points of a proper saddle-function lie
in its effective domain.
ri (dom K) ⊆ dom ∂K. Over ri (dom₁ K) the convex slice K (u, ·) is proper with effective
domain exactly dom₂ K, so it has a subgradient there; the concave half is the same statement for
saddleSwap K.
ri (dom K) ⊆ dom ∂K ⊆ dom K for a closed proper saddle-function.
The subdifferential of an equivalence class #
The subgradient relation of a bifunction: the point p = (u, y) and the pair
q = (v, x) satisfy
(F u) x - ⟨x, y⟩ = (F* y) v - ⟨u, v⟩.
It is the equality case of the chain
⟨x, y⟩ - (F u) x ≤ ⟨F u, y⟩ ≤ ⟨u, F* y⟩ ≤ ⟨u, v⟩ - (F* y) v, and it turns out to be exactly
membership in ∂K for every K in the class Ω (F).
Equations
- Tdaf.ConvexAnalysis.IsBifunSubgradientPair Bu Bx F p q = (F p.1 q.2 - ↑((Bx q.2) p.2) = Tdaf.ConvexAnalysis.adjointBifun Bu Bx F p.2 q.1 - ↑((Bu p.1) q.1))
Instances For
The relation read through the reflection z ↦ r - z: both differences are then the common
value of the squeezed chain, namely K (u, y).
For any K in the class Ω (F), the subdifferential ∂K is the relation
IsBifunSubgradientPair attached to F. In particular ∂K depends only on the class.
Each half of ∂K (u, y) says that a conjugate of a slice is attained — F u in the convex
variable, F* y in the concave one — so each says that a difference equals K (u, y); together
they say the two differences are equal. Conversely the relation squeezes the chain
⟨x, y⟩ - (F u) x ≤ ⟨F u, y⟩ ≤ K (u, y) ≤ ⟨u, F* y⟩ ≤ ⟨u, v⟩ - (F* y) v between equal ends.
The same relation read from the conjugate side, so the subdifferentials of conjugate classes
are inverse to each other, exactly as ∂(f*) = (∂f)⁻¹ for convex functions. K̄* lies in the class
Ω (F_*^*) at the flipped pairings, and the biadjoint identity turns the resulting condition into
the relation reflected by sub_coe_eq_sub_coe_iff_neg.
∂K* (0, 0) is the set of saddle-points of K. The conjugate-side reading at q = 0 is
the direct reading at q = 0, which is the saddle-point property for the untilted K.
The saddle-points of K form a convex product set.
K has a saddle-point exactly when the origin lies in dom ∂K*.
Existence of a saddle-point #
If the origin lies in the relative interior of the effective domain C* × D* of the conjugate
class, then K has a saddle-point: ri (dom K*) ⊆ dom ∂K* makes ∂K* (0, 0) nonempty, and that
set is the set of saddle-points.
The same with the hypothesis in the int form: (0, 0) ∈ int (dom K*) = int C* × int D*.
The Lagrangian in subgradient form #
(0, 0) ∈ ∂L (v, x) exactly when v is a Kuhn–Tucker vector for (P) and x is an optimal
solution to (P). The subgradient condition says "(v, x) is a saddle-point of L", which the
Lagrangian characterisation reads off. The pairing Bx is arbitrary data: the subgradient tested
there is 0, so no property of it is used.