A Strict Complementarity Approach to Error Bound and Sensitivity of Solution of Conic Programs

Abstract: In this paper, we provide an elementary, geometric, and unified framework to analyze conic programs that we call the strict complementarity approach. This framework allows us to establish error bounds and quantify the sensitivity of the solution. The framework uses three classical ideas from convex geometry and linear algebra: linear regularity of convex sets, facial reduction, and orthogonal decomposition. We show how to use this framework to derive error bounds for linear programming (LP), second order cone programming (SOCP), and semidefinite programming (SDP).

\section{Conic Decomposition}\label{sec: Conic Decomposition}
In the main paper, we decompose a general $x\in \mathbf{E}$ according to
the subspace $ \mathcal{V}_{s_\star }$.
A different decomposition uses the cone $\mathcal{F}_{s_\star }$:
every $x\in \mathbf{E}$ admits the conic decomposition
$x = \proj{\mathcal{F}_{s_\star }}(x) + \proj{\mathcal{F}_{s_\star }^{\circ}}(x)$ where $\mathcal{F}_{s_\star }^{\circ}$
is the \emph{polar cone} of $\mathcal{F}_{s_\star }$, i.e., the negative dual cone $-\mathcal{F}^{*}_{s_\star }$.

\begin{theorem}\label{thm: basicframeworkConic}
	Suppose strong duality and dual strict complementarity hold.
	Then for some
	constants $\gamma,\gamma'$ described in Lemma \ref{lem: linearegularitystrictcomplementarity} and for all $x\in \mathbf{E}$,
	we have
	\begin{equation}
		\begin{aligned}\label{eqn: ConicDecompositionFramework}
			\mbox{dist}(x,\xset) \leq & (1+\gamma\sigma_{\max}(\mathcal{A}))\twonorm{\proj{\mathcal{F}_{s_\star }^\circ}(x)}+\gamma \twonorm{\mathcal{A}(x)-b}.
		\end{aligned}
	\end{equation}
\end{theorem}
Let us compare the above bound \eqref{eqn: ConicDecompositionFramework} and \eqref{eqn: framework} in Theorem  \ref{thm: basicframework}.
To make the comparison easier, first note that from the proof of Theorem \ref{thm: basicframework}, we can bound the distance from $x$ to $\xset$
using the decomposition $x = \proj{\mathcal{V}_{s_\star }}(x) +\proj{\mathcal{V}_{s_\star }^\perp}(x) $:
\begin{equation}\label{eq: intermediateFramework}
	\begin{aligned}
		\mbox{dist}(x,\xset) \leq  (1+\gamma\sigma_{\max}(\mathcal{A}))\twonorm{\proj{\mathcal{V}_{s_\star }^\perp}(x)}+\gamma \twonorm{\mathcal{A}(x)-b}
+	\gamma'\mbox{dist}(\proj{\mathcal{V}_{s_\star }}(x),\mathcal{F}_{s_\star }).
	\end{aligned}
\end{equation}
The bound \eqref{eqn: framework} in Theorem  \ref{thm: basicframework} is further obtained via the decomposition  $x=\conpart{x}+\conefeas{x}$.

Comparing \eqref{eq: intermediateFramework} and \eqref{eqn: ConicDecompositionFramework}, we find that
there is an extra term $\gamma'\mbox{dist}(\proj{\mathcal{V}_{s_\star }}(x),\mathcal{F}_{s_\star })$ in \eqref{eq: intermediateFramework} and
the term $\twonorm{\proj{\mathcal{V}_{s_\star }^\perp}(x)}$ in \eqref{eq: intermediateFramework} is replaced by $\twonorm{\proj{\mathcal{F}_{s_\star }^\circ}(x)}$.
Since $\twonorm{\proj{\mathcal{F}_{s_\star }^\circ}(x)} \geq \twonorm{\proj{\mathcal{V}_{s_\star }^\perp}(x)}$, it is not immediately clear which bound
is tighter.

A more subtle difference between  \eqref{eqn: ConicDecompositionFramework} and \eqref{eqn: framework} in Theorem  \ref{thm: basicframework}
is that we are not able to further bound $\twonorm{\proj{\mathcal{F}_{s_\star }^\circ}(x)}$ using the decomposition $x=\conpart{x}+\conefeas{x}$
with respect to $\mathcal K$.
We reach this impasse because the projection operator $\proj{\mathcal{F}_{s_\star }^\circ}$
is not linear and so we cannot rely on the triangle inequality $\twonorm{\proj{\mathcal{F}_{s_\star }^\circ}(x)} \leq \twonorm{\proj{\mathcal{F}_{s_\star }^\circ}(\conpart{x})} + \twonorm{\proj{\mathcal{F}_{s_\star }^\circ}(\conefeas{x})}$.
Hence we cannot bound $\twonorm{\proj{\mathcal{F}_{s_\star }^\circ}(x)}$  using conic infeasibility.

Thus, to use \eqref{eq: intermediateFramework}, we must use $x$ (which may be infeasible with respect to the cone $\mathcal K$) directly
to bound $\twonorm{\proj{\mathcal{F}_{s_\star }^\circ}(x)}$.
We now consider how to bound this term for the cases considered in the main text.

\paragraph{Case $s_\star  =0$.} For $s_\star  =0$, we have $\mathcal{F}_{s_\star }= \mathcal{K}$. Thus $\mathcal{F}_{s_\star }^\circ = \mathcal{K}^\circ$ and $\proj{\mathcal{F}_{s_\star }^\circ}(x) = x_-$.
For $s_\star  \in \mathop{\bf int}(\mathcal{K}^*)$, we have $\mathcal{F}_{s_\star }=\{0\}$. Thus  $\mathcal{F}_{s_\star }^\circ = \mathbf{E}$ and
$\twonorm{\proj{\mathcal{F}_{s_\star }^\circ}(x)} =\twonorm{x}\leq \twonorm{x_+} + \twonorm{x_-}$.
We can bound  $\twonorm{x_+} $ as in Lemma \ref{lem: boundPVperpx+}.

\paragraph{Case $s_\star  ={\mbox{\bf R}}_+$.} For $\mathcal{K} = {\mbox{\bf R}}_+$, the projection of $\proj{\mathcal{F}_{s_\star }^\circ}(x) = x - (x_{I_{s_\star }^c})_+=
(x_+)_{I_{s_\star }} + x_-$ where
$x_{I_{s_\star }^c}$ is the vector $x$ zeroing all entries in the support of $s_\star $ and $(x_+)_{I_{s_\star }} $ is
the vector $x_+$ zeroing out all entries not in the support of $s_\star $. Hence,
$\twonorm{\proj{\mathcal{F}_{s_\star }^\circ}(x) }\leq \twonorm{(x_+)_{I_{s_\star }}} + \twonorm{x_-}$ and we can
further bound $\twonorm{(x_+)_{I_{s_\star }}}$ as in Lemma \ref{lem: boundPVperpx+}.

\paragraph{Case $s_\star  =\SOC{n}$.}
For $\mathcal{K} = \SOC{n}$, considering the nontrivial case $s_\star  \not = 0$,
the projection of $\proj{\mathcal{F}_{s_\star }^\circ}(x)$ is
\[
 x -(\inprod{x}{\checkssol})_+ \checkssol = x_+ -(\inprod{x}{\checkssol})_+ \checkssol +x_-.
\]
Thus we have
\begin{equation}
	\begin{aligned}
\twonorm{\proj{\mathcal{F}_{s_\star }^\circ}(x) - \proj{\mathcal{V}^\perp_{s_\star }}(x_+)}
  & = \twonorm{\left( \inprod{x_+}{\checkssol} - (\inprod{x}{\checkssol})_+ \right)\checkssol +x_-} \\
  & \leq  |\inprod{x_+}{\checkssol}- (\inprod{x}{\checkssol})_+ | + \twonorm{x_-} \\
  & \overset{(a)}{\leq}  |\inprod{x_+}{\checkssol}| + \twonorm{x_-} .
\end{aligned}
\end{equation}
In the step $(a)$, we use $x = x_+ + x_-$ and $\inprod{x_-}{\checkssol}\leq 0$. Hence, one
can bound $\twonorm{ \proj{\mathcal{F}_{s_\star }^\circ}(x) }$ by combining the above bound and
the bound on $\proj{\mathcal{V}^\perp}(x_+)$ established in the main text.

\paragraph{Case $s_\star  = \sym_+^n$.}
For $\mathcal{K} = \sym_+^{n}$, $\proj{\mathcal{F}_{S_\star}^\circ}(X)$ is
\[
\proj{\mathcal{F}_{S_\star}^\circ}(X) = X - V(V^\top XV)_+V^\top= X_+ - V(V^\top XV)_+V^\top +X_-.
\]
Since $\proj{\mathcal{V}_{S_\star}^\top }(X+) = X_+ -  VV^\top X_+VV^\top$, we know
\begin{equation}
	\begin{aligned}
		\fronorm{\proj{\mathcal{F}_{s_\star }^\circ}(X) - \proj{\mathcal{V}^\perp}(X_+)}
		& = \fronorm{ V(V^\top XV)_+V^\top-  VV^\top X_+VV^\top +X_-}\\
		& \overset{(a)}{\leq}  \fronorm{(V^\top XV)_+-  V^\top X_+V} +\fronorm{X_-}\\
		& \overset{(b)}{\leq }2\fronorm{X_-}.
	\end{aligned}
\end{equation}
In step $(a)$, we use the fact that $V$ has orthonormal columns, and
in step $(b)$, we use the fact that $V^\top X_+V$ is still positive semidefinite
and projection to the convex set $\sym_+^r$ is nonexpansive.
Thus, we can bound
$\fronorm{\proj{\mathcal{F}_{s_\star }^\circ}(X)}$ using the result for
$\fronorm{ \proj{\mathcal{V}^\perp}(X_+)}$ in the main text.

\paragraph{Case $x$ is feasible.}
Finally, note that when $x$ is feasible for \eqref{opt: primalcone},
then in each of the five cases considered in the paper,
the bound \eqref{eqn: ConicDecompositionFramework} and
the bound \eqref{eqn: framework} in Theorem \ref{thm: basicframework} coincide.
\begin{proof}
	Recall Lemma \ref{lem: linearegularitystrictcomplementarity} establishes an error bound
	only for $x\in \mathcal{V}_{s_\star }$.
	Using the conic decomposition into the face $\mathcal{F}$ and its polar,
	for any $x\in \mathbf{E}$,
	\[
	x = \proj{\mathcal{F}_{s_\star }}(x) + \proj{\mathcal{F}_{s_\star }^{\circ}}(x).
	\]
	This decomposition immediately gives
	\begin{equation}
		\begin{aligned}\label{eqn: conicDecomp}
			\mbox{dist}(x,\xset) & \leq \twonorm{\proj{\mathcal{F}_{s_\star }^\circ}(x)} +
			\mbox{dist}(\proj{\mathcal{F}_{s_\star }}(x), \xset).
		\end{aligned}
	\end{equation}
	The second term $\mbox{dist}(\proj{\mathcal{F}_{s_\star }}(x), \xset)$ can be bounded using Lemma \ref{lem: linearegularitystrictcomplementarity} as $\mathcal{F}_{s_\star } \subset \mathcal{V}_{s_\star }$:
	\begin{equation}\label{eqn: ConicDecompandpreviouscombine}
		\mbox{dist}(\proj{\mathcal{F}_{s_\star }}(x), \xset)\leq \gamma\twonorm{\mathcal{A}(\proj{\mathcal{F}_{s_\star }}(x))-b}.
	\end{equation}
Using the decomposition $x = \proj{\mathcal{F}_{s_\star }}(x) + \proj{\mathcal{F}_{s_\star }^{\circ}}(x)$ again for the term $\twonorm{\mathcal{A}(\proj{\mathcal{F}_{s_\star }}(x))-b}$,
we reach the bound \eqref{eqn: ConicDecompositionFramework}.
\end{proof}
\section{Equivalence between DSC and SC for LP and SDP}\label{sec: Equivalence between DSC and SC for LP and SDP}
We define the strict complementarity of LP and SDP, and
show it is equivalent to DSC defined in Section \ref{sec: assumptions}.
For a vector $x\in {\mbox{\bf R}}^{n}$, denote $\mathbf{nnz}(x)$ as its number of nonzeros.
\begin{definition}\label{def: stricLPSDP}
	For LP, if there exists optimal primal dual pair $(\xsol,y_\star )\in \xset \times \mathcal{Y}_\star \subset {\mbox{\bf R}}_+^n \times {\mbox{\bf R}}^m$ with
	$s_\star  = c-\mathcal{A}^* y_\star \in {\mbox{\bf R}}_+^n$ such that
	\[
	\mathbf{nnz}(\xsol)+\mathbf{nnz}(s_\star )=n,
	\]
	we say \eqref{opt: primalcone} satisfies strict complementarity. Similary, for SDP,
	if  there exists optimal primal dual pair $(X_\star,y_\star )\in \xset \times \mathcal{Y}_\star \subset \sym_+^n \times {\mbox{\bf R}}^m$ with
	$S_\star = C-\mathcal{A}^* y_\star \in \sym_+^n$ such that
	\[
	\mathop{\bf rank}(X_\star)+\mathop{\bf rank}(S_\star)=n,
	\]
	we say \eqref{opt: primalcone} satisfies strict complementarity.
\end{definition}

\begin{lemma}\label{lem: equivalenceSCandDSC}
	For both LP and SDP, under strong duality, the strict complementarity defined is equivalent to dual strict complementarity.
\end{lemma}
\begin{proof}
	For LP, under strong duality (see \eqref{eqn: strongduality}), we have for any optimal $\xsol$,
	$\xsol\in \mathcal{F}_{s_\star }=\{x \in {\mbox{\bf R}}_+^n \mid x_i = 0,\text{ for all } (s_\star )_i>0\}$. The relative
	interior of $\mathcal{F}_{s_\star }$ is
	\[
	\rel{\mathcal{F}_{s_\star }}= \{x \in {\mbox{\bf R}}_+^n \mid x_i = 0\;\text{ for all } (s_\star )_i>0,\; \text{and}\; x_i >0 \;\text{ for all } (s_\star )_i=0\}.
	\]
	The equivalence between DSC and SC is then immediate.

	For SDP, under strong duality (see \eqref{eqn: strongduality}), we know that for any optimal $X_\star$,
	$X_\star\in \mathcal{F}_{S_\star} = \{X\mid \inprod{X}{S_\star}=0, X\succeq 0\}=\{X\mid \mathop{\bf range}(X)\subset {\mathop {\bf nullspace}}(S_\star),\; \text{and}\; X\succeq 0\}$.
	The relative interior of $\mathcal{F}_{S_\star}$ is
\[
\rel {\mathcal{F}_{S_\star}} = \{X\mid \mathop{\bf range}(X)={\mathop {\bf nullspace}}(S_\star),\; \text{and}\; X\succeq 0\}.
\]
The equivalence is immediate by using Rank-nullity theorem for $S_\star$.
\end{proof}
\section{Numerical simulation for the bound \eqref{eqn: errorboundLPSOCPSDPandOthers}}\label{sec: Conic Decomposition}

