Lógica e Computação - DI PUC-Rio

Propaganda
Lógica e Especificação
Edward Hermann Haeusler
Departamento de Informática
TECMF
PUC/RJ
Qual a relação entre a Lógica e a Computação ?
-
O que é a (Teoria da) Computação ?
Tentativa de conceituação do
Computável
-
O que é Lógica ?
Tentativa de conceituação do
Razoável
Edward Hermann
Lógica e Computação
2
Computável
Tudo aquilo que pode ser realizado
por um ser burro com um mínimo
de conhecimento/capacidade.
burro = Incapaz de Aprender
conhecimento = ?
Edward Hermann
Lógica e Computação
3
Razoável
Todo evento que é passível de uma
explicação, na forma argumentativa,
construída sobre fatos iniciais
inquestionáveis.
Edward Hermann
Lógica e Computação
4
Computável = Razoável ?
- Computável Razoável ?
- Razoável Computável ?
Edward Hermann
Lógica e Computação
5
Como Definir tais Conceitos ?
Através de Linguagens para :
Expressar Procecimentos
Expressar Argumentos
Edward Hermann
Lógica e Computação
6
Principais Componentes de uma Linguagem
- Sintaxe : Como se escreve ?
- Semântica : O que significa ?
- Pragmática : Como se usa ?
Edward Hermann
Lógica e Computação
7
Em uma L.P.
- Como é um programa ?
- Como se executa ou,
O que um programa faz ?
- Como se constroem programas
visando a solução de problemas ?
Edward Hermann
Lógica e Computação
8
Semântica
Edward Hermann
Lógica e Computação
9
Linguagem e Metalinguagem
-
Precisa-se de uma linguagem para descrever
outra linguagem.
-
À linguagem descritora chamamos de
metalinguagem enquanto à descrita
chamamos de linguagem objeto.
Edward Hermann
Lógica e Computação
10
Paradoxos
1. Eu sou Mentiroso.
2.
Edward Hermann
- O menor denominador comum
entre 1/2 e 2/3 é 6.
- 1/2 = 2/4
Então o menor denominador comum
entre 2/4 e 2/ 3 é 6.
Lógica e Computação
11
Princípio da Funcionalidade de Frege
A Semântica de uma expressão deve ser
uma função da semântica das suas subexpressões.
Objetos sintáticos são naturalmente
Hierárquicos (estruturados).
Edward Hermann
Lógica e Computação
12
Semânticas
Extensional X Intensional
1. Planeta Vênus.
2. Estrela Vespertina.
3. Segundo Planeta do Sistema Solar.
- Em uma sem. extensional 1,2 e 3 têm o mesmo
significado.
Em uma sem. intensional 1, 2 e 3 têm diferentes
significados. A forma é levada (sintaxe ?) em
conta.
-
Edward Hermann
Lógica e Computação
13
Princípio da Funcionalidade e
intensionalidade.
•
1. Necessariamente a estrela matutina é
a estrela matutina.
2. Necessariamente a estrela matutina é
a estrela vespertina.
 Linguagem natural necessita de semântica
intensional.
Edward Hermann
Lógica e Computação
14
Expressões aritméticas :
Sintaxe
Semântica Ext.
V( (1 + 2) * 5)
*
+
5


V( 1 + 2 )
*
V( 5 )

1
2
V(
1) +
V( 2 )
* 5

