O Cálculo de Predicados, dotado de uma linguagem mais rica, tem várias aplicações importantes não só para matemáticos e filósofos como também para estudantes de Ciência da Computação.
Podemos observar que nas linguagens de programação conhecidas como
PROCEDURAIS (Pascal e outras) , os programas são elaborados para "dizer"
ao computador a tarefa que deve ser realizada. Em outras linguagens de
programação conhecidas como DECLARATIVAS, os programas reunem uma série de
dados e regras e as usam para gerar conclusões. Estes programas são conhecidos
como SISTEMAS ESPECIALISTAS ou SISTEMAS BASEADOS NO CONHECIMENTO que simulam em
muitos casos a ação de um ser humano. Essas linguagens declarativas inclui
predicados, quantificadores , conectivos lógicos e regras de inferência que,
como veremos, fazem parte do Cálculo de Predicados.
Também podemos observar, como expomos abaixo, que existem vários tipos de argumentos os quais, apesar de válidos, não é possível justificá-los com os recursos do Cálculo Proposicional:
1. Todo amigo de Carlos é amigo de Jonas.
Pedro não é amigo de Jonas.
Logo, Pedro não é amigo de Carlos.
2. Todos os humanos são racionais.
Alguns animais são humanos.
Portanto, alguns animais são racionais.
A verificação da validade desses argumentos nos leva não só ao significado dos conectivos mas também ao significado de expressões como "todo", "algum", "qualquer", etc.
Para que possamos tornar a estrutura de sentenças complexas mais transparente é necessário a introdução de novos símbolos na linguagem do Cálculo Proposicional, obtendo-se a linguagem do Cálculo de Predicados de 1a Ordem.
Nesta nova linguagem teremos, além dos conectivos do cálculo proposicional e os parênteses, os seguintes novos símbolos:
variáveis: x,y,z,.....,x ,y ,z
,......
constantes : a,b,c,....,a ,b ,c
,......
símbolos de predicados: P , Q , R ,
S ,....
quantificadores : "
(universal) , $ (existencial)
termos: as variáveis e as constantes
são designadas pelo nome genérico de termos os quais serão designados por
t1 , t2 , ...,tn
...
as variáveis representam objetos
que não estão identificados no Universo considerado ("alguém",
"algo", etc.);
as constantes representam objetos
identificados do Universo ("João", "o ponto A", etc. );
os símbolos de predicados
representam propriedades ou relações entre os objetos do Universo.
Exemplos:
"Maria é inteligente" : I(m) ; onde "m"
está identificando Maria e "I" a propriedade de "ser
inteligente".
"Alguém gosta de Maria" : G(x,m) ; onde G representa a
relação "gostar de" e "x" representa "alguém".
De modo geral temos:
P(x) : significa que x tem a propriedade
P .
("x)P(x):
significa que a propriedade P vale para todo x, ou ainda, que todos os
objetos do Universo considerado tem a propriedade P.
($x)P(x):
significa que algum x tem a propriedade P, ou ainda, que existe no mínimo um
objeto do Universo considerado que tem a propriedade P.
Notamos que os símbolos de predicados serão unários, binários ou n-ários conforme a propriedade que representam envolver, respectivamente um, dois ou mais objetos do universo e dizemos também que o símbolo de predicado tem peso 1, peso 2 ... ou peso n.
OBS.: Um símbolo de predicados 0-ário (peso zero) identifica-se com um dos símbolos de predicado; por exemplo: "chove" podemos simbolizar "C".
As fórmulas mais simples do Cálculo de Predicados de 1a
Ordem são chamadas de fórmulas atômicas
e podem ser definidas como:
"Se P for um símbolo de predicado de peso n e se t1
, t2 , ...,tn forem termos então
P(t1 , t2
, ...,tn ) é uma fórmula atômica."
DEFINIÇÃO DE
FÓRMULA:
1.Toda fórmula atômica é uma fórmula.
2.Se a e b forem fórmulas
então (~a), (aÙb) , (aÚ
b) , (a® b)
e (a«b) são fórmulas.
3.Se a for uma fórmula e x uma variável então ("x)a
e ($x)a são fórmulas.
4.As únicas fórmulas são dadas por 1. 2. e 3. acima.
Exemplos de fórmulas: P(x,a);
R(y,b,t); ("z)(P(x,a) ®
R(y,b,z));
~($x)(~P(x,a) Ù
R(y,b,t));
($y)("x)R(y,b,t).
Assim os argumentos dados no início podem ser representados simbolicamente
como:
1. Todo amigo de Carlos é amigo de Jonas.
Pedro não é amigo de Jonas.
Logo, Pedro não é amigo de Carlos.
("x) (P(x,c) ®
P(x,j))
~ P(p,j)
~ P(p,c)
onde P(x,y) significa que x é amigo de y e c, p, j são constantes que representam Carlos, Pedro e Jonas respectivamente.
2. Todos os humanos são racionais.
Alguns animais são humanos.
Portanto, alguns animais são racionais.
("x) (P(x) ®
Q(x))
($x) (R(x) Ù
P(x))
($x) (R(x) Ù
Q(x))
onde P ,Q ,R simbolizam as propriedades de: ser humano, ser racional e ser animal respectivamente.
ESCOPO DE UM QUANTIFICADOR : Se a é uma fórmula e x uma variável, então em ("x)a ou em ($x)a dizemos que a é o escopo do quantificador ("x) ou ($x).
Por exemplo na fórmula ($y)("x)(R(y,b,t) ® ("z) P(z,a)) temos os seguintes quantificadores e seus respectivos escopos:
($y) : ("x)(R(y,b,t)
® ("z) P(z,a))
("x) : (R(y,b,t) ®
("z) P(z,a))
("z) : P(z,a)
NEGAÇÃO DE FÓRMULAS
QUANTIFICADAS: da definição de fórmula dada acima podemos perceber
que um quantificador universal ou existencial pode ser precedido de uma
negação. Vejamos como podemos proceder se for necessário a eliminação dessa
negação.
Consideremos, por exemplo, a fórmula ("x)P(x) e o conjunto universo U={a,b,c}. É evidente que nesse caso temos: ("x)P(x) Û P(a) Ù P(b) Ù P(c).
Podemos considerar então que :
~("x)P(x) Û~(P(a)
Ù P(b) Ù P(c)) Û~P(a)
Ú~P(b) Ú~P(c)
o qual significa que existe no mínimo um objeto em U tal que ~P(x)
, ou seja ,
~("x)P(x) Û
($x) ~P(x) ou ainda de
modo geral para uma fórmula a qualquer temos
(1)~("x) aÛ ($x) ~a
Da equivalência acima segue imediatamente que :
(2). ~("x)~P(x)
Û ($x)P(x)
(3). ~($x)P(x) Û
("x)~P(x)
(4). ~($x)~P(x)
Û ("x)P(x)
Certos enunciados se apresentam freqüentemente na Lógica Clássica e
tradicionalmente são chamados de Enunciados Categóricos.
Relacionaremos os quatro enunciados mais comuns que são representados pelas
letras A, E, I, O :
A - da forma "Todo P é Q" (universal afirmativa)
E - da forma "Nenhum P é Q" ou "Todo P não é Q"
(universal negativa)
I - da forma "Algum P é Q" (particular afirmativa)
O - da forma "Algum P não é Q" (particular negativa)
simbolizados respectivamente como:
A - ("x)(P(x) ®
Q(x))
E - ("x)(P(x) ®~Q(x))
I - ($x)(P(x) Ù
Q(x))
O - ($x)(P(x) Ù~Q(x))
Se considerarmos P e Q dados acima como dois conjuntos quaisquer, os enunciados dados podem ser interpretados como segue:
A: "Todo P é Q" afirma
que todos os elementos de P são elementos de Q, ou seja,
que P é um subconjunto de Q, isto é, P Ì
Q .
E: "Nenhum P é Q" afirma
que os conjuntos P e Q não têm elementos em comum, isto é,
que P Ç Q =Æ
ou ainda que P Ì Q’.
I : "Algum P é Q" afirma
que os conjuntos P e Q têm pelo menos um elemento em comum, isto é,
P Ç Q ¹Æ
O: "Algum P não é Q"
afirma que P tem pelo menos um elemento que não está em Q, ou ainda,
que P Ç Q’ ¹
Æ .
Estas interpretações podem ser feitas através de Diagramas de Venn, os
quais são úteis na verificação da validade de argumentos cujas premissas e
conclusão são enunciados categóricos do tipo A, E, I ou O mas
não devem ser considerados instrumentos de prova rigorosa.
Lembramos que no Cálculo Proposicional os diagramas de Venn foram utilizados
para estabelecer uma correlação entre as linhas da tabela verdade de uma
fórmula e as regiões do diagrama de Venn correspondente.
Para verificarmos a validade de um argumento, as interpretações dos enunciados categóricos nos Diagramas de Venn serão consideradas como segue:
1. Cada círculo representa uma classe de objeto que quando em branco indica
ausência de informação
a respeito do conjunto.
2. Círculo hachurado ou região de um círculo hachurada, representa
região VAZIA de elementos.
3. Círculo ou região de um círculo com X representa região não vazia
de elementos.
Exemplo: Se J representa o predicado "ser jovem" temos os diagramas
abaixo:
REPRESENTAÇÃO DOS ENUNCIADOS CATEGÓRICOS
Os enunciados categóricos podem ser representados como segue :
VALIDADE DE ARGUMENTOS
CATEGÓRICOS POR DIAGRAMAS DE VENN
Para verificarmos a validade de um argumento categórico procedemos como
segue:
1.Transferimos para o diagrama, formado por três círculos, as informações
das premissas, iniciando pelos enunciados universais;
2.Verificamos se informação dada na conclusão esta aí representada sem
nenhuma condição e de modo único.
3.Se isto ocorre então o argumento é válido.
Vejamos os seguintes exemplos:
Exemplo I.
(1) Todos os cientistas são estudiosos.
(2) Alguns cientistas são inventores.
(3) Alguns estudiosos são inventores.
A parte hachurada corresponde ao enunciado (1), vazia de elementos; a parte
assinalada com X corresponde ao enunciado (2). Dessa forma, as informações das
premissas forem transferidas para o diagrama e a conclusão (3) está
representada. Portanto o argumento é válido.
Exemplo II.
Todos os brasileiros são felizes.
Todos os paulistas são brasileiros.
Todos os paulistas são felizes.
Vemos que o argumento é válido pelo diagrama acima.
Exemplo III.
(1) Nenhum estudante é velho .
(2) Alguns jovens não são estudantes.
(3)Alguns velhos não são jovens.
A premissa (1) está representada na região hachurada e a premissa (2) está
marcada com X sobre a linha pois a informação correspondente pode estar
presente em duas regiões e não temos informação para saber especificamente
em qual delas. Desse modo o argumento não é válido pois a conclusão
não está representada com absoluta certeza.
A validade de um argumento não depende do conteúdo dos enunciados e sim da
sua forma e da relação entre as premissas e a conclusão.
GENERALIZAÇÃO PARA O CÁLCULO DE PREDICADOS DE 1a ORDEM.
No Cálculo Proposicional mostramos como as tabelas verdade, as demonstrações e as árvores de refutação podem ser usadas para a verificação da validade de argumentos e de tautologias. Verificaremos no que segue como as árvores de refutação podem ser generalizadas para o Cálculo de Predicados de 1a Ordem.
Como anteriormente, as árvores de refutação vão nos permitir verificar a validade de argumentos em um número finito de passos. No entanto, esta técnica no Cálculo de Predicados pode não nos fornecer nenhuma resposta em alguns casos como veremos adiante.
A generalização das árvores de refutação para o Cálculo de Predicados de 1a Ordem manterá todas as regras anteriormente dadas para o Cálculo Proposicional e novas regras serão estipuladas para as fórmulas contendo os quantificadores Universal (") e Existencial ($). Teremos então, além das dez regras dadas no cálculo Proposicional, as seguintes novas regras :
11. Regra da Negação do Quantificador Universal (~"): Uma fórmula do tipo ~("x)b gera uma linha na qual escrevemos a fórmula ($x)~b. Procedemos assim em todos os ramos abertos aos quais a fórmula ~("x)b pertence.
12. Regra da Negação do Quantificador Existencial(~$) : Uma fórmula do tipo ~($x)b gera uma linha na qual escrevemos a fórmula ("x)~b. Procedemos assim em todos os ramos abertos aos quais a fórmula ~($x)b pertence.
13. Regra do Quantificador Existencial ( $) : Uma fórmula do tipo ($x)b(x) gera uma linha na qual escrevemos a fórmula b(c) onde c é uma nova constante que não ocorre em qualquer ramo da árvore e substituirá as ocorrências da variável x, do quantificador, na fórmula b. Procedemos assim em todos os ramos abertos aos quais a fórmula ($x)b(x) pertence.
Justificativa: A fórmula ($x)b(x) significa que existe pelo menos um objeto do Universo que tem a propriedade b e este será identificado, sempre, por uma "nova" constante ou seja, uma constante que não ocorre na árvore.
14. Regra do Quantificador Universal (") : Uma fórmula do tipo ("x)b(x) gera uma linha na qual escrevemos a fórmula b(c) onde c é qualquer constante que já ocorre em qualquer ramo da árvore e substituirá as ocorrências da variável x, do quantificador, na fórmula b. Procedemos assim em todos os ramos abertos aos quais a fórmula ("x)b(x) pertence.
Justificativa: A fórmula ("x)b(x) significa que todos os objetos do universo tem a propriedade b. Sendo assim, a regra deve ser aplicada a todas as constantes presentes na árvore e eventualmente para aquelas que surgirem durante a "construção" da árvore como observamos abaixo.
OBSERVAÇÕES IMPORTANTES:
1. Como sabemos, as fórmulas para as quais são aplicadas as regras, sempre serão "marcadas" (Ð). No entanto, para a regra (") do quantificador universal isto não será obedecido pois, se surgir uma nova constante na árvore por aplicação da regra ($), para esta constante deverá ser aplicada a regra (") em todas as fórmulas do tipo ("x)b(x) da árvore.
2.Somente se nenhuma constante ocorre em algum ramo é que podemos introduzir uma nova constante para usar em possíveis aplicações da regra (") ao longo do referido ramo.
Exemplo I.: Vamos verificar que a fórmula ("x)P(x) ® ($x)P(x) é válida por árvore de refutação.
1. ~(("x)P(x)
® ($x)P(x)) Ð
Premissa
2. ("x)P(x)
1. (~®)
3. ~($x)P(x)Ð
1. (~®)
4. ("x)~P(x)
3. (~$)
5. P(a)
2. (") (obs.2 acima)
6. ~P(a)
4. (")
7. X
5. e 6.
Exemplo II. Verifique a validade do argumento categórico :
Todos os cientistas são estudiosos. - ("x)(C(x)
® E(x))
Alguns cientistas são inventores. - ($x)(C(x)
Ù I(x))
Alguns estudiosos são inventores. - ($x)(E(x)
Ù I(x))
1. ("x)(C(x)
® E(x))
Premissa
2. ($x)(C(x)
Ù I(x)) Ð
Premissa
3. ~($x)(E(x)
Ù I(x)) Ð
Premissa Adicional
4. ("x)
~ (E(x) Ù I(x))
3.(~$)
5. (C(a)
Ù I(a)) Ð
2. ($) : a é nova constante
6. (C(a)
® E(a)) Ð
1.(") : a é constante que já ocorre
7. ~
(E(a) Ù I(a)) Ð
4. (") : a é constante que já ocorre
8.
C(a)
5. (Ù)
9.
I(a)
5. (Ù)
/ \
10. ~C(a)
E(a)
6.(®)
/ \
11. X (10,8) ~E(a)
~I(a)
7.(~Ù)
12.
X (1,10) X(11,9)
O argumento é válido pois todos os ramos foram fechados.
Exemplo III. Verifique a validade do argumento categórico :
Nenhum estudante é velho
.
("x)(E(x) ® ~V(x))
Alguns jovens não são estudantes ($x)(J(x)
Ù~E(x))
Alguns velhos não são jovens. ($x)(V(x)
Ù~J(x))
1. ("x)(E(x)
®~V(x))
Premissa
2. ($x)(J(x)
Ù~E(x))Ð
Premissa
3. ~ ($x)(V(x)
Ù~J(x))Ð
Premissa Adicional
4. ("x)
~ (V(x) Ù~J(x))
3. (~$)
5.
(J(a) Ù~E(a))Ð
2. ($) : a é nova constante.
6. (E(a)
® ~V(a))Ð
1. (") : a é constante que já existe.
7. ~(V(a)
Ù~J(a))Ð
4. (") : a é constante que já
existe
8.
J(a)
5. (Ù)
9.
~E(a)
5.(Ù)
/ \
10. ~E(a)
~V(a)
6.(®)
/
\
/ \
11. ~V(a) ~~J(a)
~V(a) ~~J(a)
7.(~Ù)
12. /
\
/
\
O argumento não é válido pois a árvore terminou e temos ramos abertos.
Exemplo IV. ("x)($y)P(x,y) , P(a,a)
1. ("x)($y)P(x,y)
Premissa
2. ~ P(a,a)
Premissa adicional.
3. ($y)P(a,y)Ð
1. (") : a é constante que já existe.
4. P(a,b)
3. ($) : b é nova constante.
5. ($y)P(b,y)Ð
1. (") : b é constante que já existe.
6. P(b.c)
5. ($) : c é nova constante.
Como podemos observar a árvore nunca terminará; é infinita. Vamos assumir que o argumento não é válido.
Na verdade não existe um método efetivo que nos permita decidir sempre, e para qualquer argumento do Cálculo de Predicados, se tal argumento é válido ou não é válido. Este resultado mostra que o Cálculo de Predicados é indecidível. A indecidibilidade do Cálculo de Predicados pode ser provada e é conhecida como "Tese de Church" . Há muitos livros de lógica que abordam este assunto.
Quando verificamos a validade de um argumento estamos verificando se, no caso
das premissas serem verdadeiras elas inferem uma determinada conclusão. Isto é
possível ser feito por vários métodos no Cálculo Proposicional os quais não
todos se generalizam para o Cálculo de Predicados como verificamos acima.
OCORRÊNCIAS LIVRE E LIGADA DE
UMA VARIÁVEL:
Uma ocorrência de uma variável x numa fórmula é ligada se x é uma
variável de um quantificador na fórmula ou x está no escopo de um
quantificador ("x) ou ($x)
na fórmula. Caso contrário a ocorrência de x é livre.
VARIÁVEL LIGADA (LIVRE):
Se a ocorrência de x é ligada (livre) numa fórmula, dizemos que x é
variável ligada (livre) na fórmula. Assim uma variável pode ser livre ou
ligada numa mesma fórmula.
Exemplo:Na fórmula ($y)(("x)R(y,b,t)
® ("z) P(x,a))
temos cinco variáveis que estão numeradas onde:
1 2
3
4 5
1,2,3,4 são ligadas e 5 é livre. Vemos que x ocorre livre e ligada na mesma fórmula.
SENTENÇA:
Uma fórmula em que não há ocorrências livres de variáveis chamamos de
sentença.
TERMO LIVRE PARA UMA VARIÁVEL:
Um termo t é livre para a variável y na fórmula a
se, quando se substitui as ocorrências livres de y por t, as ocorrências de t
em a assim obtidas ocorrem livres.
Exemplos:
1. x é livre para y em P(y).
2. x não é livre para y em ("x)P(y).
3. x é livre para x em qualquer fórmula.
4. qualquer termo é livre para x numa fórmula a se
em a não há ocorrência livre de x.