Lógica e Computação Uma Perspectiva Histórica Alfio Martini Facin - PUCRS
A Lógica na Cultura Helênica A Lógica foi considerada na cultura clássica e medieval como um instrumento indispensável ao pensamento científico. Era necessário argumentar com clareza, mediante demonstrações rigorosas, respondendo as objeções dos adversários. Uma ferramenta importante para argumentar com os sofistas.
A Lógica de Aristóteles Aristóteles (384 a 322 a. C.) construiu uma sofisticada teoria dos argumentos, cujo núcleo é a caracterização dos chamados silogismos. Exemplo: Todos os homens são mortais. Sócrates é homem. Portanto, Sócrates é mortal.
Euclides e o método Axiomático Com sua obra Elementos, o matemático Euclides (325 a 265 a.c.) deu forma sistemática ao saber geométrico. A partir de algumas noções comuns (axiomas), Euclides deduz novas proposições ou teoremas, as quais constituem todo o saber geométrico. As deduções devem obedecer a um conjunto de regras fixas.
Leibniz, o Precursor da Lógica Moderna A lógica moderna começou no século XVI, com o filósofo e matemático alemão Gottfried Wilhelm Leibniz (1646-1716). O projeto de Leibniz tinha como base uma lógica simbólica e de caráter completamente algébrico, semelhante ao cálculo diferencial, inventado por ele e Newton. Deduções lógicas deveriam ser feitas através de uma pura manipulação simbólica, sem referência ao significado real destes símbolos.
A Lógica Matemática no século XIX A passagem do século XVIII para o século XIX é conhecida como a idade áurea da matemática. Em especial, começam a ser delineados os fundamentos da ciência da computação. A lógica matemática, a partir daqui, tem o objetivo principal de tornar explícitas as formas de inferência, deixando de lado o conteúdo das verdades que elas possam transmitir.
Boole e os Fundamentos da Lógica Matemática e da Computação O inglês George Boole (1815-1864) é considerado o pai da lógica simbólica. Desenvolveu o primeiro sistema formal para raciocínio lógico (lógica booleana). Foi o primeiro a enfatizar a possibilidade de aplicar o cálculo formal a diferentes situações
Boole e os Fundamentos da Lógica Matemática e da Computação Boole, em sua obra The Mathematical Analysis of Logic, percebeu que uma álgebra de objetos (que não fossem números) poderia ser construída e então, ter várias interpretações (aplicações): Circuitos Lógicos Verdade ou Falsidade de Proposições Aritmética sobre Números Binários
A Importância de Frege e Peano Gottlob Frege (1848-1925) foi o primeiro a formular com precisão a diferença entre constante e variável. Introduziu a noção de função lógica de várias variáveis (predicados) e o conceito de quantificador. O emprego de quantificadores para ligar variáveis, principal característica do simbolismo lógico moderno e que o torna superior em alguns aspectos à linguagem vulgar e ao simbolismo algébrico de Boole, está entre as maiores invenções intelectuais do século XIX
A Importância de Frege e Peano Giuseppe Peano (1858-1932) é conhecido na lógica pela introdução dos famosos axiomas de Peano, uma notável tentativa de reduzir a aritmética comum à lógica simbólica. Os axiomas mostram essencialmente que as operações fundamentais são a função sucessor e a constante para o número zero.
A Figura de David Hilbert Dentro do contexto da lógica, a grande ambição de Hilbert (1862-1943) era demonstrar que todas as verdades matemáticas poderiam ser demonstradas dentro de um sistema puramente formal (completude). Além disso, somente as verdades matemáticas poderiam ser demonstradas em tal sistema formal (consistência).
O Problema de Decisão de Hilbert Consiste em indagar se existe um procedimento mecânico efetivo para determinar se todos os enunciados matemáticos verdadeiros poderiam ser ou não provados, isto é, se eles poderiam ser deduzidos a partir de um conjunto de premissas. Hilbert estava buscando algo como uma máquina que, após alimentada com um enunciado matemático, seria capaz de dizer se ele é falso ou verdadeiro.
Kurt Gödel Muito Além da Lógica O trabalho notável de Gödel (1906-1978) pode ser resumido no seguinte teorema: Se S é um sistema formal suficientemente forte para conter a aritmética elementar, então S é incompleto ou inconsistente. Por exemplo, em uma teoria sobre números naturais, existem verdades que não podem ser provadas apenas na lógica (simbólica)!
Kurt Gödel Muito Além da Lógica Gödel acabou com o sonho dos lógicos, visto que não se pode desenvolver toda a aritmética (e muito menos toda a matemática) num sistema lógico que seja (ao mesmo tempo consistente e) completo. Também acabou com o sonho formalista: existem enunciados matemáticos que são verdadeiros, mas não são suscetíveis de prova, isto é, existe um abismo entre verdade e demonstração
Alan Turing O Berço da Computação A revolução do computador/computação iniciou quando Alan Turing (1912-1954) tomou conhecimento do Problema de Decisão (Entscheidungs Problem) de David Hilbert. Toda a comunidade da época estava interessada em encontrar uma solução precisa para o conceito informal de realizar uma computação.
Alan Turing O Berço da Computação No artigo, On Computable Numbers, with an application to the Entscheidungs Problem (1936) Turing introduziu o conceito da Máquina de Turing. Esta máquina formaliza precisamente a noção de função computável. Função Computável = Programa para a Máquina de Turing (Tese de Turing). Entretanto há problemas que a Máquina de Turing não pode resolver (Problema da Parada). Desta forma, o problema de decisão de Hilbert apresenta uma resposta negativa!
Importância e Conseqüências A importância histórica do problema da parada é de que ele é um dos primeiros problemas a serem demonstrados indecidíveis (um algoritmo não pode dizer sim ou não). Uma outra conseqüência é que não pode existir um algoritmo que decida sobre a validade de teorema sobre números, já que o problema da parada também pode ser reformulado como um problema sobre números naturais.
Matemática, Lógica e Computação Matemática (Semântica) [Aritmética] [Geometria] [Análise] (Verdades Matemáticas) Lógica (Sintaxe) [Alfabeto (Símbolos)] [Expressões] [Axiomas e Regras de Inferência] (Teoremas) Computação [Alfabeto (Símbolos)] [Programas] [Funções e Procedimentos] [Algoritmos] [Correção de Algoritmos]