Here we numerically verify the
correctness of the inequality \eqref{eqn: errorboundLPSOCPSDPandOthers} for feasible $x$:
\begin{equation}
	\begin{aligned}\label{eqn: errorboundLPSOCPSDPandOthersFeasibleNorm}
	\mbox{dist}(x,\xset) & \leq (1+\gamma\sigma_{\max}(\mathcal{A}))f(\epsilon_{\mbox{\tiny opt}}(x),\norm{x}).
	\end{aligned}
\end{equation}
The function $f$ can be found in Table \ref{tb: PAndconstantAndBoundf}.

\paragraph{Experiment setup} We generated a random instance $\mathcal{A},b,c$ for each of LP, SOCP, and SDP. We solved the corresponding conic problem and obtain the optimal solution $\xsol$ and a dual optimal $s_\star $. We numerically verified  that the strict complementarity (by checking Definition \ref{def: stricLPSDP} for LP and SDP and \eqref{eqn: strict complementarityset} for SOCP)  and the uniqueness of the primal (by checking whether $\sigma_{\min}(\mathcal{A}_{\mathcal{V}_{\star}})>0$) both hold for the three cases.
We compute $\gamma = \frac{1}{\sigma_{\min}(\mathcal{A}_{\mathcal{V}_{\star}})}$ according to Lemma 2. Next, we randomly perturbed the solution $\xsol$ $70$ many times and obtained possibly infeasible $x_i', i = 1,\dots, 70$. We then projected $x_i'$ to the feasible set to obtain $x_i$. Finally, we plotted the suboptimality of $x_i$ versus the distance to $\xsol$ (in blue), and the the suboptimality of $x_i$ versus the bound $(1+\gamma\sigma_{\max}(\mathcal{A}))f(\epsilon_{\mbox{\tiny opt}}(x_i),\norm{x_i})$ (in red) in Figure \ref{fig:three graphs opt distance bound}.

From Figure \ref{fig:three graphs opt distance bound}, we observe that the bounds are above the actual distance which assures \eqref{eqn: errorboundLPSOCPSDPandOthersFeasibleNorm}. However, for SDP, the bounds appear to be looser compared to the cases of LP and SOCP.

\begin{figure}
     \centering
     \begin{subfigure}[b]{0.48\textwidth}
         \centering
         \includegraphics[width=\textwidth]{LP}
         \caption{LP}
         \label{fig: LP}
     \end{subfigure}
     \hfill
     \begin{subfigure}[b]{0.48\textwidth}
         \centering
         \includegraphics[width=\textwidth]{SOCP}
         \caption{SOCP}
         \label{fig: SOCP}
     \end{subfigure}
     \hfill
     \begin{subfigure}[b]{0.48\textwidth}
         \centering
         \includegraphics[width=\textwidth]{SDP}
         \caption{SDP}
         \label{fig: SDP}
     \end{subfigure}
        \caption{Verification of the inequality \eqref{eqn: errorboundLPSOCPSDPandOthersFeasibleNorm}. The asserted bound in red is $(1+\gamma\sigma_{\max}(\mathcal{A}))f(\epsilon_{\mbox{\tiny opt}}(x),\norm{x})$. The blue points represent suboptimality versus distance to solution.}
        \label{fig:three graphs opt distance bound}
\end{figure}

\subsubsection{The necessity of bounding $\twonorm{\proj{\mathcal{V}_{s_\star }^\perp}(\conpart{x})}$}
\section{A lower bound on distance to optimality: $\twonorm{\proj{\mathcal{V}_{s_\star }^\perp}(x)} \leq \mbox{dist} (x,\xset)$ }\label{sec: lowerbound}

We have shown how to establish upper bounds on $\mbox{dist} (x,\xset)$
with an upper bound on $\twonorm{\proj{\mathcal{V}{s_\star }^\perp}(\conpart{x})}$.
In this section, we show that the same quantity $\twonorm{\proj{\mathcal{V}{s_\star }^\perp}(\conpart{x})}$
also yields a lower bound. Hence, it is important to understand the behavior of $\twonorm{\proj{\mathcal{V}{s_\star }^\perp}(\conpart{x})}$.
For simplicity, we suppose in this section that $x$ is feasible for the problem \eqref{opt: primalcone}
: in this case, $\twonorm{\proj{\mathcal{V}{s_\star }^\perp}(\conpart{x})} = \twonorm{\proj{\mathcal{V}{s_\star }^\perp}(x)}$.
The argument for infeasible $x$ is essentially the same.

First recall for feasible $x$, the only nonzero error metric is the suboptimality $\epsilon_{\mbox{\tiny opt}}(x)=\inprod{c}{x}-\pval$.
Also note that $\epsilon_{\mbox{\tiny opt}}(x)=0 \iff \twonorm{\proj{\mathcal{V}_{s_\star }^\perp}(x)}$ using complementary slackness.
Hence, there is some nonnegative function $g:{\mbox{\bf R}} \rightarrow {\mbox{\bf R}}_+$ such that $g(\epsilon_{\mbox{\tiny opt}}(x))\leq  \twonorm{\proj{\mathcal{V}_{s_\star }^\perp}(x)}$.
Now note that for any feasible $x$, we always have the lower bound on distance
 given by $\twonorm{\proj{\mathcal{V}_{s_\star }^\perp}(x)}$ as $\mathcal{V}_{s_\star }\supset \xset$,
 \begin{equation}\label{eq: lowerboundInequality}
g(\epsilon_{\mbox{\tiny opt}}(x))\leq \twonorm{\proj{\mathcal{V}_{s_\star }^\perp}(x)} = \mbox{dist}(x,\mathcal{V}_{s_\star })\leq \mbox{dist} (x,\xset).
 \end{equation}
The lower bound \eqref{eq: lowerboundInequality} hence shows that
$\twonorm{\proj{\mathcal{V}_{s_\star }^\perp}(\conpart{x})}$
provides a lower bound on the distance $\mbox{dist} (x,\xset)$,
and provides hope that this bound might scale with the suboptimality $\epsilon_{\mbox{\tiny opt}}(x)$.
We summarize our findings in the following theorem.

\begin{theorem}\label{thm: equivalence}
	Suppose there exists a increasing
	continuous $g$ with $g(0)=0$ so that
	for any $x$ feasible for Problem \eqref{opt: primalcone}\footnote{
	The assumption $x$ being feasible is just for convenience of presentation. The equivalence still holds for all $x$ with suboptimality, infeasibility, and conic infeasibility bounded above by some constant $\bar c>0$.}
	with $\epsilon(x)\leq \bar c$,

\begin{equation}
\begin{aligned}\label{eqn: equivalenceFirstterm}
\twonorm{\proj{\mathcal{V}_{s_\star }^\perp}(x)} \geq g(\epsilon_{\mbox{\tiny opt}}(x)).
\end{aligned}
\end{equation}
Then the following inequality holds:
		\begin{equation}
	\begin{aligned}\label{eqn: equivalencewhole}
	\mbox{dist}(x,\xset) \geq g(\epsilon_{\mbox{\tiny opt}}(x)).
	\end{aligned}
	\end{equation}
\end{theorem}

\begin{remark}
	We also have a partial converse for the above theorem that follows from the same proof.
	Assume $\mbox{dist}(\proj{\mathcal{V}_{s_\star }}(x),\mathcal{F}_{s_\star })$ is $0$.
	If the relation
	\eqref{eqn: equivalencewhole}
	holds for all feasible $x$ with $\epsilon_{\mbox{\tiny opt}}(x)\leq \bar c$, then
	$\twonorm{\proj{\mathcal{V}_{s_\star }^\perp}(x)} \geq \frac{g(\epsilon_{\mbox{\tiny opt}}(x))}{1+\gamma \sigma_{\max}(\mathcal{A})} $.
	Here $\gamma$ is defined in \eqref{eqn: erbstrictcomplslack}.
\end{remark}
\begin{proof}
	We have proved that \eqref{eqn: equivalenceFirstterm} implies \eqref{eqn: equivalencewhole}
	using the motivating logic laid out at the beginning of this section.

Conversely, assume the term $\mbox{dist}(\proj{\mathcal{V}_{s_\star }}(\conpart{x}),\mathcal{F}_{s_\star })$ is zero, $x$ is feasible,
$\epsilon_{\mbox{\tiny opt}}(x)\leq \bar{c}$,
and the inequality \eqref{eqn: equivalencewhole} holds.
We see that for all feasible $x$,
\begin{equation}
\begin{aligned}
\beta g(\epsilon_{\mbox{\tiny opt}}(x)) \leq \mbox{dist}(x,\xset)
\overset{(a)}{\leq} (1+\gamma\sigma_{\max}(\mathcal{A}))\twonorm{\proj{\mathcal{V}_{s_\star }^\perp}(x)}.
\end{aligned}
\end{equation}
where we use \eqref{eqn: frameworkSimplerSituation} for step $(a)$.
\end{proof}

