Lógica para computação - parte II

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.

[ Hits: 21.025 ]

Por: Ariel Galante Dalla Costa em 27/12/2011 | Blog: http://arielgdc.wordpress.com


Á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.

Sejam as proposições p, q, então, defini-se:

      p^(qvr) <=> (p^q) v (p^r)
      pv(q^r) <=> (pvq) ^ (pvr)
      ~(p^q) <=> ~p v ~q
      ~(pvq) <=> ~p ^ ~q
      p->q <=> ~pvq
      ~(p->q) <=> ~(~pvq) <=> p^~q
      p^(q^r) <=> (p^q)^r
      pv(qvr) <=> (pvq)vr
      p<->q <=> (p<->q)^(q->p)
      ~(p<->q) <=> (p^~q) v (~p^q)
      p<->q <=> (~pvq)^(~qvp)

Exemplo:

   (p->q)^p <=> (~pvq)^p <=> (~p^p) v (q^p)

Outro exemplo:

   (p->(~p->q)<=>p->(~~pvq) <=> ~pv(pvq) <=> (~pvp) v (~pvq)

Mais um exemplo:

   (pvq)->q <=> ~(pvq)vq <=> (~p^~q)vq <=> (qv~q) ^ (qv~p)

Regra de Morgam



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).

Exemplo:

      Mostrar equivalências: (p->q) ^ (p->~q)

      Resolução:

      (p->q) ^ (p->~q) <=> (~pvq)^(~pv~q) <=> (~p^~p)v(qv~q) <=> ~pvC <=> ~p
Página anterior    

Páginas do artigo
   1. Definições base
   2. Equivalência lógica e Negações Lógicas
   3. Álgebra das proposições, regra de Morgam e método dedutivo
Outros artigos deste autor

Ética na Programação

Lógica para computação - parte IV

Lógica para Computação - Parte V

Introdução a Lógica para computação

Lógica para computação - parte III

Leitura recomendada

AlmaLinux - Sua Alternativa ao CentOS

Lidando com compactação de arquivos no Linux

Mamãe, quero Arch! (parte 1)

Onde os iniciantes devem buscar soluções para os seus problemas

Um pouco sobre transição Windows/Linux

  
Comentários
[1] Comentário enviado por arieldll em 27/12/2011 - 22:14h

Quem possuir sugestoes ou encontrar algo de errado, fico feliz em compartilhar conosco.
[]'s Ariel

[2] Comentário enviado por marquinhos1875 em 27/12/2011 - 23:29h

PQP, meu carma no semestre, abre o VOL e mais carma...... (rs)
Mais ta muito bom, parabéns.

[3] Comentário enviado por arieldll em 28/12/2011 - 07:43h

Obrigado

[4] Comentário enviado por nicolo em 28/12/2011 - 12:16h

Cruzes, que horror !
Ainda bem que eu já passei desta fase macabra.

Se eu precisasse aprender isso para comer, já teria morrido de fome.


[5] Comentário enviado por neonx em 28/12/2011 - 17:08h

Olha só... é sempre bom ver alunos com grandes potenciais... Ariel está de parabéns... muito bem escrito e desenvolvido este seu artigo...

abraço...

Ânderson

[6] Comentário enviado por arieldll em 28/12/2011 - 18:00h

Obrigado e fico feliz por ter gostado.
Abraço
Ariel

[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?

[8] Comentário enviado por arieldll em 29/12/2011 - 14:28h

lcavalheiro, eu agradeço e fico feliz por compartilhar. O conhecimento é o nosso objetivo.
Fico grato desde já.

[]'s Ariel

[9] Comentário enviado por lestatwa em 30/12/2011 - 19:44h

no seu exemplo 1:
p, q (p^~q)
V V F
V F F
F V F
F F F

temos um erro
o correto seria
p , q, ~q, (p^~q)
V V F F
V F V V
F V F F
F F V F

Lógica Matemática apesar de simples, exige atenção!
Abraço!

[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.

[]'s Ariel.

[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.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts