118/162
\begin{frame}{Undecidability of Validity and Provability}
  \begin{block}{Theorem (Church, Turing, 1936/37)}
    The \emph{validity problem} in predicate logic is \alert{undecidable}.
    \medskip
    
    There cannot be a program that, given any formula $\aform$,
    decides whether or not $\;\ssatisfies\: \aform\,$ holds.
  \end{block} 
  \pause\medskip

  Using the soundness and completeness theorem we obtain:
  %
  \begin{block}{Corollary (Undecidability of Provability)}
    The \emph{provability problem} in predicate logic is \alert{undecidable}.
    \medskip
    
    There cannot be a program that, given any formula $\aform$,
    decides whether or not $\;\sderives\: \aform\,$ holds.
  \end{block}
  \begin{itemize}
  \pause
    \item
      limits the power of theorem provers
  \pause
    \item  
      building better theorem provers is an open-ended endeavour
      (creativity will always be needed)
  \end{itemize}
\end{frame}