\section{Introduction}
	Given two finite dimensional Euclidean spaces $\mathbf{E}$ and $\mathbf{F}$,
	each equipped with an inner product denoted as $\inprod{\cdot}{\cdot}$,
	we consider a conic program in standard form with decision variable $x\in \mathbf{E}$:
	\begin{equation}\tag{$\mathcal{P}$}
		\begin{aligned}\label{opt: primalcone}
			& {\text{minimize}}
			& & \inprod{c}{x} \\
			& \text{subject to} & &  \mathcal{A} x = b,\\
			& & & x\in \mathcal{K}.
		\end{aligned}
	\end{equation}
	Here the problem data comprises a linear map $\mathcal{A}:\mathbf{E} \rightarrow \mathbf{F}$,
	a right hand side vector $b\in \mathbf{F}$, and a cost vector $c\in \mathbf{E}$.
	The cone $\mathcal{K} \subset \mathbf{E}$ is proper \footnote{A cone $\mathcal{K}$ is proper if it is closed, convex, and pointed.}.
	The solution set and optimal value of \eqref{opt: primalcone} are denoted as $\xset$ and $\pval$ respectively. When $\mathcal{K}$ is the nonnegative orthant ${\mbox{\bf R}}_+^n$, the second order cone $\SOC{n}$,
	or the set of positive semidefinite matrices $\sym_+^n$,
	we call the corresponding problem \eqref{opt: primalcone} an LP, SOCP, or SDP, respectively.

	In this paper, we provide an elementary framework based on \emph{strict complementarity} (see Section \ref{sec: assumptions})
	to establish \emph{error bounds} and quantify the \emph{sensitivity of the solution} of Problem \eqref{opt: primalcone}.
	In the following, $\twonorm{\cdot}$ denotes
	the Euclidean norm induced by the inner product, while $\norm{\cdot}$ is a
	generic norm that will be specified when we instantiate these bounds later
	in the paper.
	\begin{itemize}
		\item \textbf{Error bound:} Given $x\in \mathbf{E}$, define three error metrics:
		suboptimality $\epsilon_{\mbox{\tiny opt}}(x):\,= \inprod{c}{x}-\pval$,
		linear infeasibility $\mathcal{A} x -b$,
		and conic infeasibility as $\conefeas{x}=x -\conpart{x}$,
		where the conic part $\conpart{x}:\,= \proj{\mathcal{K}}(x)$.\footnote{
			The orthogonal projector $\proj{\mathcal{K}}$ is defined as
			$ \proj {\mathcal{K}} (x)= \mathop{\rm argmin}_{y\in \mathcal{K}}\twonorm{y-x}$.
		}
		These errors are easy to measure, while the distance of a given point $x$ to the solution is not.
		This paper shows how to establish an error bound for \eqref{opt: primalcone}
		that bounds the distance to the solution in terms of these measurable error metrics,
		for some constants $c_i,i=1,2,3$ and exponent $p>0$	independent of $x$:
		\begin{equation}\tag{ERB}
			\begin{aligned}\label{eq: errorbound}
				\mbox{dist}(x,\xset)^p\leq c_1 |\epsilon_{\mbox{\tiny opt}}(x)| + c_2 \norm{\mathcal{A} x-b} +c_3 \norm{\conefeas{x}},
			\end{aligned}
		\end{equation}
		where $	\mbox{dist}(x,\xset):= \inf_{\xsol \in \xset}\twonorm{x-\xsol}$ is the distance to $\xsol$.

		\item \textbf{Sensitivity of the solution:}
		We often wish to understand how the solution of the problem changes with perturbations
		of the problem data.
		Given new problem data $(c',\mathcal{A}',b')\in \mathbf{E}\times \mathbf{L}(\mathbf{E},\mathbf{F})\times\mathbf{F}$ for
		Problem \eqref{opt: primalcone},
		where $\mathbf{L}(\mathbf{E},\mathbf{F})$ is the set of linear maps from $\mathbf{E}$ to $\mathbf{F}$,
		Problem \eqref{opt: primalcone} admits a new optimal solution set $\xset'$.
		This paper shows how to quantify the sensitivity of the solution,
		for some constants $c'_i,i=1,2,3$ and exponent $p'>0$, via the inequality
		\begin{equation}\tag{SSB}  \label{eq: sensitivity}
			\textbf{dist}^{p'}(\xset,\xset')\leq  c_1'\norm{c-c'}+c_2'\norm{\mathcal{A} - \mathcal{A}'}+c_3'\norm{b-b'},
		\end{equation}
		where $ \textbf{dist}(\xset,\xset'):\,= \inf_{\xsol\in \xset,x'\in \xset'}\twonorm{\xsol-\xsol'}$
		is the distance between solution sets.
		In fact, once an error bound of the form \eqref{eq: errorbound} is available,
		we can prove an inequality of this form
		by bounding the error metrics of the new solution $\xsol'\in \xset'$
		with respect to the original problem data $(c, \mathcal{A}, b)$
		in terms of
		the perturbation $(c-c',\mathcal{A} - \mathcal{A}',b-b')$.
	\end{itemize}

	\paragraph{Importance of the error bound and sensitivity of solution.}
	The error bound and sensitivity of the solution
	can be regarded as condition numbers for Problem \eqref{opt: primalcone}.
	They guarantee that the output of iterative algorithms to solve \eqref{opt: primalcone}
	is still useful despite optimization error (of the algorithm) and
	measurement error (of the problem data) \cite{lewis2014nonsmooth,ding2020regularity}.
	The error bound is also vital in proving faster convergence for first order algorithms \cite{drusvyatskiy2018error,zhou2017unified,necoara2019linear,johnstone2017faster}.
	Hence a huge body of work has devoted to establish error bounds and sensitivity of solutions
	~\cite{hoffman1952approximate,drusvyatskiy2018error,zhou2017unified,lewis2014nonsmooth,sturm2000error,nayakkankuppam1999conditioning}.

	\paragraph{Our Contribution.} In this paper,
	we use the notion of \emph{strict complementarity} (defined in Section \ref{sec: assumptions})
	to provide an elementary, geometric, and unified framework,
	described in detail in Section \ref{sec: The strict complementary slackness approach},
	to establish bounds of the form
	\eqref{eq: errorbound} and \eqref{eq: sensitivity}
	for the conic program \eqref{opt: primalcone}.
	Specifically, in Section \ref{sec: conicexamples} and \ref{sec: fromerrorboundtosensitivityofsolution},
	we show how to construct a bound with exponents
	$p=p'=1$ for LP and $p=p'=2$ for SOCP and SDP, under strict complementarity,
	and provide a way to obtain explicit estimates of $c_i,i=1,2,3$ in terms of
	the primal and dual solutions and problem data when the primal solution is unique.
	Table \ref{tb: PAndconstantAndBoundf} summarizes our results.

	The main contribution of this paper is a new and simple framework for proving bounds of this form.
	As discussed in Section \ref{sec: discussion},
	many particular bounds that we present here have been discovered before.
	On the other hand, we believe that some of the bounds are new:
	in particular, bounds on the sensitivity of the solution
	that pertain when the primal or dual solution are not unique.

	\paragraph{Paper organization.} The rest of the paper is organized as follows.
	In Section \ref{sec: assumptions},
	we discuss two important analytical conditions assumed throughout this paper:
	strong duality and dual strict complementarity.
	In Section \ref{sec: Defining The strict complementary slackness approach},
	we describe the basic framework of the strict complementarity approach:
	linear regularity of convex sets, facial reduction, and extension via orthogonal decomposition.
	In Section \ref{sec: conicexamples},
	we apply the framework to specific examples, LP, SOCP, and SDP, to establish error bounds.
	We next demonstrate how to use the error bound established
	to characterize the sensitivity of solutions
	in Section \ref{sec: fromerrorboundtosensitivityofsolution} by
	bounding the error measures of the new solution $\xsol'\in \xset'$ in terms of the
	perturbation $(c-c',\mathcal{A} - \mathcal{A}',b-b')$.
	Finally, we discuss previous results regarding \eqref{eq: errorbound} and \eqref{eq: sensitivity},
	how this work relates to them, and potential new directions.

	\paragraph{Notation.} We use $\mathbf{E},\mathbf{F},\mathbf{E}',\mathbf{F}'$ to represent generic finite dimensional Euclidean spaces.
	For a set $\mathcal{C}$ in $\mathbf{E}$, we denote its interior, boundary, affine hull, and relative interior
	as $\mathop{\bf int}(\mathcal{C})$, $\partial \mathcal{C}$, $\affine{\mathcal{C}}$, and $\mathop{\bf rel int}(\mathcal{C})$ respectively.

	We equip ${\mbox{\bf R}}^n$ with the dot inner product,
	and $\sym^n$ and ${\mbox{\bf R}}^{n\times n}$ with the trace inner product.
	The distance to a set $\mathcal{C}$ is defined as $\mbox{dist}(x,\mathcal{C})=\inf_{z\in \mathcal{C}}\twonorm{x-z}$.
	We write $\norm{\cdot}$ for an arbitrary norm, and $\twonorm{\cdot}$ for the $\ell_2$ norm induced by the underlying inner product.
	For matrices, the operator norm (maximum singular value), Frobenius norm, and nuclear norm (sum of singular values) are
	denoted as $\opnorm{\cdot}$, $\fronorm{\cdot}$, and $\nucnorm{\cdot}$ respectively.
	For a linear map $\mathcal{B}:\mathbf{E}\rightarrow \mathbf{F}$ and a linear space $\mathcal{V}\subset\mathbf{E}$,
	we write the restriction of
	$\mathcal{B}$ to $\mathcal{V}$ as $\mathcal{B}_{\mathcal{V}}$.
	We define the largest and smallest singular value of $\mathcal{B}$ as
	$\sigma_{\max } (\mathcal{B}):\,=\max_{\twonorm{x}=1}\twonorm{\mathcal{B}(x)}$ and $\sigma_{\min} (\mathcal{B}):\,=\min_{\twonorm{x}=1}\twonorm{\mathcal{B}(x)}$ respectively.

	\section{The strict complementary slackness approach}\label{sec: The strict complementary slackness approach}
	In Section \ref{sec: assumptions},
	we introduce two important structural conditions, strong duality
	and dual strict complementarity, that are essential to our approach.
	Next in Section \ref{sec: Defining The strict complementary slackness approach},
	we describe the main ingredients of the strict complementary slackness approach:
	linear regularity (Section \ref{sec: linearRegularity}),
	facial reduction (Section \ref{sec: FacialReduction}),
	and orthogonal decomposition (Section \ref{sec: extension}).
	Our main result, Theorem \ref{thm: basicframework}, is in Section \ref{sec: extension}.

	\subsection{Analytical conditions} \label{sec: assumptions}
	Here we define two conditions that are essential to our framework: strong duality and
	dual strict complementarity.
	To start, let us recall the dual problem of \eqref{opt: primalcone} is
	\begin{equation} \label{opt: d}\tag{$\mathcal{D}$}
	\begin{array}{ll}
	\mbox  {maximize} & \inprod{b}{y} \\
	\mbox{subject to}  & c- \mathcal{A}^* y \in \mathcal{K}^*. \\
	\end{array}
	\end{equation}
	The vector $y\in \mathbf{F}$ is the decision variable,
	the linear map $\mathcal{A}^*$ is the adjoint of the linear map $\mathcal{A}$,
	and the cone $\mathcal{K}^*$ is the dual cone of $\mathcal{K}$, i.e.,  $\mathcal{K}^*:\,= \{s\in \mathbf{E}\mid \inprod{s}{x}\geq 0,\,\forall x\in \mathcal{K}\}$.
	Let us introduce strong duality first.

	\begin{definition}[Strong duality]
		The primal and dual problems \eqref{opt: primalcone} and \ref{opt: d} satisfy strong duality (SD)
		if the primal and dual solution sets $\xset, \mathcal{Y}_\star$ are nonempty,
		$\xset$ is compact,
		and there exists a primal and dual solution pair $(\xsol,y_\star )\in \xset\times \mathcal{Y}_\star$
		such that
		\begin{equation}\tag{SD}\label{eqn: strongduality}
			\begin{aligned}
				\inprod{c}{\xsol}=\inprod{b}{y_\star }=\inprod{\mathcal{A} \xsol}{y_\star }.
			\end{aligned}
		\end{equation}
		Equivalently, define the slack vector $s_\star  = c-\mathcal{A}^* y_\star $ to rewrite the equality
		\ref{eqn: strongduality} as
		\[
		0 =\inprod{c-\mathcal{A}^*(y_\star )}{\xsol}= \inprod{s_\star }{\xsol}.
		\]
	\end{definition}

	Note that we require the existence of primal and dual optimal solutions instead of just equality of optimal values. Strong duality in the stated form is ensured by \emph{primal and dual Slater's condition}: there is a primal and dual feasible pair $(x,y)$ with $(x,c-\mathcal{A}^*y)\in \mathop{\bf int} (\mathcal{K})\times \mathop{\bf int}(\mathcal{K}^*)$.

	Next we state the second condition: \emph{dual strict complementarity}.
	This condition is the key to established error bounds for a variety of optimization problems \cite{drusvyatskiy2018error,zhou2017unified}.
	\begin{definition}[Dual strict complementarity (DSC)]
		Given a solution pair
		$(\xsol,y_\star )\in \xset \times \mathcal{Y}_\star$,
		define the \emph{complementary face} $\mathcal{F}_{s_\star } :\,=\{x\mid \inprod{x}{s_\star }=0, \,s_\star  = c-\mathcal{A}^*y_\star \}\cap \mathcal{K}$. The
		solution pair $(\xsol,y_\star )$
		satisfies dual strict complementarity if
		\begin{equation}\tag{DSC}\label{eqn: strict complementarityset}
			\begin{aligned}
				\xsol \in \rel{\mathcal{F}_{s_\star }}.
			\end{aligned}
		\end{equation}
		If \eqref{opt: primalcone} and \eqref{opt: d} has one such pair, we say \eqref{opt: primalcone} and \eqref{opt: d} (or simply \eqref{opt: primalcone}) admits dual strict complementarity.

	\end{definition}
	%
	Let us now unpack the definition of $\mathcal{F}_{s_\star }$ and dual strict complementarity. Also see Figure \ref{fig: 2ds3dstriccomplementarity} for
	a graphical illustration of the condition.

	\begin{figure}[H]
		\begin{subfigure}[(a)]{.5\textwidth}
			\centering
			\vspace{0.1 \textheight}
			\includegraphics[width=0.9\linewidth, height= 0.25\textheight]{2Dstriccomplementarity.pdf}
			\caption{2D illustration}
			\label{fig:figure Matrix Completion}
		\end{subfigure}%
		\hspace{5pt}
		\begin{subfigure}[(b)]{.5\textwidth}
			\centering
			\includegraphics[width=0.7\linewidth, height= 0.35\textheight]{3drobustintersection.pdf}
			\caption{3D illustration}
			\label{fig:figure Max-cut}
		\end{subfigure}
		\caption{Strict Complementarity:
			For both plots, the indigo cone is the cone $\mathcal{K}$;
			the slack vector $s_\star $ is the blue ray;
			the complementary face $\mathcal{F}_{s_\star }$ is the dashed black ray;
			and the complementary space $\mathcal{V}_{s_\star }$ is the black line (both solid and dashed parts).
			In the 2D case, the complementary hyperplane $\mathcal{H}_{s_\star }$ and $\mathcal{V}_{s_\star }$ coincide.
			In the 3D case, the complementary hyperplane $\mathcal{H}_{s_\star }$ is the yellow plane,
			which is tangent to the purple cone $\mathcal K$ at the point $\xsol$ and is
			orthogonal to $s_\star $.
			\label{fig: 2ds3dstriccomplementarity}
		}
	\end{figure}

	\paragraph{Understanding the complementary face $\mathcal{F}_{s_\star }$.}
	To understand the name complementary face,
	let us introduce the \emph{complementary hyperplane}, the hyperplane
	$\mathcal{H}_{s_\star } = \{x\mid \inprod{x}{s_\star }=0\}$
	orthogonal to the slack vector $s_\star =c-\mathcal{A}^*y_\star $.
	The complementary face $\mathcal{F}_{s_\star }$
	is simply the intersection of $\mathcal{H}_{s_\star }$ and the cone $\mathcal{K}$.
	The intersection is nonempty due to strong duality.
	We can see that $\mathcal{F}_{s_\star }$ is indeed a face
	because its intersection with $\mathcal{K}$ is nonempty (it contains $\xsol$),
	and every $x \in \mathcal{K}$ lies on the same side of
	the hyperplane $\mathcal{H}_{s_\star }$, $\inprod{x}{s_\star }\geq 0$,
	as $s_\star \in \mathcal{K}^*$.
	In particular, we see the face $\mathcal{F}_{s_\star }$ is exposed.

	\paragraph{Dual strict complementarity (DSC) and Slater's condition.}
	To better understand dual strict complementarity,
	define the \emph{complementary space} as the affine hull of $\mathcal{F}_{s_\star }$, $\mathcal{V}_{s_\star }:\,=\affine{\mathcal{F}_{s_\star }}$.
	The complementary face $\mathcal{F}_{s_\star } =\mathcal{H}_{s_\star }\cap \mathcal{K}$ is a cone,
	so the complementary space $\mathcal{V}_{s_\star }$ is a linear subspace.
	Imagine modifying problem \eqref{opt: primalcone}
	by replacing the cone $\mathcal{K}$ by $\mathcal{F}_{s_\star }$
	in problem \eqref{opt: primalcone}
	and restricting the decision variable $x$ to the subspace $\mathcal{V}_{s_\star }$.
	Note that $\xsol$ is still a solution to this problem, so this
	procedure is related to facial reduction:
	the modified problem restricts $x$ to a face of the original cone $\mathcal{K}$.
	DSC means that there is a primal $x$ in the interior
	of the cone $\mathcal{F}_{s_\star }\subset\mathcal{V}_{s_\star }$,
	where the interior is taken w.r.t. the subspace $\mathcal{V}_{s_\star }$.
	Hence DSC is equivalent to the usual Slater's condition for
	the modified problem.

	\paragraph{Primal strict complementarity and strict complementarity.} Given dual strict complementarity (DSC),
	a natural way to define primal strict complementarity (PSC) is to
	reverse the role of $s_\star $ and $\xsol$ in the definition of DSC. Precisely,
	PSC means that there
	exists $(\xsol,y_\star )$ with $c-\mathcal{A}^*y_\star  =s_\star  \in \rel{\{s\mid \inprod{\xsol}{s} =0 \,\text{and}\, s\in \mathcal{K}^* \}}$. Primal and
	dual strict complementarity are not always equivalent unless the cone $\mathcal{K}$ is exposed.\footnote{
		For a discussion on primal and dual strict complementarity, see \cite[Remark 4.10]{dur2017genericity}}
	Happily, all the symmetric cones are exposed, including $\mathcal{K} = {\mbox{\bf R}}_+^n$, $\SOC{n}$, and $\sym_+^n$.
	\cite{dur2017genericity} shows that DSC and PSC actually hold ``generically"
	\footnote{Roughly speaking, this condition holds except on a measure $0$ set of problems
		parameterized by $\mathcal{A},b,c$, conditioning on the existence of a primal dual solution pair.
		We refer the reader to the references for more details.} for general conic programs.
	It is worth noting that the standard notion of strict complementarity (SC) for SDP \cite[Definition 4]{alizadeh1997complementarity} and LP,
	both defined algebraically,
	are equivalent to the geometric notion of DSC here.\footnote{The definition of SC for LP and SDP, and the proof of the equivalence can be found in
		Section \ref{sec: Equivalence between DSC and SC for LP and SDP}.}
	SC always holds for LP \cite{goldman1956theory},
	holds ``generically" for SDP as shown in \cite{alizadeh1997complementarity},
	and even holds for some structured instances of SDP \cite{ding2020regularity}.
	Due to the equivalence,
	DSC also holds under the same conditions for LP and SDP.

	\subsection{Defining the strict complementary slackness approach}\label{sec: Defining The strict complementary slackness approach}
	In this section, we explain how to use the two assumptions in Section \ref{sec: assumptions}
	to establish a framework to prove error bounds of the form \eqref{eq: errorbound} and
	sensitivity bounds of the form \eqref{eq: sensitivity}.
	As we explained in the introduction, an error bound \eqref{eq: errorbound}
	can be used to derive a sensitivity bound \eqref{eq: sensitivity}.
	Hence, we focus on proving an error bound first.
	Our main theorem, Theorem \ref{thm: basicframework} in Section \ref{sec: extension},
	reduces the task to bounding the quantity
	$\twonorm{\proj{\mathcal{V}_{s_\star }^\perp}(\conpart{x})}$.\footnote{Here $\mathcal{V}_{s_\star }^\perp$ is orthogonal complementary space of $\mathcal{V}_{s_\star }=\affine{\mathcal{F}_{s_\star }}$,
		and $\proj{\mathcal{V}_{s_\star }^\perp}$ is the corresponding projection.
		Recall the conic part $\conpart{x}$ is $\conpart{x} =\proj{\mathcal{K}}(x)$.}
	We explain how to further bound this quantity in Section \ref{sec: conicexamples}.

	\subsubsection{From optimality to feasibility: linear regularity of convex sets}\label{sec: linearRegularity}
	Our first step is to identify problem \eqref{opt: primalcone}
	with the feasibility problem of finding $x$ such that
	\begin{equation}\label{eq: feasibilityTerm}
		\inprod{c}{x}=\pval,\quad \mathcal{A}(x)=b, \quad\text{and}\quad x \in \mathcal{K}.
	\end{equation}
	This transformation activates the following geometric result,
	called linear regulairty regularity of convex sets {\cite[Theorem 4.6]{bauschke1999strong}}, {\cite[Theorem 2.1]{zhang2000global}},
	a classical result on error bounds for feasibility systems.
	This result states that the distance to the intersection of two sets
	is bounded by the sum of distances to the two sets.
	\begin{lemma}[Linear regularity] \label{lem: linearRegularity}
		Suppose the $C\subset \mathbf{E}$ is an affine space with $C=\{x\mid \mathcal{B}x = d\}$, where $\mathcal{B}:\mathbf{E} \rightarrow \mathbf{F}$ is a linear map,
		and $D\subset \mathbf{E}$ is a closed convex cone. If
		$C\cap \mathop{\bf int}(D)\not=\emptyset$ and $C\cap D$ is compact,
		then there are some $\gamma,\gamma'>0$ such that for all $x\in \mathbf{E}$,
		\begin{equation}
			\begin{aligned} \label{eq:CDintersectionbound}
				\mbox{dist}(x, C\cap D)\leq \gamma\twonorm{\mathcal{B}x-d}+\gamma'\mbox{dist}(x,D).
			\end{aligned}
		\end{equation}
	\end{lemma}
	Now it is tempting to set $C=\{x\mid \inprod{c}{x}=\pval,\,\mathcal{A}(x)=b\}$ and $D=\mathcal{K}$, and conclude \eqref{eq: errorbound} holds with
	exponent $p=1$, since $C\cap D = \xset$.
	The catch is that for most problems of interest,

	the optimal solution $\xsol \in \partial \mathcal{K}$ lies on the boundary of the cone $\mathcal{K}$,
	and the condition $\mathop{\bf int}(D)\cap C=\emptyset$ \emph{does not} hold!
	Indeed, unless $c=0$, which makes \eqref{opt: primalcone} a feasibility problem,
	we always have $\xsol \in \partial \mathcal{K}$.

	\subsubsection{Facial reduction}\label{sec: FacialReduction}

	We may still use Lemma \ref{lem: linearRegularity} to establish an error bound.
	The key is to use the facial reduction idea mentioned earlier.
	Recall the condition required is
	$C\cap \mathop{\bf int}(D)= \{x\mid \inprod{c}{x}=\pval,\, \mathcal{A}(x)=b \}\cap\mathop{\bf int}(\mathcal{K})\not=\emptyset$, which
	does not hold for \eqref{opt: primalcone} with nonzero $c$.
	The problem is that the cone $\mathcal{K}$ lies in the large space $\mathbf{E}$,
	so its interior (with respect to $\mathbf{E}$) does not contain $\xsol$.
	Instead, consider restricting the variable $x$
	to the complementary space $\mathcal{V}_{s_\star }=\affine{\mathcal{F}_{s_\star }}$
	and replacing the cone $\mathcal{K}$ by the complementary face $\mathcal{F}_{s_\star }$.
	The interior of the cone $\mathcal{F}_{s_\star }$ with respect to the space $\mathcal{V}_{s_\star }$
	does contain $\xsol$ under strict complementarity, so we may activate Lemma \ref{lem: linearRegularity}.

	This modification enables an error bound for $x\in \mathcal{V}_{s_\star }$ as stated in
	Lemma \ref{lem: linearegularitystrictcomplementarity} below.
	We also provide a more concrete estimate of the constants
	$\gamma,\gamma'$ when $\xset$ is a singleton.

	\begin{lemma}\label{lem: linearegularitystrictcomplementarity}
		Suppose strong duality and dual strict complementarity hold. Then  there are constants $\gamma,\gamma'$ such that for any  $x\in \mathcal{V}_{s_\star }$:
		\begin{equation}
			\begin{aligned}\label{eqn: erbstrictcomplslack}
				\mbox{dist}(x,\xset) & \leq \gamma\twonorm{\mathcal{A}(x)-b} +\gamma' \mbox{dist}(x,\mathcal{F}_{s_\star }).
			\end{aligned}
		\end{equation}
		Moreover, if $\xset$ is a singleton, then we may take $\gamma'=0$ and $\gamma=\frac{1}{\sigma_{\min}(\mathcal{A}_{\mathcal{V}_{s_\star }})}$.
		Here, the linear map $\mathcal{A}_{\mathcal{V}_{s_\star }}$ is
		$\mathcal{A}$ restricted to $\mathcal{V}_{s_\star }$ and
		$\sigma_{\min}(\mathcal{A}_{\mathcal{V}_{s_\star }})$ is the smallest singular value of  $\mathcal{A}_{\mathcal{V}_{s_\star }}$.
	\end{lemma}
	\begin{proof}
		The inequality \ref{eqn: erbstrictcomplslack} is immediate by using Lemma \ref{lem: linearRegularity} with
		$C=\{x\in \mathcal{V}_{s_\star }\mid \mathcal{A}(x)=b\}\subset \mathcal{V}_{s_\star }$, $D=\mathcal{F}_{s_\star }$, and $\mathbf{E} = \mathcal{V}_{s_\star }$.
		Indeed, this choice gives $C\cap D = \xset$.
		The condition $C\cap \mathop{\bf int}(D) \not=\emptyset$, where the interior is taken with respect to the space $\mathcal{V}_{s_\star }$, is exactly \eqref{eqn: strict complementarityset}: $\exists \xsol\in \xset$ such that $\xsol \in \mathop{\bf rel int}(\mathcal{F}_{s_\star })$.

		Now we show that $\gamma'=0$ and $\gamma=\frac{1}{\sigma_{\min}(\mathcal{A}_{\mathcal{V}_{s_\star }})}$ when $\xset$ is a singleton.
		First assume $\mathcal{A}_{\mathcal{V}_{s_\star }}$ has a trivial nullspace,
		so $\xsol$ is the only solution in $\mathcal{V}_{s_\star }$ to $\mathcal{A}_{\mathcal{V}_{s_\star }}(x)=b$.
		Hence $\sigma_{\min}(\mathcal{A}_{\mathcal{V}_{s_\star }})>0$ and so
		for any $x\in \mathcal{V}_{s_\star }$,
		$\twonorm{x-\xsol}\leq \frac{1}{\sigma_{\min}(\mathcal{A}_{\mathcal{V}_{s_\star }})}\twonorm{\mathcal{A}_{\mathcal{V}_{s_\star }}(x-\xsol)} =  \frac{1}{\sigma_{\min}(\mathcal{A}_{\mathcal{V}_{s_\star }})}\twonorm{\mathcal{A}(x)-b}$.
		Finally, we show by contradiction that the nullspace of $\mathcal{A}_{\mathcal{V}_{s_\star }}$ is trivial
		whenever $\xset$ is a singleton.
		If the nullspace is not trivial,
		then there is some $x'\in \mathcal{V}_{s_\star }$ such that $\mathcal{A}_{\mathcal{V}_{s_\star }}(x')=0$.
		Hence $\xsol +\alpha x'$ for some small enough $\alpha$ is still optimal,
		as $\xsol \in \mathop{\bf rel int}(\mathcal{F}_{s_\star })$,
		which contradicts our hypothesis that the solution set $\xset$ is a singleton.

	\end{proof}

	This choice of the face $\mathcal{F}_{s_\star }$ and
	the corresponding linear space $\mathcal{V}_{s_\star }$
	correspond to the idea of facial reduction \cite{drusvyatskiy2017many, borwein1981facial}.
	Facial reduction is a conceptual and numerical technique designed to handle
	conic feasibility problems for which constraint qualifications
	(such as Slater's condition) fail.
	Note that such failure is the interesting case for a feasibility system \eqref{eq: feasibilityTerm} when the optimal solution $\xsol\in \partial \mathcal{K}$.
	Indeed, our choice of face can be considered as one step of the facial reduction procedure.

	\subsubsection{Extension to the whole space: orthogonal decomposition}\label{sec: extension}
	In this section, we derive our main result, Theorem \ref{thm: basicframework},
	by extending the previous result to the whole space using the orthogonal decomposition
	$\mathbf{E} = \mathcal{V}_{s_\star }\oplus \mathcal{V}_{s_\star }^\perp$
	with $\mathcal{V}_{s_\star }\perp \mathcal{V}_{s_\star }^\perp$.
	\begin{theorem}\label{thm: basicframework}
		Suppose strong duality and dual strict complementarity hold.
		Then for some
		constants $\gamma,\gamma'$ described in Lemma \ref{lem: linearegularitystrictcomplementarity} and for all $x\in \mathbf{E}$,
		we have
		\begin{equation}
			\begin{aligned}\label{eqn: framework}
				\mbox{dist}(x,\xset) \leq & (1+\gamma\sigma_{\max}(\mathcal{A}))\twonorm{\proj{\mathcal{V}_{s_\star }^\perp}(\conpart{x})}+\gamma \twonorm{\mathcal{A}(x)-b}\\
				&+(1+\gamma\sigma_{\max}(\mathcal{A}))\twonorm{\proj{\mathcal{V}^\perp_{s_\star }}(\conefeas{x})}+\gamma'\twonorm{\proj{\mathcal{V}_{s_\star }}(\conefeas{x})}\\
				&+\gamma'\mbox{dist}(\proj{\mathcal{V}_{s_\star }}(\conpart{x}),\mathcal{F}_{s_\star }),
			\end{aligned}
		\end{equation}
		where $\proj{\mathcal{V}_{s_\star }}$ and $\proj{\mathcal{V}_{s_\star }^\perp}$ are orthogonal projections to $\mathcal{V}_{s_\star }$ and $\mathcal{V}_{s_\star }^\perp$ respectively.
		The terms $\twonorm{\proj{\mathcal{V}_{s_\star }}(\conefeas{x})}$ and $\twonorm{\proj{\mathcal{V}^\perp_{s_\star }}(\conefeas{x})}$ can themselves be bounded by $\twonorm{\conefeas{x}}$.
	\end{theorem}
	\begin{proof}
		Recall Lemma \ref{lem: linearegularitystrictcomplementarity} establishes an error bound
		for only those $x\in \mathcal{V}_{s_\star }$.
		Using the orthogonal decomposition proposed, for any $x\in \mathbf{E}$,
		\[
		x = \proj{\mathcal{V}_{s_\star }}(x) + \proj{\mathcal{V}_{s_\star }^\perp}(x).
		\]
		This decomposition immediately gives
		\begin{equation}
			\begin{aligned}\label{eqn: orthogdecomp}
				\mbox{dist}(x,\xset) & \leq \twonorm{\proj{\mathcal{V}_{s_\star }^\perp}(x)} +
				\mbox{dist}(\proj{\mathcal{V}_{s_\star }}(x), \xset).
			\end{aligned}
		\end{equation}
		The second term $\mbox{dist}(\proj{\mathcal{V}_{s_\star }}(x), \xset)$ can be bounded using Lemma \ref{lem: linearegularitystrictcomplementarity}:
		\begin{equation}\label{eqn: orthogdecompandpreviouscombine}
			\mbox{dist}(\proj{\mathcal{V}_{s_\star }}(x), \xset)\leq \gamma\twonorm{\mathcal{A}(\proj{\mathcal{V}_{s_\star }}(x))-b}+ \gamma'\mbox{dist}(\proj{\mathcal{V}_{s_\star }}(x),\mathcal{F}_{s_\star }).
		\end{equation}
		To translate the above bound to linear infeasibility $\mathcal{A}(x)-b$ and conic infeasibility $\conefeas{x}$, we note that $x= \proj{\mathcal{V}_{s_\star }}(x)+\proj{\mathcal{V}_{s_\star }^\perp}(x)$ and $x=\conpart{x}+\conefeas{x}$\footnote{Recall
			$\conpart{x}=\proj{\mathcal{K}}(x)$ and $x=\conpart{x}+\conefeas{x}$}. With these two decompositions,
		and tad more algebra,
		we arrive at the theorem.
	\end{proof}

	To go further, we need to bound the following two terms in terms of $\epsilon_{\mbox{\tiny opt}}(x)$,
	$\mathcal{A}(x)-b$, and $\conefeas{x}$:
	\begin{enumerate}
		\item The distance to the space $\mathcal{V}_{s_\star }$: $\proj{\mathcal{V}_{s_\star }^\perp}(\conpart{x})$.
		\item The term $\mbox{dist}(\proj{\mathcal{V}_{s_\star }}(\conpart{x}),\mathcal{F}_{s_\star })$.
	\end{enumerate}
	In Section \ref{sec: conicexamples},
	we show how to bound both terms for the special cases of LP, SOCP, SDP, and
	more general conic programs \eqref{opt: primalcone} where $\mathcal{K}$ is a finite product of
	LP, SOCP, or SDP cones. A quick summary of results can be found in Table \ref{tb: PAndconstantAndBoundf}.

	As we shall see in Section \ref{sec: conicexamples},
	the term $\mbox{dist}(\proj{\mathcal{V}_{s_\star }}(\conpart{x}),\mathcal{F}_{s_\star })$ is usually zero.
	Thus the major challenge is bounding $\twonorm{\proj{\mathcal{V}_{s_\star }^\perp}(\conpart{x})}$\footnote{Bounding this term is in some sense necessary in establishing an error bound. See more discussion in Section \ref{sec: lowerbound} in the appendix.}.
	Note that under this condition, for feasible $x$ of \eqref{opt: primalcone}, the bound  \eqref{eqn: framework} reduces to
	\begin{equation}
		\begin{aligned}\label{eqn: frameworkSimplerSituation}
			\mbox{dist}(x,\xset) & \leq (1+\gamma\sigma_{\max}(\mathcal{A}))\twonorm{\proj{\mathcal{V}_{s_\star }^\perp}(x)}.
		\end{aligned}
	\end{equation}
	If the solution set $\xset$ is a singleton, then from Lemma \ref{lem: linearegularitystrictcomplementarity}, we know
	$\gamma=\frac{1}{\sigma_{\min}(\mathcal{A}_{\mathcal{V}_{s_\star }})}$, and we encounter a condition number like quantity
	$ \frac{ \sigma_{\max}(\mathcal{A})}{\sigma_{\min}(\mathcal{A}_{\mathcal{V}_{s_\star }})}$ in \eqref{eqn: frameworkSimplerSituation}. Depending
	on applications, the condition number may scale with the problem dimension but the bound is still tight as the following example shows.

	\begin{example}
		Consider an SDP with $C= -\mathbf 1\ones^\top$, where $\mathbf 1 \in {\mbox{\bf R}}^n$ is the all one vector, $\mathcal{A} = \mathop{\bf diag}(\cdot)$, and
		$b = \mathbf 1$. This is a simplification of the SDP for $\mathbb{Z}_2$ synchronization \cite{bandeira2018random,ding2020regularity}. For this
		SDP, it is easily verified that the unique optimal solution is $\mathbf 1 \mathbf 1^\top$ and dual strict complementarity holds with dual optimal slack $S_\star=-\mathbf 1\ones^\top +nI$. The condition number like quantity
		$\frac{ \sigma_{\max}(\mathcal{A})}{\sigma_{\min}(\mathcal{A}_{\mathcal{V}_{s_\star }})}$
		in this case is $\sqrt{n}$ which
		does scale with the dimension $n$. However, if in \eqref{eqn: frameworkSimplerSituation} we let $x = I_n$, the identity matrix which is feasible,  then
		the LHS and RHS of \eqref{eqn: frameworkSimplerSituation}
		are $\sqrt{n^2-n}$ and $\sqrt{n-1}+\sqrt{n^2-n}$ respectively. Thus the bound is actually tight for large $n$.
	\end{example}

	\section{Application: error bounds}\label{sec: conicexamples}
	In this section, we show how to use the framework established in Section \ref{sec: The strict complementary slackness approach}
	to analyze conic programs \eqref{opt: primalcone} over
	the nonnegative orthant, the second order cone, the set of positive semidefinite matrices, or a finite product
	of these cones. Our analysis has two main steps:
	\begin{enumerate}
		\item Identify and write out the complementary face $\mathcal{F}_{s_\star }$ and $\mathcal{V}_{s_\star }$.
		\item Bound the term $\twonorm{\proj{\mathcal{V}^\perp_{s_\star }}(x_+)}$ via a function $f(\inprod{s_\star }{\conpart{x}},\norm{x})$ ,
		called the violation of complementarity,
		using the explicit structure of $\mathcal{V}_{s_\star }$.
	\end{enumerate}

	We summarize the findings of this section as the following lemma and corollary.
	Refer to Table \ref{tb: PAndconstantAndBoundf} for a quick summary of the results.
	\begin{lemma}\label{lem: boundPVperpx+}
		Define the complementarity error $\epsilon(x)=\inprod{s_\star }{x}$. Suppose strong duality holds.
		The quantity $\twonorm{\proj{\mathcal{V}^\perp_{s_\star }}(x_+)}$ can be bounded by several
		different functions $f(\inprod{s_\star }{\conpart{x}},\norm{x})$, which we call the violation of complementarity,
		depending on the slack vector $s_\star $ and the cone $\mathcal{K}$.
		The first two trivial cases are the following.

		\begin{enumerate}
			\item[1.] If $s_\star  =0$, then $\norm{\proj{\mathcal{V}^\perp_{s_\star }}(x_+)}=0=:f_{0}(\epsilon(\conpart{x}))$.
			\item[2.] If $s_\star  \in \mathop{\bf int}(\mathcal{K}^*)$, then $\twonorm{\proj{\mathcal{V}^\perp_{s_\star }}(x_+)}=\twonorm{x_+}\leq c_\star \epsilon(\conpart{x}) =:f_{\mathop{\bf int}}(\epsilon(\conpart{x}))$,
			where $c_\star = \sup_{x\in \mathcal{K}}\frac{1}{\inprod{s_\star }{\frac{x}{\twonorm{x}}}}<\infty$.
		\end{enumerate}
		Moreover, for the nontrivial case $s_\star \in \partial \mathcal{K}^*/ \{0\}$, we have the following bounds:

		\begin{enumerate}
			\item[3.] $\mathcal{K} = {\mbox{\bf R}}_+^n$: $\twonorm{\proj{\mathcal{V}^\perp_{s_\star }}(x_+)}\leq \frac{1}{s_{\min>0}}\epsilon(\conpart{x})=:f_{\tiny {\mbox{\bf R}}_+^n}(\epsilon(\conpart{x})),$ where $s_{\min>0}$ is the smallest nonzero element of $s_\star $.
			\item[4.] $\mathcal{K} = \SOC{n}$: $\twonorm{\proj{\mathcal{V}_{s_\star }^\perp}(x_+)}

			\leq\sqrt{2\sqrt{2}\frac{\twonorm{x}\epsilon(\conpart{x})}{\twonorm{s_\star }}} =:f_{\tiny \SOC{n}}(\epsilon(\conpart{x}),\twonorm{x})$.
			\item[5.] $\mathcal{K} = \sym_+^n$:	$\fronorm{\proj{\mathcal{V}_{S_\star}^\perp}(\conpart{X}) } \leq  \frac{\epsilon(\conpart{X})}{T} +
			\sqrt{2\frac{\epsilon(\conpart{X})}{T} \opnorm{X}}=:f_{\tiny \sym_+^{n}}(\epsilon(\conpart{X}),\opnorm{X})$. Here $T$ is the smallest nonzero eigenvalue of $S_\star$.
		\end{enumerate}
	\end{lemma}
	\begin{proof}
		Let us first consider the two trivial cases (1) $s_\star  =0$ and (2) $s_\star  \in \mathop{\bf int}(\mathcal{K}^*)$.
		These cases are excluded whenever $c$ and $b$ are both nonzero.
		In the first case, $\mathcal{V}^\perp_{s_\star }=\{0\}$,
		and we simply have $\norm{\proj{\mathcal{V}^\perp_{s_\star }}(x_+)}=0$.
		In the second case, we have $\mathcal{V}^\perp_{s_\star }=\mathbf{E}$, and
		$\norm{\proj{\mathcal{V}^\perp_{s_\star }}(x_+)}=\norm{x_+}\leq c_\star \inprod{s_\star }{x_+}$,
		where $c_\star = \sup_{x\in \mathcal{K}}\frac{1}{\inprod{s_\star }{\frac{x}{\norm{x}}}}<\infty$.
		We defer the proof for the other cases to Section \ref{sec: LP}, \ref{sec: SOCP},
		and Section \ref{sec: SDP} for LP, SOCP, and SDP respectively.
	\end{proof}

	Combining Lemma \ref{lem: boundPVperpx+}, and Theorem \ref{thm: basicframework}, we reach the following corollary.
	The quantity $\mbox{dist}(\proj{\mathcal{V}_{s_\star }}(\conpart{x}),\mathcal{F}_{s_\star })$ can be verified to be zero for
	the two trivial cases by noting (i) the complementary space $\mathcal{V}_{s_\star }=\mathbf{E}$ and $\mathcal{F}_{s_\star }=\mathcal{K}$ for the case $s_\star =0$, and (ii) the complementary space $\mathcal{V}_{s_\star }=\{0\}$ and $\mathcal{F}_{s_\star }$ is a closed cone for the case $s_\star  \in \mathop{\bf int}(\mathcal{K}^*)$.

	It is also zero for other three cases as shown in Sections \ref{sec: LP}--\ref{sec: SDP}.
	\begin{corollary}\label{cor: errorboundLPSOCPSDPandOthers}
		Suppose strong duality and dual strict complementarity hold,
		and one of the five cases in Lemma \ref{lem: boundPVperpx+} pertains.
		Then there exists constants $\gamma,\gamma'$ so that for all $x\in \mathbf{E}$,
		\begin{equation}
			\begin{aligned}\label{eqn: errorboundLPSOCPSDPandOthers}
				\mbox{dist}(x,\xset) & \leq\kappa f(\epsilon(\conpart{x}),\norm{x})+\gamma \twonorm{\mathcal{A}(x)-b}\\
				&+\kappa \twonorm{\proj{\mathcal{V}^\perp_{s_\star }}(\conefeas{x})}+\gamma'\twonorm{\proj{\mathcal{V}_{s_\star }}(\conefeas{x})},\\
			\end{aligned}
		\end{equation}
		where the condition number $\kappa = 1+\gamma\sigma_{\max}(\mathcal{A})$.
		In particular, when $\xset$ is a singleton, then $\gamma'=0$ and $\gamma = \frac{1}{\sigma_{\min}(\mathcal{A}_{\mathcal{V}_{s_\star }})}$.
		Here the formula for $f(\epsilon(x),\norm{x})$ can be found in Lemma \ref{lem: boundPVperpx+} for each of the different cases, and we can further decompose the complementarity error
		$\epsilon(\conpart{x})=\epsilon_{\mbox{\tiny opt}}(x) +\inprod{y_\star }{b-\mathcal{A}(x)}- \inprod{s_\star }{\conefeas{x}}$ using $x=\conpart{x}+\conefeas{x}$.
	\end{corollary}
	A few remarks regarding the lemma and the corollary are in order.

	\begin{remark}[Global and local error bound]\label{rmk: localSOCPbound}
		Note the formula for the violation of complementarity  $f(\epsilon(x),\norm{x})$
		uses $\twonorm{x}$ for SOCP and $\opnorm{X}$ for SDP.
		Hence the bound \eqref{eqn: errorboundLPSOCPSDPandOthers} for these two cases
		does not quite align with the form of the error bound \eqref{eq: errorbound} we seek.
		To eliminate the dependence on this norm (by bounding the norm),
		either of the following conditions suffices:
		\begin{itemize}
			\item  $\norm{x}\leq B$ for some constant $B$,
			\item  $\max\{\epsilon_{\mbox{\tiny opt}}(x)\,,\norm{\mathcal{A} x-b}\,,\norm{\conefeas{x}}\}\leq \bar c$ for some constant $\bar c$.
		\end{itemize}
		The second requirement combined with \eqref{eqn: errorboundLPSOCPSDPandOthers}
		for SOCP (SDP) implies $\twonorm{x}$ ($\opnorm{X}$) is bounded by some $\bar B$ depending on $\bar c$ but independent of $x$ ($X$).
		We may then replace the term $\twonorm{x}$ ($\opnorm{X}$) by $B$ or $\bar B$ in $f$.
		Requiring either of these two conditions produces a \emph{local} error bound.
		Interestingly, no such condition on the norm is not necessary for the LP case and the other two trivial cases;
		hence the bounds \eqref{eqn: errorboundLPSOCPSDPandOthers} in these cases are \emph{global} error bounds.
	\end{remark}

	\begin{remark}[Value of $p$ and estimate of $c_i$ in \eqref{eq: errorbound}]
		Ignoring the term $f$, the bound \eqref{eqn: errorboundLPSOCPSDPandOthers} in Lemma \ref{lem: boundPVperpx+} is linear in
		$\epsilon_{\mbox{\tiny opt}}(x),\norm{\mathcal{A} x-b},\norm{\conefeas{x}}$.
		For LP and the two trivial cases,
		$f$ is linear in $\epsilon(\conpart{x})$,
		hence the error bound \eqref{eq: errorbound} holds with exponent $p=1$.
		For SOCP and SDP, the square root of $\epsilon(\conpart{x})$ appears in $f$,
		hence \eqref{eqn: errorboundLPSOCPSDPandOthers} gives an error bound
		of the form \eqref{eq: errorbound} with exponent $p=2$,
		under the assumption $\norm{x}\leq B$.

		Now let's consider the constants $c_1$, $c_2$, and $c_3$ in the error bound \eqref{eq: errorbound}. It is cumbersome to estimate these for general $x$;
		here, suppose $x$ is feasible.
		For the SOCP and SDP cases, also suppose $\norm{x}\leq B$.
		Then the bound \eqref{eqn: errorboundLPSOCPSDPandOthers} reduces to
		\begin{equation}
			\begin{aligned}\label{eqn: errorboundLPSOCPSDPandOthersFeasible}
				\mbox{dist}(x,\xset) & \leq (1+\gamma\sigma_{\max}(\mathcal{A}))f(\epsilon_{\mbox{\tiny opt}}(x),B).
			\end{aligned}
		\end{equation}
		The resulting constant $c_1$ for $\epsilon_{\mbox{\tiny opt}}(x)$ in the error bound \eqref{eq: errorbound}
		for each of the five cases appears in Table \ref{tb: PAndconstantAndBoundf}.
	\end{remark}
	\begin{table}
		\centering
		\begin{tabular}{cccccc}
			\hline
			Conic                                      & $s_\star =$ & $s_\star  \in  $ & \multirow{2}{*}{LP}  & \multirow{2}{*}{SOCP} &  \multirow{2}{*}{SDP} \\
			program                                         & $0$ & $  \mathop{\bf int}(\mathcal{K}^*)$ &   & & \\
			\hline
			violation of                    	& \multirow{3}{*}{0}
			&  \multirow{3}{*}{$c_\star \epsilon(\conpart{x})$} &  \multirow{3}{*}{$\frac{\epsilon(\conpart{x})}{s_{\min>0}}$}
			&   \multirow{3}{*}{$\sqrt{{\frac{2\sqrt{2}\twonorm{x}\epsilon(\conpart{x})}{\twonorm{s_\star }}}}$}
			&  \multirow{3}{*}{$\frac{\epsilon(\conpart{X})}{T} +
				\sqrt{\frac{2\epsilon(\conpart{X})\opnorm{X}}{T}}$}  \\
			complementarity               &  &  &   & & \\
			$f(\epsilon(\conpart{x}),\norm{x})$    & &  &   & & \\
			\hline
			exponents $p,p'$ in	            &  \multirow{2}{*}{1}  &  \multirow{2}{*}{1} &  \multirow{2}{*}{1}  &  \multirow{2}{*}{2} &  \multirow{2}{*}{2} \\
			\eqref{eq: errorbound} and \eqref{eq: sensitivity} &   & & & & \\
			\hline
			constant $c_1$ for $\epsilon_{\mbox{\tiny opt}}(x)$	                    & 0  & $\kappa c_\star $ & $\frac{\kappa}{s_{\min>0}}$ & $2\sqrt{2}\kappa^2\frac{B}{\twonorm{s_\star }}$ &
			$\kappa^2\frac{8B}{T}$ \\
			\hline
		\end{tabular}
		\caption{This table presents the bound $f(\epsilon(\conpart{x}),\norm{x})$  for $\twonorm{\proj{\mathcal{V}_{s_\star }}(\conpart{x})}$,
			the power $p$ in \eqref{eq: errorbound} and \eqref{eq: sensitivity}, and an estimate of $c_1$ for \emph{feasible} $x$ for different cases based on $s_\star $ and $\mathcal{K}$.
			For $s_\star  \in \mathop{\bf int}(\mathcal{K}*)$, the quantity $c_\star = \sup_{x\in \mathcal{K}}\frac{1}{\inprod{s_\star }{\frac{x}{\norm{x}}}}<\infty$.
			For LP, the quantity $s_{\min>0}$ is the smallest nonzero element of $s_\star $.
			For SDP, the quantity $T$ is the smallest nonzero eigenvalue of $S_\star$.
			The condition number $\kappa = 1+\gamma\sigma_{\max}(\mathcal{A})$ and is $1+\frac{\sigma_{\max}(\mathcal{A})}{\sigma_{\min}(\mathcal{A}_{\mathcal{V}_{s_\star }})}$ when
			$\xset$ is a singleton. We assume $\twonorm{x}\leq B$ for SOCP and $\opnorm{X}\leq B$ for SDP. We also assume $\frac{\epsilon(\conpart{X})}{T} \leq
			\sqrt{2\frac{\epsilon(\conpart{X})B}{T}}$ for SDP.
		} \label{tb: PAndconstantAndBoundf}
	\end{table}

	\begin{remark}[Conditions for LP]\label{rmk: LPcase}
		Recall that for linear programming,
		dual strict complementarity is the same as strict complementarity, which always holds under strong duality \cite{goldman1956theory}.
		Hence we need not explicitly require the dual strict complementarity condition.
		Also the compactness condition for strong duality in Section \ref{sec: assumptions}
		can be dropped if we establish Theorem \ref{thm: basicframework} using Hoffman's lemma \cite{hoffman1952approximate} instead of Lemma \ref{lem: linearRegularity}.
	\end{remark}

	\begin{remark}[Finite product of cones]\label{rmk: ProductOfCones}
		Error bounds for a conic program whose cone is a finite product
		of ${\mbox{\bf R}}_+^n, \SOC{n}$, and $\sym_+^n$ can be
		established by bounding the term $\twonorm{\proj{\mathcal{V}_{s_\star }}(\conpart{x})}$
		by a sum of te correponding $f$s in	Lemma \ref{lem: boundPVperpx+}.
		We omit the details.
	\end{remark}

	Next, we prove the bound $f$, violation of complementarity, in Lemma \ref{lem: boundPVperpx+}
	for the LP, SOCP, and SDP comes by following the aforementioned procedure:
	(i) identify and write out $\mathcal{F}_{s_\star }$ and $\mathcal{V}_{s_\star }$, and (ii) bound the term $\twonorm{\proj{\mathcal{V}^\perp_{s_\star }}(x_+)}$.

	\subsection{Linear programming (LP)}\label{sec: LP}
	In linear programming, the cone $\mathcal{K}={\mbox{\bf R}}_+^n = \{x\in {\mbox{\bf R}}^n \mid x_i\geq 0,\,\forall \,i =1,\dots, n\}$.

	\paragraph{Identify $\mathcal{F}_{s_\star }$ and $\mathcal{V}_{s_\star }$.}For a particular dual optimal solution $(y_\star ,s_\star )$, satisfying dual strict complementarity, the complementary face
	$\mathcal{F}_{s_\star }=\{x \in {\mbox{\bf R}}_+^n \mid x_i = 0,\text{ for all } (s_\star )_i>0\}$, and the complementary space  $\mathcal{V}_{s_\star }=\{x\in {\mbox{\bf R}}^n \mid x_i = 0 \text{ for all } (s_\star )_i>0\}$.
	Hence, the term $\mbox{dist}(\proj{\mathcal{V}_{s_\star }}(x_+), \mathcal{F}_{s_\star })$ is simply zero as $\proj{\mathcal{V}_{s_\star }}(x_+)\in \mathcal{F}_{s_\star }$.

	\paragraph{Bound the term $\twonorm{\proj{\mathcal{V}^\perp_{s_\star }}(x_+)}$.} For the term $\twonorm{\proj{\mathcal{V}^\perp_{s_\star }}(x_+)}$, denote $I_{s_\star } =\{i\mid (s_\star )_i>0\}$, $I^c_{s_\star }=\{1,\dots,n\}-I_{s_\star }$, and $s_{\min>0} = \min_{i\in I_s} s_i$, we have
	\begin{equation}\label{eqn: LPdistanceToinnerproduct}
		\begin{aligned}
			\twonorm{\proj{\mathcal{V}^\perp_{s_\star }}(x_+)}=\twonorm{(x_+)_{I_{s_\star }}} & \leq  \onenorm{(x_+)_{I_{s_\star }}}
			&\leq \frac{1}{s_{\min>0}}\inprod{s_\star }{x_+}.\\
		\end{aligned}
	\end{equation}
	Hence, Lemma \ref{lem: boundPVperpx+} for the LP case is established.
	\subsection{Second order programming (SOCP)}\label{sec: SOCP}
	In second order cone programming, the cone $\mathcal{K}$ is $\SOC{n} = \{x=(x_{1:n},x_{n+1})\mid \twonorm{x_{1:n}}\leq x_{n+1} ,\, x_{1:n}\in {\mbox{\bf R}}^n, \, x_{n+1} \in {\mbox{\bf R}}\}$.

	\paragraph{Identify $\mathcal{F}_{s_\star }$ and $\mathcal{V}_{s_\star }$.} Given a dual solution $s_\star  = (\ssoll{1:n},\ssoll{n+1})\in (\SOC{n})^* = \SOC{n}$ satisfying dual strict complementarity,

	the complementary face is defined as $\mathcal{F}_{s_\star } = \{x\mid \inprod{\ssoll{1:n}}{x_{1:n}}+x_{n+1}\ssoll{n+1}=0,; x\in \SOC{n}\}$.
	We can further simplify this expression as
	\[
	\mathcal{F}_{s_\star } = \{\lambda (-\ssoll{1:n}, \ssoll{n+1})\mid \lambda\geq 0\}.
	\]
	The complementary space $\mathcal{V}_{s_\star }$ for the nontrivial case
	$s_\star  \in \partial \SOC{n} \setminus (0,0)$
	is simply
	\[\mathcal{V}_{s_\star }=\mbox{span}\{ (-\ssoll{1:n},\ssoll{n+1})\}.
	\]

	For the dual optimal solution $s_\star $, denote $\checkssol=\frac{1}{\norm{s_\star }}(-\ssoll{1:n},\ssoll{n+1})$. Note that  the term $\mbox{dist}(\proj{\mathcal{V}_{s_\star }}(x _+), \mathcal{F}_{s_\star } )$ is again simply zero as $\proj{\mathcal{V}_{s_\star }}(x_+) \in \mathcal{F}_{s_\star }$.

	\paragraph{Bound the term $\twonorm{\proj{\mathcal{V}^\perp_{s_\star }}(x_+)}$.}
	We now turn to analyze $\proj{\mathcal{V}^\perp}(x_+)$, which can be written explicitly as
	\begin{equation}
		\begin{aligned}
			\proj{\mathcal{V}^\perp}(x_+) & =
			x_+- \inprod{x_+}{\checkssol}\checkssol.
		\end{aligned}
	\end{equation}
	Now introduce the shorthand $\bar{\epsilon}(\conpart{x}) = \inprod{x_+}{\frac{s_\star }{\norm{s_\star }}}= \inprod{x_{+,1:n}}{\frac{\ssoll{1:n}}{\norm{s_\star }}}+x_{+,n+1}\frac{\ssoll{n+1}}{\norm{s_\star }}$. The norm square of $\proj{\mathcal{V}^\perp}(\mathbf{x}_+)$ can be written as
	\begin{equation}\label{eqn: SOCPdistanceToinnerproduct}
		\begin{aligned}
			\twonorm{\proj{\mathcal{V}^\perp}(x_+)}^2 & =  \twonorm{x_+}^2 - \inprod{x_+}{\checkssol}^2 \\
			& =  \twonorm{x_+}^2 +x_{+,n+1}^2 -\left(-\inprod{x_{+,1:n}}{\ssoll{1:n}} +x_{+,n+1}\frac{\ssoll{n+1}}{\norm{s_\star }}\right)^2 \\
			& \overset{(a)}{\leq} 2x_{+,n+1}^2 -(2x_{+,n+1}\frac{\ssoll{n+1}}{\norm{s_\star }}-\bar{\epsilon}(\conpart {x}))^2

			\overset{(b)}{\leq}  -\bar{\epsilon}^2(\conpart{x}) +2\sqrt{2}x_{+,n+1}\bar{\epsilon}(\conpart{x}),
		\end{aligned}
	\end{equation}
	where in step $(a)$, we use the fact that $x_+\in \SOC{n}$ and the definition of $\epsilon$. In step $(b)$, we use the fact $s_\star \in \partial{\SOC{n}}$.
	Lemma \ref{lem: boundPVperpx+} for the SOCP case is established by noting $x_{+,n+1}\leq \norm{\conpart{x}}\leq \norm{x}$.

	\subsection{Semidefinite programming (SDP)}\label{sec: SDP}

	In semidefinite programming, the cone $\mathcal{K}$ is $\sym_+^n =\{X\in \sym^n\mid X\succeq 0 \}$. Note that we use capital letter $X$ and $S$ for matrices.

	\paragraph{Identify $\mathcal{F}_{s_\star }$ and $\mathcal{V}_{s_\star }$.}
	For a dual optimal solution $(y_\star ,S_\star)$ with
	$S_\star = C-\mathcal{A} y_\star  \succeq 0$ satisfying dual strict complementarity,
	the complementary face $\mathcal{F}_{S_\star} :=
	\{X\mid \inprod{X}{S_\star}=0, X\succeq 0\} = \{X\mid X = VRV^\top, R\in \sym^r,R\succeq 0\}$, where $\mathop{\bf rank}(S_\star)=n-r$,
	and $V\in {\mbox{\bf R}} ^{n \times r}$ is a matrix with orthonormal columns that span $\mathop{\bf range}(S_\star)$.
	In this case, the complementary space  $\mathcal{V}_{S_\star} = \{VRV^\top \mid R \in \sym ^r\}$.
	We note that  the term $\mbox{dist}(\proj{\mathcal{V}_{S_\star}}(X_+), \mathcal{F}_{S_\star})$
	is again zero as $\proj{\mathcal{V}_{S_\star}}(X_+) \in \mathcal{F}_{S_\star}$.

	\paragraph{Bound the term $\fronorm{\proj{\mathcal{V}^\perp_{s_\star }}(X_+)}$.}
	We now turn to bound the term $\fronorm{\proj{\mathcal{V}_{S_\star}^\perp}(X_+)}$.
	We utilize Lemma \ref{lem: XSsmallXliveinS} \cite[Lemma 4.3]{ding2019optimal}
	to bound the term
	$\fronorm{\proj{\mathcal{V}_{S_\star}^\perp}(X_+)}$
	with $S = S_\star$, and use the observation that $\opnorm{X_+}\leq \opnorm{X}$.
	\begin{lemma}\label{lem: XSsmallXliveinS}
		Suppose $X,S\in \sym^{n}$ are both positive semidefinite.
		Let $V\in {\mbox{\bf R}}^{n\times r}$ be the matrix formed by the eigenvectors
		with the $r$ smallest eigenvalues of $S$ and define $\mathcal{V} = \mathop{\bf range}(V)$.
		Let $\epsilon =\mathop{\bf tr}(XS)$.
		If $T = \lambda_{n-r}(S)>0$, then
		\[
		\fronorm{\proj{\mathcal{V}^\perp}(X) } \leq  \frac{\epsilon}{T} +
		\sqrt{2\frac{\epsilon}{T} \opnorm{X}}
		\quad\text{and}\quad
		\nucnorm{\proj{\mathcal{V}}(X)
		} \leq  \frac{\epsilon}{T} + 2\sqrt{r\frac{\epsilon}{T} \opnorm{X}}.
		\]
	\end{lemma}

	\section{Application: sensitivity of solution}\label{sec: fromerrorboundtosensitivityofsolution}
	As discussed in the introduction, to study the sensitivity of the solution,
	we consider a solution $\xsol'$ of the perturbed problem
	\begin{equation}\tag{$\mathcal{P'}$}
		\begin{aligned}\label{opt: primalconeperturbed}
			& \underset{x}{\text{minimize}}
			& & \inprod{c'}{x} \\
			& \text{subject to} & &  \mathcal{A}' x = b' ,\\
			& & & x\in \mathcal{K}.
		\end{aligned}
	\end{equation}
	where the problem data $(\mathcal{A}',b',c')= (\mathcal{A},b,c) + (\Delta \Amap, \Delta b,\Delta c)$ for some small perturbation $\Delta = (\Delta \Amap, \Delta b,\Delta c)$,
	and ask how the distance $\twonorm{\xsol'-\xsol}$ changes according to $\Delta$.

	Note that once the error bound \eqref{eq: errorbound} is established,
	we can understand the sensitivity of the solution by estimating
	the suboptimality, linear and conic infeasibility of the new solution $\xsol'$
	with respect to the original problem \eqref{opt: primalcone}
	via the perturbation $\Delta$.
	Following this strategy, we prove the following theorem:
	\begin{theorem}\label{thm: sensitivityOfsolution}
		Suppose the primal and dual Slater's condition holds for some $(x_0,y_0)$, and the map $\mathcal{A}$ is surjective. For any small enough $\varepsilon>0$, there is some constant $\bar{c}$, such that for any optimal $\xsol'$ of \eqref{opt: primalconeperturbed}, and all $\norm{\Delta}:= \opnorm{\Delta \Amap} +\twonorm{\Delta b}+\twonorm{\Delta c}\leq \varepsilon$, we have
		\[
		\max\{\epsilon_{\mbox{\tiny opt}}(\xsol'),\twonorm{\mathcal{A}(\xsol')-b}\}\leq \bar{c}\norm{\Delta}.
		\]
		Hence if \eqref{eq: errorbound} holds, then \eqref{eq: sensitivity} holds with $p=p'$.
	\end{theorem}
	To facilitate the proof, we define the smallest nonzero singular value of $\mathcal{A}$ as
	$\sigma_{\min>0}(\mathcal{A})= \min_{\twonorm{x}=1,\\ x\perp {\mathop {\bf nullspace}}(\mathcal{A})}\twonorm{\mathcal{A}(x)}$,
	and the pseudoinverse of
	$\mathcal{A}'$ as $(\mathcal{A}')^\dagger (y) = \mathop{\rm argmin}_{\mathcal{A}'(x)=y}\twonorm{x}$.
	\begin{proof}
		Consider any solution $\xsol'$ to the problem \eqref{opt: primalconeperturbed}.
		Suppose the following assumptions are satisfied (proved in Appendix \ref{sec: apprndixfromerrorboundtosensitivityofsolution}):
		\begin{enumerate}
			\item \emph{Primal and dual Slater's condition for \eqref{opt: primalconeperturbed}}:
			there exist a primal $x_0'$ and dual $y_0'$ solution feasible for problem
			\eqref{opt: primalconeperturbed} and its dual
			that satisfy $\min\{\mbox{dist}(x_0',\partial \mathcal{K}),\mbox{dist}(c-\mathcal{A}^*y_0',\partial(\mathcal{K}^*))\}>\rho$ for some $\rho$ independent of $\Delta$,
			and $\max \{\twonorm{x_0-x_0'},\twonorm{y_0-y_0'}\}<\xi$ for some $\xi$ independent of $\Delta$.
			\item \emph{Boundedness of primal solutions of \eqref{opt: primalconeperturbed}}: There is some $B>0$ independent of $\Delta$ such that any solution $\xsol$ to \eqref{opt: primalconeperturbed}
			satisfies $\twonorm{\xsol}\leq B$.
		\end{enumerate}
		Let us start with the linear infeasibility $\mathcal{A} (\xsol')-b$. Using the linear feasibility of $\xsol'$, $\mathcal{A}'\xsol'=b'$, w.r.t. \eqref{opt: primalconeperturbed}, we have
		\begin{equation}
			\begin{aligned}\label{eqn: lfeasperturbed}
				\mathcal{A}'(\xsol') = b' & \implies (\mathcal{A} +\Delta \Amap)\xsol' = b+\Delta b \implies \mathcal{A}\xsol'-b =\Delta b -\Delta \Amap \xsol' \\
				&\implies \twonorm{\mathcal{A} \xsol'-b}\leq \twonorm{\Delta b}+\opnorm{\Delta \Amap}B.
			\end{aligned}
		\end{equation}
		This shows $\twonorm{\mathcal{A} \xsol'-b}\leq c\norm{\Delta}$ for any $c>B+1$.

		Next, consider $\epsilon_{\mbox{\tiny opt}}(\xsol')$. We would like to use the optimality of $\xsol'$ to \eqref{opt: primalconeperturbed} and compare it against $\xsol$.
		However, since
		$\xsol$ is not necessarily feasible for \eqref{opt: primalconeperturbed}, we need more subtle reasoning.
		Consider
		$\hat{x} :\,= (1-\alpha)\left(\xsol + (\mathcal{A}')^\dagger(\Delta b-\Delta \Amap\xsol)\right)+\alpha x_0'$ with $\alpha = \frac{\twonorm{(\mathcal{A}')^\dagger(\Delta b-\Delta \Amap\xsol)}}{\rho +\twonorm{(\mathcal{A}')^\dagger(\Delta b-\Delta \Amap\xsol)}}
		$. Here $(\mathcal{A}')^{\dagger}$ exists and has largest singular value at most $\frac{2}{\sigma_{\min>0}(\mathcal{A})}$ as long as $\sigma_{\max}({\Delta \Amap})\leq \frac{\sigma_{\min>0}(\mathcal{A})}{2}$. We have
		$\twonorm{\hat{x}}\leq B_1$ for some $\Delta$ independent $B_1$ as $\twonorm{x_0-x_0'}<\xi$.  Note that  $\hat{x}\in \mathcal{K}$ since
		\[
		\hat{x} = (1-\alpha) \underbrace{\xsol}_{\in \mathcal{K}} + \alpha \underbrace{\left(x_0' + \frac{1-\alpha}{\alpha} (\mathcal{A}')^\dagger(\Delta b-\Delta \Amap\xsol)\right)}_{\in \mathcal{K} \;\text{since}\;
			\twonorm{\frac{1-\alpha}{\alpha} (\mathcal{A}')^\dagger(\Delta b-\Delta \Amap\xsol)}\leq \rho },
		\]
		if $\alpha >0$. The case of $\alpha =0$ is trivial.
		We also know $\hat{x}$ is feasible with respect to the linear constraints of \eqref{opt: primalconeperturbed}:
		\begin{equation}
			\begin{aligned}\label{eqn: optgfeas}
				\mathcal{A}'(\hat{x})  & =(1-\alpha)\mathcal{A}'(\xsol + (\mathcal{A}')^\dagger(\Delta b-\Delta \Amap\xsol)) + \alpha \mathcal{A}'x_0' \\
				&= (1-\alpha)(b+\Delta \Amap(\xsol)+\Delta b -\Delta \Amap\xsol) +\alpha b' = b'.
			\end{aligned}
		\end{equation}
		Note by construction $\hat{x}- \xsol = \alpha (x_0' - \xsol -\alpha (\mathcal{A}')^\dagger(\Delta b-\Delta \Amap\xsol))=:\Delta x$
		with $\alpha = \frac{\twonorm{(\mathcal{A}')^\dagger(\Delta b-\Delta \Amap\xsol)}}{\rho +\twonorm{(\mathcal{A}')^\dagger(\Delta b-\Delta \Amap\xsol)}}
		$. Hence $\twonorm{\Delta x }\leq c'\left(\twonorm{\Delta b}+\opnorm{\Delta \Amap}\right)$ for some constant $c'$. Now using the optimality of $\xsol'$, we have
		\begin{equation}
			\begin{aligned}\label{eqn: optgap}
				c'\xsol' \leq c'\hat{x} \implies \epsilon_{\mbox{\tiny opt}}(\xsol') = c^\top \xsol' - c ^\top \xsol \leq \Delta c^\top (\hat{x}-\xsol')+c^\top \Delta x.
			\end{aligned}
		\end{equation}
		Hence $\epsilon_{\mbox{\tiny opt}}(\xsol') \leq \bar{c}\norm{\Delta}$ for large enough $\bar{c}$ using $\twonorm{\xsol'}\leq B$.
	\end{proof}

	\section{Discussion}\label{sec: discussion}
	Using the framework established in Section \ref{sec: The strict complementary slackness approach},
	we have shown an error bound of the form \eqref{eq: errorbound} and
	a bound on the sensitivity of the solution with respect to problem data \eqref{eq: sensitivity}
	for a broad class of problems: LP, SOCP, and SDP,
	and conic programs for which the cone is a finite product of the LP, SOCP, and SDP cones.
	Let us now compare the results we have obtained with the literature on error bounds and sensitivity of solution.

	\paragraph{Error bound}
	The celebrated results of \cite{hoffman1952approximate} show that the
	error bound is linear for linear programming: in \eqref{eq: errorbound},
	the exponent $p=1$.
	%
	%
	%
	The work of Sturm \cite[Section 4]{sturm2000error} shows that under strict complementarity and compactness of the solution set,
	SDPs satisfy a quadratic error bound: $p=2$ in \eqref{eq: errorbound}.
	Sturm also discusses the exponent of $\mbox{dist}(x,\xset)$ without strict complementarity:
	it can be bounded by $2^d$ where $d$ is the \emph{singularity degree},
	which is at most $n-1$~\cite[Lemma 3.6]{sturm2000error}.
	A recent result shows that $p=2$  under dual strict complementarity type conditions when the cone $\mathcal{K}$ is an \emph{amenable cone},
	which includes all symmetric cones~\cite{lourencco2019amenable}.
	When the cone $\mathcal{K}$ is defined as a semialgebraic set (LP, SOCP, SDP are special cases),
	Drusvyatskiy, Ioffe, and  Lewis \cite[Corrollary 4.8]{drusvyatskiy2016generic} showed that for generic cost vector $c$,
	the exponent $p$ is always $2$ when the inequality is restricted to feasible $x$.
	We note that the proofs for these bounds do not provide estimates for $c_i$.
	In our framework, estimates of $c_i$ (expressed in terms of the primal and dual solution)
	can be obtained supposing the primal solution is unique.

	\paragraph{Sensitivity of solution}
	When $p'=1$, the bound describing the sensitivity of the solution \eqref{eq: sensitivity}
	is also called stability or metric regularity \cite[Definition A.6]{ruszczynski2011nonlinear},
	discussed in detail in \cite[Appendix A]{ruszczynski2011nonlinear},
	and \cite{klatte2006nonsmooth,bonnans2013perturbation}.
	In the context of semidefinite programming,
	when the primal and dual solutions are unique and strict complementarity holds,
	Nayakkankuppam and Overton \cite{nayakkankuppam1999conditioning} shows that \eqref{eq: sensitivity}
	holds with $p'=1$.
	When the cone $\mathcal{K}$ is a semialgebraic set,
	Drusvyatskiy, Ioffe, and  Lewis \cite[section 5]{drusvyatskiy2016generic} showed that
	for generic perturbations in the cost vector and the right hand side vector $c-c',b-b'$, the sensitivity bound \eqref{eq: sensitivity} holds with $p'=1$.

	In Section \ref{sec: fromerrorboundtosensitivityofsolution}, we have seen
	that \eqref{eq: sensitivity} holds whenever \eqref{eq: errorbound} with $p'=p$.
	Hence, using our results from Section \ref{sec: conicexamples},
	we see $p'=1$ for LP, and $p'=2$ for SOCP and SDP.
	This result improves on the previous bound for SOCPs and SDPs assuming only strict complementarity.

	\paragraph{Other Cones?} An interesting future direction is the extension to other cones,
	e.g.,  the copositive cone, the completely positive cone, and
	the doubly positive cone (the intersection of nonnegative matrices and positive semidefinite matrices).
	Can we still bound the term $\twonorm{\proj{\mathcal{V}_{s_\star }^\perp }(x)}$?
	For the cones ${\mbox{\bf R}}_+^n$, $\SOC{n}$, and $\sym_+^n$,
	our technique relies on the explicit structure of ${\mbox{\bf R}}_+^n$, $\SOC{n}$, and $\sym_+^n$
	to bound $\twonorm{\proj{\mathcal{V}_{s_\star }^\perp }(x)}$.
	Characterizing the facial structure seems to be challenging for other cones.

	\paragraph{Extension to quadratic programming (QP)} A potential future direction is to use the approach of the paper to establish error bounds for QP. The strategy consists of three steps: (1)  reducing the QP to an SOCP, (2) utilizing the error bound for the SOCP, and (3) translating the error bound to the QP setting. We leave the detail to future work.

	\section*{Acknowledgment} L. Ding and M. Udell were supported from NSF Awards IIS1943131 and CCF-1740822, the ONR Young Investigator
	Program, DARPA Award FA8750-17-2-0101, the Simons
	Institute, Canadian Institutes of Health Research, and Capital One.
	L. Ding would like to thank James Renegar for helpful discussions.

	\bibliographystyle{alpha}


Means of algebraic numbers in the unit disk

Abstract: Schur studied limits of the arithmetic means $s_n$ of zeros for polynomials of degree $n$ with integer coefficients and simple zeros in the closed unit disk. If the leading coefficients are bounded, Schur proved that $\limsup_{n\to\infty} |s_n| \le 1-\sqrt{e}/2.$ We show that $s_n \to 0$, and estimate the rate of convergence by generalizing the Erdős-Turán theorem on the distribution of zeros.

\section{Schur's problem and equidistribution of zeros} \label{sec1}

Let $\Z_n(D)$ be the set of polynomials of degree $n$ with integer coefficients and all zeros in the closed unit disk $D$. We denote the subset of $\Z_n(D)$ with simple zeros by $\Z_n^1(D)$. Given $M>0$, we write $P_n=a_nz^n + \ldots\in\Z_n^1(D,M)$ if $|a_n|\le M$ and $P_n\in\Z_n^1(D)$ (respectively $P_n\in\Z_n(D,M)$ if $|a_n|\le M$ and $P_n\in\Z_n(D)$). Schur \cite[\S 8]{Sch} studied the limiting behavior of the arithmetic means $s_n$ of zeros for polynomials from $\Z_n^1(D,M)$ as $n\to\infty,$ where $M>0$ is an arbitrary fixed number. He showed that $\limsup_{n\to\infty} |s_n| \le 1-\sqrt{e}/2,$ and remarked that this $\limsup$ is equal to $0$ for {\em monic} polynomials from $\Z_n(D)$ by Kronecker's theorem \cite{Kr}. We prove that $\lim_{n\to\infty} s_n = 0$ for any sequence of polynomials from Schur's class $\Z_n^1(D,M),\ n\in\N.$ This result is obtained as a consequence of the asymptotic equidistribution of zeros near the unit circle. Namely, if $\{\alpha_k\}_{k=1}^n$ are the zeros of $P_n$, we define the counting measure $\tau_n := \frac{1}{n} \sum_{k=1}^n \delta_{\alpha_k}$, where $\delta_{\alpha_k}$ is the unit point mass at $\alpha_k$. Consider the normalized arclength measure $\mu$ on the unit circumference $\T$, with $d\mu(e^{it}):=\frac{1}{2\pi}dt.$ If the $\tau_n$ converge weakly to $\mu$ as $n\to\infty$ ($\tau_n \stackrel{*}{\rightarrow} \mu$) then $\lim_{n\to\infty} s_n = \lim_{n\to\infty} \int z\,d\tau_n(z) = \int z\,d\mu(z) = 0.$ Thus Schur's problem is solved by the following result.

\begin{theorem} \label{thm1.1}
If $P_n(z) = a_nz^n + \ldots\in\Z_n^1(D),\ n\in\N,$ satisfy $\dis\lim_{n\to\infty} |a_n|^{1/n} = 1$, then $\tau_n \stackrel{*}{\rightarrow} \mu$ as $n\to\infty.$
\end{theorem}
Ideas on the equidistribution of zeros date back to Jentzsch and Szeg\H{o}, cf. \cite[Ch. 2]{AB}. They were developed further by Erd\H{o}s and Tur\'an \cite{ET}, and many others; see \cite{AB} for history and additional references. More recently, this topic received renewed attention in number theory, e.g. in the work of Bilu \cite{Bi}. If the leading coefficients of polynomials are bounded, then we can allow even certain multiple zeros. Define the multiplicity of an irreducible factor $Q$ of $P_n$ as the integer $m_n\ge 0$ such that $Q^{m_n}$ divides $P_n$, but $Q^{m_n+1}$ does not divide $P_n$. If a factor $Q$ occurs infinitely often in a sequence $P_n,\ n\in\N,$ then $m_n=o(n)$ means $\lim_{n\to\infty} m_n/n =0.$ If $Q$ is present only in finitely many $P_n$, then $m_n=o(n)$ by definition.

\begin{theorem} \label{thm1.2}
Assume that $P_n\in\Z_n(D,M),\ n\in\N$. If every irreducible factor in the sequence of polynomials $P_n$ has multiplicity $o(n)$, then $\tau_n \stackrel{*}{\rightarrow} \mu$ as $n\to\infty.$
\end{theorem}

\begin{corollary} \label{cor1.3}
If $P_n(z)=a_n\prod_{k=1}^n (z-\alpha_k),\ n\in\N,$ satisfy the assumptions of Theorem \ref{thm1.1} or \ref{thm1.2}, then
\[
\lim_{n\to\infty} \frac{1}{n}\sum_{k=1}^n \alpha_k^m =0, \quad m\in\N.
\]
\end{corollary}
We also show that the norms $\|P_n\|_{\infty}:= \max_{|z|=1} |P_n(z)|$ have at most subexponential growth.
\begin{corollary} \label{cor1.4}
If $P_n,\ n\in\N,$ satisfy the assumptions of Theorem \ref{thm1.1} or Theorem \ref{thm1.2}, then
\[
\lim_{n\to\infty} \|P_n\|_{\infty}^{1/n} = 1.
\]
\end{corollary}
This result is somewhat unexpected, as we have no direct control of the norm or coefficients (except for the leading one). For example, $P_n(z)=(z-1)^n$ has norm $\|P_n\|_{\infty}=2^n$.

We now consider quantitative aspects of the convergence $\tau_n \stackrel{*}{\rightarrow} \mu$. As an application, we obtain estimates of the convergence rate of $s_n$ to $0$ in Schur's problem. A classical result on the distribution of zeros is due to Erd\H{o}s and Tur\'an \cite{ET}. For $P_n(z) = \sum_{k=0}^n a_k z^k$ with $a_k\in\C,$ let $N(\phi_1,\phi_2)$ be the number of zeros in the sector $\{z\in\C:0\le \phi_1 \le \arg(z) \le \phi_2< 2\pi\},$ where $\phi_1 < \phi_2.$ Erd\H{o}s and Tur\'an \cite{ET} proved that
\begin{align} \label{2.1}
\left|\frac{N(\phi_1,\phi_2) }{n} - \frac{\phi_2-\phi_1}{2\pi}\right| \le 16 \sqrt{\frac{1}{n}\log\frac{\|P_n\|_{\infty}}{\sqrt{|a_0 a_n|}}}.
\end{align}
The constant $16$ was improved by Ganelius, and $\|P_n\|_{\infty}$ was replaced by weaker integral norms by Amoroso and Mignotte; see \cite{AB} for more history and references. Our main difficulty in applying \eqref{2.1} to Schur's problem is the absence of an effective estimate for $\|P_n\|_{\infty},\ P_n\in\Z_n^1(D,M)$. We prove a new ``discrepancy" estimate via energy considerations from potential theory. These ideas originated in part in the work of Kleiner, and were developed by Sj\"{o}gren and H\"{u}sing, see \cite[Ch. 5]{AB}. We also use the Mahler measure of a polynomial $P_n(z) = a_n\prod_{k=1}^n (z-\alpha_k)$, defined by $M(P_n) := \exp\left(\frac{1}{2\pi} \int_0^{2\pi} \log |P_n(e^{it})|\,dt\right).$ Note that $M(P_n) = \lim_{p\to 0} \|P_n\|_p$, where $\|P_n\|_p:=\left(\frac{1}{2\pi} \int_0^{2\pi} |P_n(e^{it})|^p\,dt\right)^{1/p},\ p>0$. Jensen's formula readily gives $M(P_n) = |a_n|\prod_{k=1}^n \max(1,|\alpha_k|)$ \cite[p. 3]{Bo}. Hence $M(P_n)=|a_n|\le M$ for any $P_n\in\Z_n(D,M).$

\begin{theorem} \label{thm2.1}
Let $\phi:\C\to\R$ satisfy $|\phi(z)-\phi(t)|\le A|z-t|,\ z,t\in\C,$ and $\supp(\phi)\subset\{z:|z|\le R\}.$ If $P_n(z) = a_n\prod_{k=1}^n (z-\alpha_k)$ is a polynomial with integer coefficients and simple zeros, then
\begin{align} \label{2.2}
\left|\frac{1}{n}\sum_{k=1}^n \phi(\alpha_k) - \int\phi\,d\mu\right| \le A(2R+1) \sqrt{\frac{\log\max(n,M(P_n))}{n}}, \quad n\ge 55.
\end{align}
\end{theorem}
This theorem is related to recent results of Favre and Rivera-Letelier \cite{FR}, obtained in a different setting. Choosing $\phi$ appropriately, we obtain an estimate of the means $s_n$ in Schur's problem.
\begin{corollary} \label{cor2.2}
If $P_n\in\Z_n^1(D,M)$ then
\[
\left|\frac{1}{n}\sum_{k=1}^n \alpha_k\right| \le 8 \sqrt{\frac{\log{n}}{n}},\quad n\ge \max(M,55).
\]
\end{corollary}
We also have an improvement of Corollary \ref{cor1.4} for Schur's class $\Z_n^1(D,M)$.
\begin{corollary} \label{cor2.3}
If $\{P_n\}_{n=1}^{\infty}\in\Z_n^1(D,M)$ then there is some $c>0$ such that $\|P_n\|_{\infty} \le e^{c\sqrt{n}\log{n}}$ as $n\to\infty.$
\end{corollary}

The proof of Theorem \ref{thm2.1} gives a result for arbitrary polynomials with simple zeros, and for any continuous $\phi$ with finite Dirichlet integral $D[\phi]=\iint(\phi_x^2 +\phi_y^2)\,dA$. Moreover, all arguments may be extended to general sets of logarithmic capacity $1$, e.g. to $[-2,2]$. Using the characteristic function $\phi=\chi_E$, we can prove general discrepancy estimates on arbitrary sets, and obtain an Erd\H{o}s-Tur\'an-type theorem. Our results have a number of applications to the problems on integer polynomials considered in \cite{Bo}.

\section{Proofs} \label{sec3}

\noindent{\em Proof of Theorem \ref{thm1.1}.} Observe that the discriminant $\Delta(P_n):=a_n^{2n-2} \prod_{1\le j<k\le n} (\alpha_j-\alpha_k)^2$ is an integer, as a symmetric form in the zeros of $P_n$. Since $P_n$ has simple roots, we have
$\Delta(P_n)\neq 0$ and $|\Delta(P_n)|\ge 1.$ Using weak compactness, we assume that $\tau_n \stackrel{*}{\rightarrow} \tau,$ where $\tau$ is a probability measure on $D$. Let $K_M(x,t) := \min\left(-\log{|x-t|},M\right).$ Since $\tau_n\times\tau_n \stackrel{*}{\rightarrow} \tau\times\tau,$ we obtain for the energy of $\tau$ that
\begin{align*}
I[\tau] &:=-\iint \log|x-t|\,d\tau(x)\,d\tau(t) =
\lim_{M\to\infty} \left( \lim_{n\to\infty} \iint K_M(x,t)\,
d\tau_n(x)\,d\tau_n(t) \right) \\ &= \lim_{M\to\infty} \left(
\lim_{n\to\infty} \left( \frac{1}{n^2} \sum_{j\neq k}
K_M(\alpha_j,\alpha_k) +\frac{M}{n} \right) \right) \le
\lim_{M\to\infty} \left( \liminf_{n\to\infty} \frac{1}{n^2}
\sum_{j\neq k} \log\frac{1}{|\alpha_j-\alpha_k|} \right) \\ &=
\liminf_{n\to\infty} \frac{1}{n^2}
\log\frac{|a_n|^{2n-2}}{\Delta(P_n)} \le \liminf_{n\to\infty} \frac{1}{n^2}\log|a_n|^{2n-2} = 0.
\end{align*}
Thus $I[\tau]\le 0$. But $I[\nu]>0$ for any probability measure $\nu$ on $D$, except for $\mu$ \cite{La}. Hence $\tau=\mu.$

\noindent{\em Proof of Theorem \ref{thm1.2}.} Let $\phi\in C(\C).$ Note that for any $\epsilon>0$ there are finitely many irreducible factors $Q$ in the sequence $P_n$ such that $|\int\phi\,d\tau(Q) - \int\phi\,d\mu| \ge \epsilon,$ where $\tau(Q)$ is the zero counting measure for $Q$. Indeed, if we have an infinite sequence of such $Q_m$, then $\deg(Q_m)\to\infty$, as there are only finitely many $Q_m\in\Z_n(D,M)$ of bounded degree. Hence $\int\phi\,d\tau(Q_m) \to \int\phi\,d\mu$ by Theorem \ref{thm1.1}. Let the number of such exceptional factors $Q_m$ be $N$. Then we have $|n\int\phi\,d\tau_n - n\int\phi\,d\mu| \le N o(n) \max_D |\phi - \int\phi\,d\mu| + (n-N)\epsilon,\ n\in\N.$ Hence $\limsup_{n\to\infty} |\int\phi\,d\tau_n - \int\phi\,d\mu| \le \epsilon,$ and $\lim_{n\to\infty} \int\phi\,d\tau_n = \int\phi\,d\mu$ after letting $\epsilon\to 0.$

\noindent{\em Proof of Corollary \ref{cor1.3}.} Let $\phi(z)=z^m$ and write $\lim_{n\to\infty} \int z^m\,d\tau_n(z) = \int z^m\,d\mu(z) = 0.$

\noindent{\em Proof of Corollary \ref{cor1.4}.} Let $\|P_n\|_{\infty}=|P_n(z_n)|,\ z_n\in D,$ and assume $\lim_{n\to\infty} z_n = z_0\in D$ by compactness. Then $\|P_n\|_{\infty} = \exp\left(\log\left|P_n(z_n)\right|\right) = |a_n| \exp\left(n \int\log|z_n-t|\,d\tau_n(t)\right)$. Since $\tau_n \stackrel{*}{\rightarrow} \mu$, Theorem I.6.8 of \cite{ST} gives $\limsup_{n\to\infty} \|P_n\|_{\infty}^{1/n} \le \exp\left(\int\log|z_0-t|\,d\mu(t)\right) = 1$ \cite[p. 22]{ST}. But $\|P_n\|_{\infty} \ge |a_n| \ge 1$, see \cite[p. 16]{AB}.

\noindent{\em Proof of Theorem \ref{thm2.1}.} Given $r>0$, define the measures $\nu_k^r$ with $d\nu_k^r(\alpha_k + re^{it}) = dt/(2\pi),\ t\in[0,2\pi).$ Let $\tau_n^r:=\frac{1}{n}\sum_{k=1}^n \nu_k^r$, and estimate $\left|\int\phi\,d\tau_n - \int\phi\,d\tau_n^r\right| \le \frac{1}{n}\sum_{k=1}^n \frac{1}{2\pi}\int_0^{2\pi} \left|\phi(\alpha_k) - \phi(\alpha_k + re^{it})\right|\,dt \le \omega_{\phi}(r),$ where $\omega_{\phi}(r):=\sup_{|z-\zeta|\le r} |\phi(z)-\phi(\zeta)|$ is the modulus of continuity of $\phi$.

Let $p_{\nu}(z):=-\int\log|z-t|d\nu(t)$ be the potential of a measure $\nu.$ A direct evaluation gives that $p_{\nu_k^r}(z)=-\log\max(r,|z-\alpha_k|)$ and $p_{\mu}(z) = -\log\max(1,|z|)$ \cite[p. 22]{ST}. Consider $\sigma:=\tau_n^r-\mu,\ \sigma(\C)=0.$ One computes (or see \cite[p. 92]{ST}) that
$d\sigma=-\frac{1}{2\pi}\left(\partial p_{\sigma}/\partial n_+ + \partial p_{\sigma}/\partial n_-\right) ds,$
where $ds$ is the arclength on $\supp(\sigma)=\{|z|=1\}\cup \left( \cup_{k=1}^n \{|z-\alpha_k|=r\}\right)$, and $n_{\pm}$ are the inner and the outer normals. We now use Green's identity $\iint_G u \Delta v\,dA =  \int_{\partial G} u\,\frac{\partial v}{\partial n}\,ds - \iint_G \nabla u \cdot \nabla v\,dA$ with $u=\phi$ and $v=p_{\sigma}$ in each component $G$ of $\{|z|<R\}\setminus\supp(\sigma).$ Since $\Delta p_{\sigma}=0$ in $G$, adding the identities for all $G$, we obtain that
\[
\left|\int\phi\,d\sigma\right| = \frac{1}{2\pi} \left| \iint_{|z|\le R} \nabla \phi \cdot \nabla p_{\sigma} \,dA \right| \le \frac{1}{2\pi} \sqrt{D[\phi]}\,\sqrt{D[p_{\sigma}]},
\]
where $D[\phi]=\iint(\phi_x^2 +\phi_y^2)\,dA$ is the Dirichlet integral of $\phi.$ It is known that $D[p_{\sigma}]=2\pi I[\sigma]$ \cite[Thm 1.20]{La}, where $I[\sigma]=-\iint \log|z-t|\,d\sigma(z)\,d\sigma(t) = \int p_{\sigma}\,d\sigma$. Since $p_{\mu}(z) = -\log\max(1,|z|)$, we observe that $\int p_{\mu}\,d\mu = 0,$ so that
$I[\sigma]=\int p_{\tau_n^r}\,d\tau_n^r - 2\int p_{\mu}\,d\tau_n^r.$ Further, $-\int p_{\mu}\,d\tau_n^r = \int\log\max(1,|z|)\, d\tau_n^r(z) \le \left(\sum_{|\alpha_k|\le 1+r} \log(1+2r) + \sum_{|\alpha_k|>1+r} \log|\alpha_k|\right)/n \le \log(1+2r) +\frac{1}{n}\log M(P_n) - \frac{1}{n}\log |a_n|.$  We also have that
$\int p_{\tau_n^r}\,d\tau_n^r \le \left(-\sum_{j\neq k} \log|\alpha_j-\alpha_k| - n\log{r}\right)/n^2.$ We next combine the energy estimates to obtain
\[
I[\sigma] \le \frac{2}{n}\log M(P_n) - \frac{1}{n^2}\log\left|a_n^2 \Delta(P_n)\right| - \frac{1}{n}\log{r} + 4r.
\]
Collecting all estimates, we proceed with $\left|\int\phi\,d\tau_n - \int\phi\,d\mu\right| \le \left|\int\phi\,d\tau_n - \int\phi\,d\tau_n^r\right| + \left|\int\phi\,d\tau_n^r - \int\phi\,d\mu\right| \le \omega_{\phi}(r) + \sqrt{D[\phi]}\,\sqrt{D[p_{\sigma}]}/(2\pi) = \omega_{\phi}(r) + \sqrt{D[\phi]}\,\sqrt{I[\sigma]/(2\pi)}$. Thus we arrive at the main inequality:
\begin{align} \label{2.3}
\left|\int\phi\,d\tau_n - \int\phi\,d\mu\right| \le \omega_{\phi}(r) + \sqrt{\frac{D[\phi]}{2\pi}}\,\left(\frac{2}{n}\log M(P_n) - \frac{1}{n^2}\log\left|a_n^2 \Delta(P_n)\right| - \frac{1}{n}\log{r} + 4r\right)^{1/2}.
\end{align}
Note that $D[\phi]\le 2\pi R^2 A^2,$ as $|\phi_x|\le A$ and $|\phi_y|\le A$ a.e. in $\C.$ Also, $\omega_{\phi}(r)\le Ar.$ Since $|\Delta(P_n)|\ge 1$ and $|a_n|\ge 1$, we have $|a_n^2\Delta(P_n)|\ge 1$. Hence \eqref{2.2} follows from \eqref{2.3} by letting $r=1/\max(n,M(P_n)).$

\noindent{\em Proof of Corollary \ref{cor2.2}.} Since $P_n$ has real coefficients, we have that $s_n = \int z\,d\tau_n(z) = \int \Re(z)\,d\tau_n(z).$ We let $\phi(z)=\Re(z),\ |z|\le 1;\ \phi(z)=\Re(z)(1-\log|z|),\ 1\le |z|\le e;$ and $\phi(z)=0,\ |z|\ge e.$ An elementary computation shows that $|\phi_x(z)|\le 1$ and $|\phi_y(z)|\le 1/2$ for all $z=x+iy\in\C.$ The Mean Value Theorem gives $|\phi(z)-\phi(t)|\le |z-t| \max_{\C} \sqrt{\phi_x^2+\phi_y^2}.$ Hence we can use Theorem \ref{thm2.1} with $A=\sqrt{5}/2$ and $R=e.$

\noindent{\em Proof of Corollary \ref{cor2.3}.} Note that $\log|P_n(z)| = n \int\log|z-w|\,d\tau_n(w).$ For $|z|=1+1/n,$ we let $\phi(w)=\log|z-w|,\ |w|\le 1;\ \phi(w)=(1-\log|w|)\log|1-\bar{z}w|,\ 1\le |w|\le e;$ and $\phi(z)=0,\ |w|\ge e.$ Then $|\phi_x(w)|=O(|z-w|^{-1}),\ |w|\le 1; |\phi_x(w)|=O(|1-\bar{z}w|^{-1}),\ 1\le |w|\le e;$ and the same estimates hold for $|\phi_y|.$ Hence $D[\phi] = O\left(\iint_{|w|\le 1} |z-w|^{-2} dA(w)\right) =  O\left(\int_{1/n}^1 r^{-1}dr \right) = O(\log{n}),$ and $\omega_\phi(r) \le r \max_{\C} \sqrt{\phi_x^2+\phi_y^2} = r O(n).$ Let $r=1/n^2$ and use \eqref{2.3} to obtain $|\log|P_n(z)| - n\log|z|| = O(\sqrt{n}\log{n}).$