Natural Deduction
In natural deduction, we have a collection of proof rules. They allow us to infer formulas from other formulas. By applying these rules in succession, we may infer a conclusion from a set of premises.
Suppose we have a set of formulas \(\phi_1, \phi_2, \phi_3, \ldots, \phi_n\), which we will call premises, and another formula, \(\psi\), which we will call a conclusion. By applying proof rules to the premises, we hope to get some more formulas, and by applying more proof rules to those, to eventually obtain the conclusion. This intention we denote by:
\[\phi_1, \phi_2, \phi_3, \ldots, \phi_n \vdash \psi\]
This expression is called a sequent; it is valid if a proof for it can be found.
Rules for Natural Deduction
Conjunction
Double Negation
Implication
in order to prove \(\phi \to \psi\), make a temporary assumption of \(\phi\) and then prove \(\psi\).
\begin{prooftree} \alwaysNoLine \AxiomC{[$\phi$]} \UnaryInfC{$\vdots$} \UnaryInfC{$\psi$} \RightLabel{$\to_i$} \alwaysSingleLine \UnaryInfC{$\phi \to \psi$} \end{prooftree}Showing \(p \to q\) using the rule \(\to_i\) rule is now called type checking, an important topic in the construction of compilers for typed programming languages. (Huth and Ryan 2004, 12)
Disjunction
To dissasemble a disjunction, we need to show that either \(\phi \vdash \chi\) or \(\psi \vdash \chi\):
\begin{prooftree} \alwaysNoLine \AxiomC{$\phi \lor \psi$} \AxiomC{[$\phi$]} \UnaryInfC{$\vdots$} \UnaryInfC{$\chi$} \AxiomC{[$\psi$]} \UnaryInfC{$\vdots$} \UnaryInfC{$\chi$} \RightLabel{$\lor_e$} \alwaysSingleLine \TrinaryInfC{$\chi$} \end{prooftree}