在微积分中，极值定理（或最值定理）说明如果实函数f在闭区间[a,b]上是连续函数，则它一定取得最大值和最小值，至少一次。也就是说，存在[a,b]内的c和d，使得：

  
    
      
        f
        (
        c
        )
        ≥
        f
        (
        x
        )
        ≥
        f
        (
        d
        )
      
    
    {\displaystyle f(c)\geq f(x)\geq f(d)}
  
对于所有
  
    
      
        x
        ∈
        [
        a
        ,
        b
        ]
      
    
    {\displaystyle x\in [a,b]}
  
。
一个相关的定理是有界性定理，它说明闭区间[a,b]内的连续函数f在该区间上有界。也就是说，存在实数m和M，使得：

  
    
      
        m
        ≤
        f
        (
        x
        )
        ≤
        M
      
    
    {\displaystyle m\leq f(x)\leq M}
  
对于所有
  
    
      
        x
        ∈
        [
        a
        ,
        b
        ]
      
    
    {\displaystyle x\in [a,b]}
  
。
极值定理强化了有界性定理，它表明函数不仅是有界的，而且它的最小上界就是最大值，最大下界就是最小值。


定理的证明 我们来证明f 的上界和存在最大值。把这个结果应用于函数–f，也可推出f 的下界和存在最小值。
我们首先证明有界性定理，它是证明极值定理中的一个步骤。


= 有界性定理的证明 =
假设函数f在区间[a,b]内連續且没有上界，那么对于每一个自然数n，都存在[a,b]内的一个xn，使得f(xn) > n（任定的，總之條件為真即可）。这便定义了一个序列{xn}。
由于[a,b]是有界的，根据波尔查诺-魏尔施特拉斯定理，可推出存在{xn}的一个收敛的子序列
  
    
      
        {
        
          x
          
            
              n
              
                k
              
            
          
        
        }
      
    
    {\displaystyle \{x_{n_{k}}\}}
  
。把它的极限记为x。由于[a,b]是闭区间，它一定含有x。因为f在x处连续，我们知道
  
    
      
        {
        f
        (
        
          x
          
            
              n
              
                k
              
            
          
        
        )
        }
      
    
    {\displaystyle \{f(x_{n_{k}})\}}
  
收敛于实数f(x)。
但对于所有的k，都有
  
    
      
        f
        (
        
          x
          
            
              n
              
                k
              
            
          
        
        )
        >
        
          n
          
            k
          
        
        ≥
        k
      
    
    {\displaystyle f(x_{n_{k}})>n_{k}\geq k}
  
，这意味着
  
    
      
        {
        f
        (
        
          x
          
            
              n
              
                k
              
            
          
        
        )
        }
      
    
    {\displaystyle \{f(x_{n_{k}})\}}
  
发散于无穷大。
前者描述為收斂，後者描述為無窮大，得出矛盾。因此，f在[a,b]内有上界。同理f在[a,b]内有下界。证毕。


= 极值定理的证明1 =
基本步骤为：

寻找一个序列，它的像收敛于f 的最小上界。
证明存在一个子序列，它收敛于定义域内的一个点。
用连续性来证明子序列的像收敛于最小上界。
我们现在证明函数f 在区间[a,b]内有最大值。根据有界性定理，f 有上界，因此，根据实数的戴德金完备性，f 的最小上界M存在。我们需要寻找[a,b]内的一个d，使得M = f (d)。设n为一个自然数。由于M是最小上界，M – 1/n就不是 f 的上界。因此，存在[a,b]内的dn，使得M – 1/n < f (dn)。这便定义了一个序列{dn}。由于M是f 的一个上界，即便是对于所有的n，我们仍有M – 1/n < f (dn) ≤ M。因此，序列
  
    
      
        {
        f
        (
        
          d
          
            n
          
        
        )
        }
      
    
    {\displaystyle \{f(d_{n})\}}
  
收敛于M。
根据波尔查诺-魏尔施特拉斯定理，可知存在一个子序列
  
    
      
        {
        
          d
          
            
              n
              
                k
              
            
          
        
        }
      
    
    {\displaystyle \{d_{n_{k}}\}}
  
，它收敛于某个d，且由于[a,b]是闭区间，
  
    
      
        d
        ∈
        [
        a
        ,
        b
        ]
      
    
    {\displaystyle d\in [a,b]}
  
。因为f 在d 处连续，所以序列
  
    
      
        {
        f
        (
        
          d
          
            
              n
              
                k
              
            
          
        
        )
        }
      
    
    {\displaystyle \{f(d_{n_{k}})\}}
  
收敛于f (d)。但
  
    
      
        {
        f
        (
        
          d
          
            
              n
              
                k
              
            
          
        
        )
        }
      
    
    {\displaystyle \{f(d_{n_{k}})\}}
  
