12.04.2013 Views

Introdução à Lógica

Introdução à Lógica

Introdução à Lógica

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

2.1 Complementos<br />

2.1.1 Visão Alternativa<br />

Um sistema formal pode ser comparado a um conjunto de peças de plástico com regras de como<br />

combiná-las (brinquedos do tipo Lego). As peças possuem saliências e depressões para se encaixarem<br />

umas nas outras. Duas peças quaisquer não necessariamente podem ser agrupadas pois<br />

elas podem não se encaixar. As regras do sistema formal estariam subentendidas nas saliências<br />

e depressões nas peças. O alfabeto seriam as próprias peças, cada peça seria um axioma e um<br />

teorema é qualquer agrupamento de peças.<br />

Um sistema formal nada mais é do que um jogo de compor peças segundo regras. E observe<br />

que nestes brinquedos, os símbolos do alfabeto (peças) e os teoremas possuem três dimensões.<br />

Voltaremos a este tópico mais tarde.<br />

2.1.2 Conexões com a Computação<br />

Regras Como Algoritmos<br />

Uma conexão com a computação foi dada na definição de uma “regra” de um sistema formal. Uma<br />

regra deve poder ser transformada em um algoritmo. E o que é exatamente um algoritmo ? É uma<br />

seqüência de instruções que pode ser colocada em um programa escrito em qualquer linguagem de<br />

programação. 2<br />

Como um exemplo, a regra 1 do sistema MIU pode ser codificada em linguagem Java como<br />

String rule1(String formula) {<br />

// verifica se o último caráter da fórmula é I<br />

if ( formula.charAt(formula.length() - 1) == ´I´ )<br />

return formula + "U";<br />

else<br />

return null;<br />

}<br />

Programas Como Sistemas Formais<br />

Podemos encontrar um sistema formal que faz a mesma coisa que um programa qualquer ? Aparementemente<br />

sim, pois afinal um programa é composto de algoritmos e as regras so sistema formal<br />

também. Veremos que a respostas é “sim”. Um programa toma uma entrada, altera-a através de<br />

sucessivas instruções e no final de sua execução produz uma saída. 3 Então um programa qualquer<br />

toma uma seqüência de bits como entrada e produz uma seqüência de bits como saída feita através<br />

2 Rigorosamente, admite-se que o programa possa alocar uma quantidade potencialmente infinita de memória, o<br />

que não é o caso real, já que todos os computadores possuem uma memória finita.<br />

3 Não precisamos considerar os programas interativos que tomam entradas e produzem saídas durante a sua<br />

execução — simplesmente podemos considerar que estes programas começam uma nova execução após uma nova<br />

entrada e terminam a sua execução após uma saída.<br />

10

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!