Lógica para computação Professor Marlon Marcon INTRODUÇÃO O objetivo geral da logica formal é a mecanização do raciocnio, ou seja, A obtenção de informação a partir de informações prévias por meio de recursos que podem ser implementados em um computador. Qualquer forma de raciocínio tem, pelo menos, dois aspectos: a representação da informação em uma linguagem adequada e a aplicação de mecanismos de inferência a informação representada, para a obtenção da nova informação. INTRODUÇÃO Assim, todo sistema lógico, que é aparato formal para a representação e obtenção da informação, tem, pelo menos duas partes: o Uma linguagem, por meio da qual proposições (ou sentencas) de outras linguagens podem ser expressas; o Um mecanismo de inferência, por meio do qual argumentações (ou deduções) efetuadas em outras linguagens podem ser checadas e argumentações (ou deduções) do proprio sistema podem ser efetuadas. INTRODUÇÃO O sistema lógico mais simples é a Lógica Proposicional, e o estudo deste segue três passos básicos: Especificação de uma linguagem, a partir da qual o conhecimento é representado. o Considera os conceitos de sintaxe e semântica associados à linguagem Estudo de métodos que produzam ou verifiquem as fórmulas ou os argumentos válidos Definição de sistemas de dedução formal em que são consideradas as noções de prova e consequência lógica. 1
LINGUAGEM DA LÓGICA PROPOSICIONAL Definição A definição da linguagem da lógica proposicional é semelhante à definição de outras linguagens, como por exemplo, a linguagem da lingua portuguesa. Alfabeto o { a, b,..., z, A, B,..., Z } A concatenação das letras d e e forma a palavra de, que pertence à linguagem da lingua portuguesa. Por outro lado a concatenação das letras e e d, cujo resultado é ed não pertence. Definição Nas linguas naturais, como o português, temos os dicionários de determinam as palavras da linguagem. No caso da lógica, não existe dicionário e sim regras para formação das sentenças. Gramática o É um conjunto de regras que determinam como as palavras e os simbolos do alfabeto devem ser combinados para formar sentenças. Sentenças Nas linguagens naturais as sentenças podem ser classificadas como: Interrogativas = Qual é seu nome? Imperativas = Lave as panelas agora! Declarativas = José é uma pessoa legal Na lógica usamos as sentenças declarativas somente. 2
Sentenças Portanto, a lógica considera sentenças somente do tipo Está chovendo, que podem ser interpretadas como verdadeiras ou falsas. A definição de sentença, na verdade se confunde com a definição de proposição: Sentença: sequência de palavras que obedecem a certas regras gramaticais. Proposição: é uma sentença que pode ser ou não verdadeira. Proposição Uma proposição não pode ser ambígua, exemplo: o Eu vi José com uma luneta A proposição não leva em conta a ordem das palavras, e sim seu significado, exemplo: o José comeu o bolo o O bolo foi comido por José o José comerá o bolo o José come o bolo Expressões equivalentes Validade de argumentos Exemplo 1: O argumento que segue é válido? Validade de argumentos Exemplo 2: O argumento que segue é válido? Se eu ganhar na Loteria, serei rico. Eu ganhei na Loteria. Logo, sou rico. É Válido (a conclusão é uma decorrência lógica das duas premissas.) Se eu ganhar na Loteria, serei rico Eu não ganhei na Loteria Logo, não sou rico Não é Válido (a conclusão não é uma decorrência lógica das duas premissas.) 3
Alfabeto da LP Definição 1.1 (alfabeto) O alfabeto da Lógica Proposicional é constituído por: Símbolos de pontuação: (, ); Simbolos de verdade: true, false; Simbolos proposicionais: P, Q, R, S, P 1, Q 1, R 1, S 1, P 2,...; Conectivos proposicionais:, Λ, V,,. o : não o Λ: ou o V: e o : se... então ou implica o : se, e somente se, sse ou bi-implicação Alguns livros descrevem como V e F Alguns livros descrevem como ~ Fórmulas da LP Na LP, como na lingua portuguesa, não é qualquer concatenação de palavras que forma uma sentença; Definição 1.2 (fórmula) As fórmulas da Lógica Proposicional são construídas, de forma indutiva, a partir dos símbolos do alfabeto conforme as regras a seguir. O conjunto das fórmulas é o menor conjunto que satizfaz as regras: Fórmulas da LP Todo símbolo de verdade (true) é uma fórmula; Todo simbolo proposicional é uma fórmula; Se H é uma fórmula, então ( H), a negação de H, é uma fórmula; Se H e G são fórmulas, então a disjunção de H e G, dada por: (H V G), é uma fórmula Se H e G são fórmulas, então a conjunção de H e G, dada por: (H Λ G), é uma fórmula; Se H e G são fórmulas, então a implicação de H em G, dada por: (H G), é uma fórmula. Se H e G são fórmulas, então a bi-implicação de H em G, dada por: (H G), é uma fórmula. Construção de fórmulas Exemplo 1: o A partir das fórmulas P e Q, obtemos a fórmula (P V Q) o Utilizando as fórmulas (P V Q) e true, obtemos a fórmula ((P V Q) true) Este raciocínio pode ser repetido obtendo-se com isso, infinitas fórmulas; Exemplo 2: o PR o (R true ) o (true (R true )) As fórmulas acima não são válidas, pois não podem ser obtidas a partir da Definição 1.2. 4
Ordem de precedência Na LP utiliza-se parênteses para definir qual é a ordem que os conectivos serão aplicados, quando estes forem omitidos, utiliza-se a seguinte ordem: Definição 1.3 (ordem de precedência) Na lógica proposicional, a ordem de precedência dos conectivos proposicionais é definida por: Maior precedência: Precedência média: e Menor precedência: Λ e V Comprimento de uma fórmula Definição 1.4 (comprimento de uma fórmula) Seja H uma fórmula da Lógica Proposicional. O comprimento de H, denotado por comp[h], é definido como segue: Se H = P ou é um simbolo de verdade, então comp[h] = 1 comp[ H] = comp[h] + 1; comp[h v G] = comp[h] + comp[g] + 1 comp[h Λ G] = comp[h] + comp[g] + 1 comp[h G] = comp[h] + comp[g] + 1 comp[h G] = comp[h] + comp[g] + 1 Os simbolos de pontuação não são considerados. Comprimento de uma fórmula Exemplo 1: (P Q) tem tamanho igual a 3 Exemplo 2: (( P Λ Q) R) tem tamanho igual a 5 Subfórmula Definição 1.5 (subfórmula) Seja H uma fórmula da Lógica proposicional, então: H é uma subfórmula de H Se H é uma formula do tipo ( G), então G é uma subfórmula de H; Se H é uma formula do tipo: (G v E), (G Λ E), (G E) ou (G E), então G e E são subfórmulas de H; Se G é subfórmula de H, então toda subfórmula de G é subfórmula de H 5
Subfórmulas As subfórmulas de (((P v S) Λ Q) R) são: (((P v S) Λ Q) R); ((P v S) Λ Q); (P v S); R; Q; P; S. Exercícios - fórmulas 1. Quais das expressões seguintes são fórmulas e quais não são: a) R b) ( R) c) PQ d) (P Q) e) ( P ^ Q) Exercícios ordem de precedência 2. Elimine o maior número possível de símbolos de pontuação das fórmulas a seguir, mantendo a representação da fórmula original: a) (( ( P)) (( (( ( (P v Q))) R)) Λ P)) b) ((P v Q) (P ( Q))) Exercícios comprimento e subfórmula 3. Determine o comprimento e as subfórmulas das fórmulas a seguir: a) (( P v Q) (P Q)) Λ true b) ((P P) P)v Q 6
Exercícios Mais exercícios podem ser encontrados nas páginas 10 e 11 do livro texto. João Nunes de Souza Lógica para Computação: Uma introdução concisa 2ª Edição Editora Elsevier 7