% natural deduction
%	regras
%	exercicios
\section{Dedu\cao\ Natural}

Uma alternativa para sistemas de prova com um n\uu mero elevado de axiomas
como o que foi apresentado na se\cao\ anterior \ee\ o sistema de 
dedu\cao\ natural, inventado por Gentzen \cite{szabo:gentzen}.
Neste sistema, os axiomas v\aa lidos s\ao\ introduzidos atrav\ee s
de regras de infer\^encia que estabelecem o significado das 
constantes l\oo gicas.

Considere o seguinte conjunto de regras, apresentado em \cite{gs:discretemaths},
onde $eigen(y,P)$ significa que $y$ n\~ao tem ocorr\^encia livre em $P$.

\begin{itemize}\addtolength{\itemsep}{0.2cm}
	\item $\ntddI{P,Q}{P\land Q}{\land}$
	\item $\ntddE{P\land Q}{P}{\land_1}\quad% 
		\ntddE{P\land Q}{Q}{\land_2}$
	\item $\ntddI{P}{P\lor Q}{\lor_1}\quad%
		\ntddI{Q}{P\lor Q}{\lor_2}\quad$
	\item $\ntddE{P\lor Q, P\limp R, Q\limp R}{R}{\lor}$
	\item $\ntddI{P_1,\ldots,P_n\folls Q}{P1\land\ldots P_n\limp Q}%
		{\limp}$
	\item $\ntddE{P,P\limp Q}{Q}{\limp}$
	\item $\ntddI{P\folls Q\land \lnot Q}{\lnot P}{\lnot}$
	\item $\ntddE{\lnot P\folls Q\land \lnot Q}{P}{\lnot}$
	\item $\ntddI{P\limp Q, Q\limp P }{P=Q}{=}$
	\item $\ntddE{P=Q}{P\limp Q}{=_1}\quad
		\ntddE{P=Q}{Q\limp P}{=_2}$
	\item $\ntddI{P = P}{\ltrue}{\ltrue}$
	\item $\ntddE{\ltrue}{P = P}{\ltrue}$
	\item $\ntddI{\lnot\ltrue}{\lfalse}{\lfalse}$
	\item $\ntddE{\lnot\lfalse}{\ltrue}{\lfalse}$
	\item $\ntddI{\Gamma\folls A[x:=y]}%
		{\Gamma\folls\forall x A}{\forall}, %
		eigen(y,\Gamma)\land eigen(y,A)$
	\item $\ntddE{\Gamma\folls \forall x A}%
		{\Gamma\folls A[x:=\tau]}{\forall}$ 
	\item $\ntddI{\Gamma\folls \exists x A}%
		{\Gamma\folls A[x:=\tau]}{\exists}$ 
	\item $\ntddE{\Gamma\folls A[x:=y]}%
		{\Gamma\folls\exists x A}{\exists}, %
		eigen(y,\Gamma)\land eigen(y,A)$
\end{itemize}

\def\pr#1{\text{pr {(#1)}}}
\newcounter{prfctr}
\setcounter{prfctr}{0}
\newcommand{\prftg}{\refstepcounter{prfctr}\theprfctr\quad}
\begin{ex}
	Prove \ntddsq{p\land q}{q\land p}.
	\proofbeg
	\begin{alignat*}{2}
		\prftg%
		& \ntddsq{p\land q}{q\land q}\quad && \text{a provar} \\
		\prftg & p\land q 	&& \pr1 \\
		\prftg & p		&& \rlE{\land_1}. (2) \\
		\prftg &q		&& \rlE{\land_2}. (2) \\
		\prftg &q\land p	&& \rlI{\land}. (3), (4)
	\end{alignat*}
	\proofend
\end{ex}

O exerc\'{\i}cio cont\'em um exemplo de prova em dedu\c{c}\~ao natural em
que uma subprova \'e introduzida dentro de uma prova. Note:
\begin{itemize}
	\item a linha $1$ \'e introduzida como conjectura a provar;
	\item as linhas $2$ e $3$ s\~ao premissas da conjectura;
	\item a linha $4$ introduz novo elemento a provar;
	\item $4.1$ prova $4$;
	\item $5$ conclui a prova da linha $1$.

\end{itemize}

\begin{ex}
	Prove \ntddsq{P,\lnot p}{q}
	\proofbeg\setcounter{prfctr}{0}
	\begin{alignat*}{2}
		\prftg%
		& \ntddsq{p,\lnot p}{q}\quad && \text{conjectura}\\
		\prftg&p && \pr 1 \\
		\prftg&\lnot p && \pr 1 \\
		\prftg
		&\ntddsq{\lnot q}{p\land\lnot p}\quad && \text{to prove} \\
		%&\prftg
		& 4.1\quad 
		p\land\lnot p\quad && \rlI{\land}. (2), (3)\\
		\prftg
		&q && \rlE{\lnot}. (4)
	\end{alignat*}
	\proofend
\end{ex}
\begin{ex}
	Use as regras de infer\^encia do sistema de dedu\cao\ natural,
	apresentadas em aula, e prove os teoremas da se\cao\ \ref{eqlogic}.
\end{ex}