是
  
    
      
        {
        f
        (
        
          d
          
            n
          
        
        )
        }
      
    
    {\displaystyle \{f(d_{n})\}}
  
的一个子序列，收敛于M，因此M = f (d)。所以，f 在d 处取得最小上界M。证毕。


= 极值定理的证明2 =

设M是f 在区间[a,b]上的最小上界，我们要证明存在
  
    
      
        d
        ∈
        [
        a
        ,
        b
        ]
      
    
    {\displaystyle d\in [a,b]}
  
使得
  
    
      
        f
        (
        d
        )
        =
        M
      
    
    {\displaystyle f(d)=M}
  
。我们使用反证法：如若不然，对任意 
  
    
      
        x
        ∈
        [
        a
        ,
        b
        ]
      
    
    {\displaystyle x\in [a,b]}
  
，
  
    
      
        f
        (
        x
        )
        =
        M
      
    
    {\displaystyle f(x)\neq M}
  
，所以，对任意的
  
    
      
        x
        ∈
        [
        a
        ,
        b
        ]
      
    
    {\displaystyle x\in [a,b]}
  
，
  
    
      
        f
        (
        x
        )
        <
        M
      
    
    {\displaystyle f(x)<M}
  
。我们考虑正值的函数

  
    
      
        g
        (
        x
        )
        =
        
          
            1
            
              M
              −
              f
              (
              x
              )
            
          
        
        .
      
    
    {\displaystyle g(x)={\frac {1}{M-f(x)}}.}
  

因为分母不是零，这个函数是良定义的，并且是连续的。然而，由于M是f (x)的最小上界，所以存在 
  
    
      
        x
        ∈
        [
        a
        ,
        b
        ]
      
    
    {\displaystyle x\in [a,b]}
  
，使得f (x)可以无限地接近M，从而g(x)是无界的。这和有界性定理矛盾。证毕。
注: 上面构造函数g(x)来证明最大值能在某个d取到的方法也在代数基本定理的基于Liouville定理的证明中出现。


例子 以下的例子说明了为什么函数的定义域需要是闭的和有界的。

定义在[0,∞)的函数f(x) = x没有上界。
定义在[0,∞)的函数f(x) = x/(1 + x)有界，但不取得最小上界1。
定义在(0,1]的函数f(x) = 1/x没有上界。
定义在(0,1]的函数f(x) = 1 –x有界，但不取得最小上界1。


推广到半连续函数 如果把f的连续性减弱为半连续，则有界性定理和极值定理的对应的一半仍然成立，且扩展的实数轴上的值–∞和+∞也可以允许为可能的值。更加精确地：
定理：如果函数f : [a,b] → [–∞,∞)是上半连续的，也就是说，对于[a,b]内的所有x，都有：

  
    
      
        
          lim sup
          
            y
            →
            x
          
        
        f
        (
        y
        )
        ≤
        f
        (
        x
        )
      
    
    {\displaystyle \limsup _{y\to x}f(y)\leq f(x)}
  
，
那么f有上界，且取得最小上界。
证明：如果对于[a,b]内的所有x，都有f(x) = –∞，那么最小上界也是–∞，于是定理成立。在任何其它情况下，只需把上面的证明稍加修改便可。在有界性定理的证明中，f在x处的半连续性只意味着子序列
  
    
      
        {
        f
        (
        
          x
          
            
              n
              
                k
              
            
          
        
        )
        }
      
    
    {\displaystyle \{f(x_{n_{k}})\}}
  
的上极限有上界f(x) < ∞，但这已足以得到矛盾。在极值定理的证明中，f在d处的半连续性意味着子序列
  
    
      
        {
        f
        (
        
          d
          
            
              n
              
                k
              
            
          
        
        )
        }
      
    
    {\displaystyle \{f(d_{n_{k}})\}}
  
的上极限有上界f(d)，但这已足以推出f(d) = M的结论。证毕。
把这个结果应用于−f，可得：
定理：如果函数f : [a,b] → (–∞,∞]是下半连续的，也就是说，对于[a,b]内的所有x，都有：

  
    
      
        
          lim inf
          
            y
            →
            x
          
        
        f
        (
        y
        )
        ≥
        f
        (
        x
        )
      
    
    {\displaystyle \liminf _{y\to x}f(y)\geq f(x)}
  

那么f有下界，且取得最大下界。
一个实函数是上半连续且下半连续的，当且仅当它是连续的。因此，从这两个定理就可以推出有界性定理和极值定理。


参考文献 Parzynski, William R. Introduction to Mathematical Analysis. McGraw-Hill, Inc. 1982: 102-104. 
Michael Spivak. Calculus. Cambridge University Press. 2006. 


外部链接 cut-the-knot上极值定理的证明 （页面存档备份，存于互联网档案馆）
Boundedness Theorem. PlanetMath. 
Extreme Value Theorem. PlanetMath. 
埃里克·韦斯坦因. 极值定理. MathWorld.