```markdown
### Karush-Kuhn-Tucker (KKT) Conditions

The following four conditions are called KKT conditions for a problem with differentiable \( f_i, h_i \):

1. **Primal feasibility**: 
   \[
   f_i(x) \leq 0, \quad i = 1, \ldots, m, \quad h_i(x) = 0, \quad i = 1, \ldots, p
   \]

2. **Dual feasibility**: 
   \[
   \lambda \succeq 0
   \]

3. **Complementary slackness**: 
   \[
   \lambda_i f_i(x) = 0, \quad i = 1, \ldots, m
   \]

4. **Gradient of Lagrangian with respect to \( x \) vanishes (first order condition)**:
   \[
   \nabla f_0(x) + \sum_{i=1}^{m} \lambda_i \nabla f_i(x) + \sum_{i=1}^{p} \nu_i \nabla h_i(x) = 0
   \]

If strong duality holds and \( x, \lambda, \nu \) are optimal, then they must satisfy the KKT conditions.

*Source: A. d’Aspremont. Convex Optimization M2.*
```
