A lógica proposicional é, em demasiados aspetos, bastante limitada. Apenas permite dar conta das condições de validade de um conjunto restrito de argumentos dedutivos. A razão desta limitação é dupla: por um lado, a lógica proposicional permite determinar como válidos ou inválidos os argumentos cuja validade depende apenas dos conectores proposicionais; por outro lado, os conectores não são o único fator de que depende a validade destes argumentos.
A lógica de predicados vai mais longe: permite determinar as condições de validade de argumentos — como os silogismos, por exemplo — que, além dos conectores, dependem de expressões como “todos” e “alguns”, geralmente designadas por quantificadores.1 A palavra “todos” exprime em português o quantificador universal e a palavra “alguns” o quantificador existencial. A última designação advém do facto de a palavra “alguns” ser interpretada na linguagem de predicados como “existe pelo menos um”. A teoria aristotélica do silogismo foi a primeira a procurar elucidar as condições de validade deste tipo de argumentos, tendo sido em definitivo ultrapassada já no século XX, por Gottlob Frege (1848—1925), um matemático e filósofo alemão.
A lógica de predicados é uma extensão da lógica proposicional e inclui a lógica proposicional como um dos seus elementos (visto que também tem em consideração o papel dos conectores na determinação da validade ou invalidade das inferências de que se ocupa). Vejamos, na prática, o que isto significa.
Dado que as condições de validade dos argumentos dedutivos dependem unicamente da sua forma lógica, a lógica moderna ocupou-se em construir linguagens formais destinadas, entre outras coisas, a tornar explicitas (sem ambiguidade) a estrutura lógica de proposições e argumentos para, assim, elucidar as suas condições de validade. Os limites da lógica proposicional estão, portanto, associados a certas limitações da linguagem formal a que pode recorrer. Estas limitações dizem respeito ao seu vocabulário, que, na lógica proposicional, é significativamente mais restrito do que na lógica de predicados.
Na linguagem proposicional existem apenas três tipos de símbolos que podem ser usados para formalizar argumentos: (a) letras proposicionais; (b) símbolos para conectores; (c) parêntesis. As letras proposicionais (A, B, C, etc.) são usadas para representar proposições atómicas, isto é, proposições que não contêm conectores. Os símbolos para os conectores (¬, ∧, ∨, etc.) representam funções de verdade,2 sendo o significado de cada um expresso mediante uma tabela de verdade. Por fim, os parêntesis desempenham na linguagem proposicional a função dos sinais de pontuação nas linguagens naturais.
A linguagem proposicional não dispõe de símbolos capazes de representar quantificação nem de símbolos para evidenciar a estrutura das proposições atómicas.3 Para formalizar o seguinte silogismo precisamos da linguagem de predicados:
A premissa (1) não é uma proposição atómica (contém um quantificador e um conector, apesar de o último não ser evidente) e, embora a premissa (2) e a conclusão sejam proposições atómicas, a linguagem proposicional não dispõe dos meios para formalizar a sua estrutura interna (neste caso, a forma sujeito-predicado).4 A linguagem de predicados vem eliminar estas limitações.
Os símbolos que constituem a linguagem de predicados, além das letras proposicionais, dos símbolos para os conectores e dos parêntesis, são os seguintes.
Estes símbolos podem ser usados na formalização de proposições como “Todos são altos” (∀) e “Alguns são altos”, ou “Existem marcianos” (∃). Para concluir a formalização destas proposições, além dos símbolos para os quantificadores, precisamos de símbolos para predicados: “ser alto”, “ser marciano”, etc. Precisamos, pois, de símbolos que representem as características ou propriedades dos indivíduos particulares que estamos a referir.
Gottlob Frege introduziu uma importante inovação na forma de entender os predicados. Em resultado desta inovação, expressões linguísticas como “ser verde”, “ser alto”, etc., são interpretadas na linguagem de predicados como funções de um tipo especial. Vimos atrás que as funções são regras para estabelecer a correspondência entre elementos de dois conjuntos A e B, de tal modo que a um elemento de A poderá corresponder um e um só elemento de B. Mas, no caso dos predicados, de que conjuntos poderemos estar a falar?
A resposta pode ser claramente dada pela forma como um predicado se deixa representar. Os predicados expressam propriedades que podem ser exemplificadas por objetos (pessoas, coisas, etc.), como “ser alto” ou “ser português”.
A ideia de Frege permite representar um predicado como “ser português” como se segue:
“___é português”
O espaço vazio à esquerda da palavra serve para nele ser inserido um nome tal como na função 2x = y, o x indica o lugar da variável independente que poderemos substituir por qualquer número (por exemplo, do conjunto dos números naturais), obtendo-se desse modo o valor correspondente ao seu dobro, que é sempre único (um só) para cada valor de x. No exemplo acima, o conjunto em causa terá de ser o das pessoas (ou o dos escritores), e não, naturalmente, o dos números. (A frase “2 é português” não expressa uma proposição.)
Se, no espaço vazio, inserirmos o nome “Fernando Pessoa”, obtemos uma frase verdadeira. Se, no mesmo espaço, inserirmos o nome “Alexandre Dumas”, obtemos uma frase falsa. Uma vez que este procedimento pode ser repetido indefinidamente, é lícito concluir que este predicado, e, por extensão, qualquer outro do mesmo tipo, faz corresponder a cada objeto de um certo conjunto A que os nomes referem (neste caso, o conjunto dos escritores) um e um só elemento do conjunto B, cujos elementos são valores de verdade. Os predicados podem, nesta medida, ser interpretados como funções de objetos (objetos que os nomes referem) para valores de verdade.
Aos predicados cuja representação gráfica dispõe apenas de um lugar vazio destinado à inserção de um nome próprio chamamos predicados unários ou monádicos.
Acontece que nem todos os predicados poderão ser representados como contendo apenas um espaço vazio à esquerda da expressão linguística. Não existem, portanto, apenas predicados monádicos. As frases “Maria ama Luís” e “Coimbra fica situada entre Lisboa e o Porto” têm uma estrutura mais complexa.
Ambas as frases representam certas propriedades (ou relações) em que, por um lado, a Maria e o Luís se encontram, e, por outro, que Coimbra, Lisboa e o Porto exemplificam. O número de nomes próprios em cada uma destas frases indica qual é o número de espaços vazios que teremos de incluir na representação gráfica de cada um dos predicados em causa. O resultado é o seguinte:
“___ ama ___”
“___ fica situada entre ___ e ___”.
No primeiro caso, inserindo nos espaços vazios o par <Júlio César, Brutus> (com esta ordem), obtemos uma frase verdadeira (numa interpretação do predicado mais ampla do que é habitual); mas, se o par a inserir for <Brutus, Júlio César>, obtemos uma frase falsa (na mesma interpretação ampla). A ordem é importante, e é por essa razão que o par é ordenado). No segundo caso, com a inserção do triplo <Oeiras, Lisboa, Cascais>, tem-se uma frase verdadeira; se inserirmos o triplo <Lisboa, Oeiras, Cascais>, por exemplo, a frase é falsa.
A cada par ou triplo ordenado corresponde um só valor de verdade. Estas expressões linguísticas podem, portanto, ser interpretadas como funções de conjuntos de pares (ou triplos) ordenados para valores de verdade. Mas, como o número de lugares numa relação é qualquer um, esta ideia poderá ser expressa em toda a generalidade dizendo que, ao invés dos predicados unários, as relações são funções de n-túplos ordenados para valores de verdade.
Finalmente, para representar o lugar onde se deve inserir um nome, em vez de um espaço, pode usar-se uma variável. O resultado comparativo será o seguinte:
___ é português ou x é português
___ ama ___ ou x ama y.
Estas ideias têm consequências diretas importantes para a notação da linguagem de predicados uma vez que estão na origem dos símbolos que habitualmente se usam para representar predicados (unários) ou relações (n-ádicas).
Os predicados são geralmente representados por uma letra maiúscula que, por razões de inteligibilidade, corresponde à letra inicial do predicado em causa. Exemplos:
P_ =df “__ é português” ou Px = df “x é português”.
A_ _ = df “__ ama __” ou Axy = df “x ama y”.
(Para predicados diferentes, usam-se letras diferentes.)
Em qualquer dos exemplos dados, é feita referência a certos conjuntos de indivíduos, indivíduos esses que supostamente exemplificam determinadas características expressas pelos predicados — isto é, pelos indivíduos que possuem (presumivelmente) as propriedades de serem altos ou de serem marcianos.
Estes indivíduos podem permanecer indeterminados no sentido em que dizemos que existem números pares ou que todos os números pares são divisíveis por dois. Ao afirmarmos que existem número pares não estamos a referir qualquer número em particular, individualmente considerado, por exemplo, o número 2.
Em álgebra é habitual recorrermos a variáveis para representar números quaisquer (x, y, z, etc.), e é deste modo que procedemos na linguagem de predicados para representar um item particular qualquer que ele seja. No caso de uma proposição como “todos são altos”, por exemplo, as variáveis representam objetos pertencentes a um certo conjunto (dito o domínio do discurso).
Neste exemplo, o conjunto das pessoas que estão numa fila para a farmácia — caso em que a proposição poderá ser verdadeira — ou o conjunto de todas as pessoas — caso em que a proposição é falsa. O domínio poderá ainda ser o conjunto dos prédios de uma cidade ou de determinada rua, etc. Para sabermos qual é o conjunto de objetos em que a variável recebe valores é preciso definir um domínio. O domínio permite identificar o conjunto que teremos de considerar para determinar se a proposição é verdadeira ou é falsa.
Além de símbolos para quantificadores e símbolos para predicados (unários ou n-ádicos), a linguagem de predicados também disponibiliza símbolos para variáveis (x, y, z, etc.).
Mas ainda não é tudo. Se podemos referir-nos a indivíduos indeterminados, também podemos referir indivíduos específicos, habitualmente (como nas linguagens naturais) usando um nome próprio: “A Marta é alta”, “O Zywbr é marciano”.
Em álgebra, as constantes individuais (a, b, c, etc.) desempenham uma função equivalente à dos nomes próprios nas linguagens naturais. O mesmo sucede na linguagem de predicados. As constantes individuais são, como em álgebra, representadas na linguagem de predicados por letras minúsculas, a começar do início do alfabeto (a, b, c, etc.). A cada objeto particular de um determinado domínio de objetos poderá ser atribuída uma constante individual pela mesma razão que atribuímos nomes diferentes a pessoas diferentes.
Exemplo:
Comecemos o processo de formalização pela premissa (2):
Sócrates é homem.
Esta proposição diz-nos que o indivíduo cujo nome é “Sócrates” possui a propriedade de ser um ser humano. Além do nome e do predicado, a frase não contém mais elementos: é, portanto, uma frase atómica, da forma sujeito-predicado.
Para proceder à sua formalização precisamos de recorrer a um símbolo para um predicado e a um símbolo para denotar um indivíduo específico (uma constante).
De acordo com as convenções já expostas, a formalização tem início com o seguinte dicionário.
Dicionário
Hx = x é um ser humano
a = Sócrates
Sendo a um valor de x em Mx,5 a forma lógica da proposição é dada pela fórmula:
Ha.
Passando à conclusão, e seguindo o mesmo procedimento, tem-se:
Dicionário
Mx = x é mortal
a = Sócrates
Forma lógica
Ma
Chegados a este ponto, já podemos explicitar (parcialmente) a forma lógica do argumento:
Vejamos agora a premissa (1).
A primeira coisa a notar é que esta premissa se refere ao conjunto dos seres humanos sem especificar qualquer dos indivíduos que o constituem, mas também sem deixar nenhum deles de fora. Além disso, devemos ter em consideração que “ser um ser humano” e “ser mortal” são características que certos indivíduos exemplificam. Podemos parafrasear a premissa (1) do seguinte modo:
Qualquer que seja o indivíduo x que estejamos a considerar, caso x tenha a propriedade de ser um ser humano, então x tem também a propriedade de ser mortal.
A forma lógica da premissa (1) terá de incluir um quantificador universal, uma variável (para indicar todos os indivíduos não especificados que têm as propriedades de serem humanos e de serem mortais) e dois símbolos para predicados.
O resultado é o seguinte:
Dicionário
Hx = x é um ser humano
Mx = x é mortal
Nota: tal como os conectores não deverão estar incluídos no dicionário ao formalizarmos uma frase (ou proposição) na linguagem proposicional, nas formalizações que nos obrigam a recorrer à linguagem de predicados, só os símbolos não lógicos — isto é: predicados e constantes individuais — ocorrem no dicionário. O dicionário serve apenas para nos fornecer a interpretação pretendida para estes símbolos. A interpretação a dar aos símbolos lógicos é sempre a mesma — p. ex., as tabelas de verdade dão-nos a interpretação dos conectores, que é sempre a mesma para qualquer ocorrência de cada conector.
Formalização
Dada a paráfrase
Qualquer que seja o indivíduo x que estejamos a considerar, se x tem a propriedade de ser um ser humano, então x tem também a propriedade de ser mortal.
torna-se necessário proceder à substituição das diferentes expressões da linguagem natural que nela ocorrem pelos símbolos correspondentes da linguagem de predicados.
Assim:
(∀x) = Qualquer que seja o indivíduo x que estejamos a considerar;
→ = Se … então…
Hx = x tem a propriedade de ser humano
Mx = x tem a propriedade de ser mortal
Forma lógica
(∀x)(Hx → Mx)
Nota: Os parêntesis destinam-se a indicar que o quantificador rege as duas ocorrências da variável, no antecedente e no consequente da implicação, e não apenas a primeira, exatamente como na linguagem proposicional os parêntesis na fórmula ¬(A ⋁ B) indicam que o âmbito da negação é “A ⋁ B” e não apenas “A”.
Assim, a forma lógica do silogismo é a seguinte:
Quando se quer determinar a validade (ou invalidade) de um argumento em que o recurso à sua formalização na linguagem proposicional seja suficiente, não é necessário evidenciar a estrutura interna das proposições atómicas. É o que se passa, por exemplo, no argumento que a seguir se propõe:
e cuja forma lógica tanto pode ser dada por
como por
Contrariamente, para determinar a validade de
é indispensável recorrer à linguagem de predicados. No entanto, convirá ter em conta que a simples ocorrência de quantificadores num argumento não obriga, por si só, a recorrer à linguagem de predicados para testar a sua validade. O exemplo abaixo é um desses casos (um Modus Ponens). Embora envolva quantificação, a posição dos quantificadores não é determinante para a sua validade.
A simples observação deste argumento sugere que é possível determinar a sua validade apenas com base nos conectores proposicionais. De facto, não é possível as premissas serem ambas verdadeiras e a conclusão falsa. Se a premissa (2) for verdadeira, o consequente da premissa (1) também terá de o ser e, por maioria de razão, é a própria premissa (1) que é verdadeira (ver tabela de verdade da implicação). Mas, nesse caso, a conclusão é também verdadeira.
Seguindo os procedimentos ilustrados antes, determine a forma lógica das seguintes proposições pelo recurso à linguagem de predicados:
Dicionário
Px = x é portuguesa
Ax = x é açoriana
a = Joana
Forma lógica
Pa ⋀ Aa
Dicionário
Px = x é portuguesa
Ex = x é espanhola
a = Joana
Forma lógica
Pa → ¬Ea
Px = x é português
Ax = x é açoriano
Formalização
Paráfrase: Existe pelo menos um x tal que x é português e x é açoriano.
Forma lógica
(∃x)(Px ⋀ Ax)
Ax = x é açoriano
Px = x é português
Formalização
Paráfrase: Para todo o x, se x é açoriano, então x é português.
Forma lógica
(∀x)(Ax → Px)
Dicionário
Px = x é portuguesa
Ax = x é açoriana
Fx = x é faialense
Formalização
Paráfrase: Existe pelo menos um x tal que x é português e x é açoriano e x não é faialense.
Forma lógica
(∃x)(Px ⋀ Ax ⋀ ¬Fx)
Dicionário
A = Chove (letra proposicional)
Cx = x está constipada
a = Joana
Forma lógica
A ⋀ Ca
Dicionário
Ax = x é açoriano
Px = x é português
Ex = x é europeu
Formalização
Paráfrase: Para todo o x, se x é açoriano, então x é português e x é europeu.
Forma lógica
(∀x)[Ax → (Px ⋀ Ex)]
Dicionário
Px = x é português
a = João
Formalização
Paráfrase: Existe pelo menos um x tal que x é português e João é um deles (ou seja: é português)
Forma lógica
(∃x)Px ⋀ Pa
Dicionário
Px = x é português
Ax = x é açoriano
Formalização
Paráfrase: Não é verdade que, para todo o x, se x é português, então x é açoriano.
Forma lógica
¬(∀x)(Px → Ax)
Observação:
A proposição
Nem todos os portugueses são açorianos
é equivalente a
Alguns portugueses não são açorianos.
A segunda proposição deixa-se deduzir da primeira.
Assim, de
¬(∀x)(Px → Ax)
segue-se
(∃x)(Px ⋀ ¬Ax).
Dicionário
Ax = x é alto
Bx = x é ágil
Formalização
Paráfrase: Para todo o x, x é alto, mas não é verdade que para todo o x, x é ágil.
Forma lógica
(∀x)Ax ⋀ ¬(∀x)Bx