Continuando o artigo anterior, (se você não o viu, poderá vê-lo em: http://vivaolinux.com.br/artigo/Introducao-a-Logica-para-computacao/ ),
estaremos adentrando em outras propriedades da Lógica direcionada à computação.
Álgebra das proposições, regra de Morgam e método dedutivo
Álgebra das proposições
A álgebra das proposições é utilizada para reduzir/modificar expressões compostas, ou seja, também são conhecidas como propriedades.
Como descobrir se a propriedade aplicada está correta? Basta desenvolver a tabela verdade de todas as proposições empregadas na proposição composta, ou seja, todas as proposições devem ser equivalências lógicas.
A regra nega as proposições invertendo o valor lógico da proposição v (ou) para E e vice-versa.
Exemplo:
~(p^q) <=> ~pv~q
Outro exemplo:
~(pv~q)v~(p^q) <=> (~p^q) v (~pv~q)
Método dedutivo
No método dedutivo, as equivalências relativas desempenham um papel importante nas equivalências lógicas. As simples proposições (simples ou compostas) podem ser
substituídas por P,Q,R,T(Tautológica, Contradição).
Exemplo:
(p->(~p->q)<=>p->(~~pvq) <=> ~pv(pvq) <=> (~pvp) v (~pvq) <=> T v (~pvq) <=> T
A implicação acima representa uma tautologia.
Mas por quê? Porque como pode-se observar, a propriedade distributiva gera (~pvp), ou seja, ela é obrigatoriamente forçada a gerar um valor verdadeiro. Se p:f, então p:v. Se p:v, então p:v. Ao juntar-se com o operador v(OU), ela obriga a proposição formada a gerar um valor verdadeiro na resolução.
Caso a proposição fosse T ^ (~pvq), então, o valor lógico é igual a (~pvq), pois, o valor mesmo que falso, juntado. com (~pvq) será (~pvq).
[7] Comentário enviado por lcavalheiro em 29/12/2011 - 14:02h
Ariel, eu tenho uma sugestão com relação às regras de cálculo proposicional de primeira ordem. O método de sistema dedutivo que você apresentou é funcional, mas exigem muita decoreba e nem sempre são de aplicação simples e imediata. Nos estudos contemporâneos de Lógica Matemática esse método está sendo abandonado em prol das regras de inclusão e eliminação de operadores(literalmente, operações com operadores lógicos). Existe um livro muito bom sobre o assunto (infelizmente eu não sei se ele já foi traduzido pro nosso idioma) chamado "Logic and Structure", de Dirk van Dalen. Assim que a carga no meu computador reduzir um pouco (no momento estou compilando o Virtual Box pra testar a distro educacional Pandorga, que nosso governo criou baseada em (argh!) Debian) eu te passo as regras, ok?
[10] Comentário enviado por arieldll em 30/12/2011 - 21:11h
Obrigado pela sinalização! Sem problemas, podemos corrigir facilmente a expressão.
Para a proposição ser contraválida basta substituir a epxressão por: (p^~q)^q. Onde que o q força uma negação na linha, bem como toda a tabela.
Se possível moderação, favor corrigir.
[11] Comentário enviado por lcavalheiro em 31/12/2011 - 11:32h
Ariel, no exemplo 1 em questão o lestatwa está falando de proposições contingentes. A contradição total, se for o caso, pode ser obtida mais facilmente com (p ^ ~p). Duas variáveis com um único operador binário formam, necessariamente, uma expressão contingente, sendo necessário recorrer a um segundo operador binário (aumentando a profundidade da árvore dedutiva da proposição e, em TI, a complexidade computacional do processo) como o amigo Ariel sugeriu. Note que semanticamente falando essa proposição da correção do amigo pode ser escrita como (p ^ q) ^ ~q, ainda que indutivamente você possa dizer que a implicação dessas duas proposições seja o p, mas isso é assunto pra outro lugar...
[12] Comentário enviado por arieldll em 31/12/2011 - 12:03h
lcalheiro, a ideia é deixar a tabela como contraválida, para, um simples exemplo.
Aproveitando o post, a ideia era ter um exemplo de cada situação com uma proposição composta de mais de uma proposição simples apenas(p), como pode-se observar os outros exemplos, que também são desta forma. A forma mais fácil realmente seria ~p^p.