(1 + 2) * 5
Edward Hermann
( 1 + 2 ) * 5 = 15
Lógica e Computação
15
A Linguagem da Lógica
A Lógica tem, tradicionalmente, por objetivo
a definição do que seja uma argumentação
correta.
Argumentação = Sequência de sentenças onde
distingue-se premissas e conclusão
Sentença = Expressão linguística enunciadora
de um pensamento completo.
Edward Hermann
Lógica e Computação
16
Exemplos de Sentenças.
1. Salvador é a capital da Bahia.
2. (2 + 3) = 5.
3. Qual o melhor time de futebol do Brasil ?
4. Compile o Programa !
O tipo de sentença de interesse em uma
argumentação é a sentença declarativa.
Edward Hermann
Lógica e Computação
17
Exemplos de Argumentos
Todo homem é mortal.
FHC é homem.
------------------------------------FHC é mortal.
Todo homem é animal
Todo gato é animal
------------------------------------Todo gato é homem
Edward Hermann
Lógica e Computação
18
Há exatamente 136 caixas de bombas
em um depósito.
Cada caixa contém pelo menos 140
bombas.
---------------------------------------------------------------------------
Nenhuma caixa tem mais de 156 bombas
Lula é o presidente do Brasil
Brasília é a capital do Brasil
--------------------------------------------A lua é um satélite da Terra
Edward Hermann
Lógica e Computação
19
Lula é o presidente do Brasil
----------------------------------------------------Lula é humano e presidente do Brasil
Lula é o presidente do Brasil
----------------------------------------------------Lula é humano ou presidente do Brasil
Edward Hermann
Lógica e Computação
20
Alguns paulistas são latinos.
Alguns brasileiros são latinos
------------------------------------------Alguns brasileiros são paulistas
Tudo que é raro é caro.
Uma casa boa e barata é rara.
------------------------------------------Uma casa boa e barata é cara.
Todo triângulo tem somente 3 lados
Todo quadrado é triângulo.
---------------------------------------------------Todo quadrado tem somente 3 lados.
Edward Hermann
Lógica e Computação
21
Argumentos e Solucao de Problemas
-Tenho 3 esferas visualmente identicas. Entretanto duas tem o mesmo
peso, enquanto uma terceira tem peso diferente. Utilizando somente
uma balanca de equilibrio, sem pesos marcados, como posso descobrir
a esfera diferente e saber se e’ mais pesada ou mais leve ???
 Prove que uma das 3 esferas e’ mais pesada ou mais leve
Edward Hermann
Lógica e Computação
22
Especificacao, Prova e Solucao de Problemas
-Os sobrenomes de Ana, Beatriz e Carla são Arantes, Braga e Castro,
não necessariamente nesta ordem. A de sobrenome Braga, que não
‘e Ana, ‘e mais velha que Carla e a sobrenome Castro e’ a mais velha
das 3.
Qual a melhor ordem ?
- Resolver, Especificar, Provar
- Resolver, Provar, Especificar
- Especificar, Resolver, Provar
- Provar, Especificar, Resolver
- Especificar, Provar, Resolver
- Provar, Resolver, Especificar
Edward Hermann
Lógica e Computação
23
Em Lógica Matemática
Prova
•
(Argumentação)
formada por
Premissas
Regras de
Inferência
(Argumento)
formada por
conclusão
são
Sentenças
?
conectivos/
quantificadores
Átomos
Sentenças Compostas
Edward Hermann
Lógica e Computação
24
Como representar os elementos da linguagem
lógica tendo por princípio a universalidade ?
Formalização da linguagem.
Somente conectivos/quantificadores podem
possuir significado a priori.
Átomos são representados por
Letras sentenciais (log. Sentencial).

Fórmulas (combinações de átomos
via conectivos) representam sentenças
em geral.
Edward Hermann
Lógica e Computação
25
Conectivos
Da praxis matemática tiramos :
•
Conjunção ( "e" lógico)
 Disjunção ( "ou" lógico)
  Implicação ( "se ____ então____")
 ~ = Negação ( "não lógico ")
O significado de cada conectivo pode ser determinado
pelas regras que ditam seu uso
(Semântica Operacional)
O significado de cada conectivo pode ser determinado
pelas condições de verdade estabelecidas por ele
(Semântica tradicional ou Tarskiana)
Edward Hermann
Lógica e Computação
26
Fórmulas
Toda letra sentencial é uma fórmula
Se ae b são fórmulas, então também
são fórmulas :
-
ab
ab
ab
~a
Obs : Parenteses são usados para auxiliar
à análise sintática.
Edward Hermann
Lógica e Computação
27
Semântica p/ Lógica Clássica
Extensional com Valores de "Verdade".
Atribuição arbitrária de valores para as
letras sentenciais. (Interpretação)
Fórmulas têm seus valores determinados
pela interpretacão e pelas funções semânticas associadas a cada conectivo.
Edward Hermann
Lógica e Computação
28
Funções na forma de Tabela.

V
F

V
F
V
V
F
V
V
V
F
F
F
F
V
F

 V
F
~
V
F
F
V
V
V
F
F
VF
V
Edward Hermann
Lógica e Computação
29
Edward Hermann

V
F

V
F
V
V
F
V
V
F
F
V
V
F
F
V
Lógica e Computação
30
Atribuição de Valores à fórmulas
Interpretação :
I : Letras -{V,F}
Dada uma interpretação I pode-se definir a
denotação associada V:


V(I, L) = I ( L) se L é letra sentencial.
V( I, ab) = V(I, a) V( I, b)
V(I, ab) = V(I, a) V(I, b)
V(I, a) = V(I, a) F = ~ V(I, a)
Edward Hermann
Lógica e Computação
31
Def. Uma f órmula a é dita satisfatível, sse, existe uma
interpretação que a torna verdadeira, i.e.
Existe I , tal que
V(I,
a) = V
Def. Um conjunto de f órmulas é satisfatível, sse, todas
as suas fórmulas são satisfatíveis (para a mesma
interpretação.
Def. Diz-se que uma fórmula é válida, sse, ela é
verdadeira sob toda interpretação.
Edward Hermann
Lógica e Computação
32
O conceito de conectivo principal.
É aquele conectivo que aparece em
primeiro plano em uma análise sintática.
Exemplos:
(A B)  (C D)
~ (A B)
(A B)
Edward Hermann
C
Lógica e Computação
33
Def. Uma fórmula aé dita ser consequência lógica
de um conjunto Gde fórmulas (G a), sse :
- Toda interpretação que "torna" todas as
fórmulas de G verdadeiras “torna” averdadeira.
Ex:
-
{ ~~ A}
A
{A, A B}
B
{A B, A C, B C}
{A B}
~B ~A
Def. a é equivalente a b sse a
Edward Hermann
C
b eb
Lógica e Computação
a
34
Completude funcional da lógica clássica
- Pode-se expressar todas os conectivos em função de  e  ??
- Pode-se expressar todas os conectivos em função de  e  ??
- Pode-se expressar todas os conectivos em função de  e ??
- Pode-se expressar todas os conectivos em função de  e ??
- Pode-se expressar todas as funções booleanas (arid. finita) por
meio dos conectivos acima ??
- Pode-se expressar todas as funções booleanas (arid. finita) com
um conectivo só (novo certamente) ??
Edward Hermann
Lógica e Computação
35
Sistemas Dedutivos e Argumentação Formal
Def1. Um sistema dedutivo é um mecanismo que permite a construção
de argumentos formais
Def2. Um sistema dedutivo é um mecanismo que permite estabelecer
conclusões a partir de hipóteses.
Def3. Um sistema dedutivo é um conjunto de regras (as vezes axiomas)
que permite “chegar” a conclusões (sentenças) a partir de
hipóteses (sentenças).
Def4. Um sistema dedutivo é um conjunto de regras (as vezes axiomas)
onde os axiomas são fórmulas válidas e as regras preservam
a verdade.
Edward Hermann
Lógica e Computação
36
Universalidade da noção de
correto
O conceito de argumento correto deve ser
baseado na forma do mesmo e não em seu
significado particular, ou
Um argumento é correto quando é invariante
sob substituição, i.e., o que importa é o relacionamento entre premissas e conclusão e
não estas propriamente ditas.
Edward Hermann
Lógica e Computação
37
Os sistemas a la Frege/Hilbert
Esquemas de Axiomas:
(K)
A(B A)
(S)
A (B C)  (A B) (A C)
(Cla)  A A
Regra:
A
(Modus Ponens)
Edward Hermann
AB
B
Lógica e Computação
38
Exemplos de Deduções
A ((A  A)  A)
A ((A  A)  A) ( (A(AA))  (AA))
(A(AA))  (AA)
A(AA)
AA
B (B  A)
B (B  A) A  B (B  A)
A  B (B  A)
Edward Hermann
Lógica e Computação
39
Discussão:
1- O método da “tabela verdade” é um sistema dedutivo ??
2- O que dizer do sistema dedutivo somente com a regra de
modus ponens e como axiomas todas as fórmulas válidas (tautologias)
3- Como comparar sistemas dedutivos ??
4- O que a prova de um teorema deve nos dizer ??
5- O que prova de teoremas tem a ver com computação e programação ??
Edward Hermann
Lógica e Computação
40
Programa do Curso
1.
2.
3.
4.
Edward Hermann
Linguagem Clássica de Primeira Ordem.
Lógica Intuicionista
Algebras de Processo
Logicas Temporais
Lógica e Computação
41
Download