A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

SAT e Custo Computacional

Apresentações semelhantes


Apresentação em tema: "SAT e Custo Computacional"— Transcrição da apresentação:

1 SAT e Custo Computacional
Lógica Proposicional SAT e Custo Computacional

2 Conjuntos FOR: conjunto das fórmulas
SAT: conjunto das fórmulas satisfazíveis INSAT: conjunto das fórmulas insatisfazíveis TAUT: conjunto das tautologias REFUT: conjunto das fórmulas refutáveis(Falsificável) Refutável é toda fórmula H tal que exista pelo menos uma interpretação I[H]=F

3 Lema de pertinência Para H € FOR: H € SAT D H € INSAT
H € INSAT D (H) € TAUT H € SAT D (H) € TAUT H € REFUT D H € TAUT H € REFUT D (H) € INSAT

4 Lema entre os conjuntos
SAT, INSAT, TAUT, REFUT  FOR TAUT  SAT INSAT  REFUT TAUT I REFUT = {} INSAT I SAT = {} SAT U REFUT = FOR TAUT U INSAT  FOR SAT I REFUT = {}

5 O problema SAT Dada uma fórmula proposicional
 = (a  b) ( a b  c) Determinar se  é satisfazível Problema de decisão Para n símbolos proposicionais, são necessárias 2n linhas numa tabela verdade e 2m+1 colunas a b c 1

6 Aplicações Um “resolvedor de SAT” é a principal ferramenta computacional para: Em Inteligência Artificial: Programação em lógica Provadores de teoremas Em Projeto Automático de Componentes Eletrônicos: Teste e Verificação Síntese Escalonamento Planejamento

7 Custo Computacional O custo (determinístico) de SAT é dito exponencial
Não-determinísticamente, o custo de SAT cai para cerca de 2m+1 Custo não-deterministicamente polinomial (NP) Testam-se apenas algumas linhas da tabela O no. de sub-fórmulas é sempre até 2 vezes o número de conectivos mais 1

8 Complexidade Computacional (cont.)
Algoritmos deterministicamente polinomiais: logarítmico, linear quadrático, cúbico (log n, n, n**2, n**3, …, n**500,…) Algoritmos exponenciais (ou não-deterministicamente polinomiais): 2**n,n**n,n**log n Algoritmos exponenciais são mais lentos que os polinomiais para valores altos de n Polinomiais são preferíveis!

9 Complexidade e SAT 1-SAT:linear (um literal por subfórmula)
2-SAT: linear (com fases) (x11 OR x12) AND (x21 OR x22) AND (x31 OR x32) AND… 3-SAT: NP-completo (x11 OR x12 OR x13) AND (x21 OR x22 OR x23) AND (x31 OR x32 OR x33) AND ... O problema são os conflitos, que diminuem a satisfabilidade! Não existe um algoritmo polinomial para todas as instâncias do problema SAT, a não ser que P = NP Vira deterministicamente polinomial quando as sentenças viram 2-SAT (no máximo 2 símbolos proposicionais por fórmula) Cláusula de Horn – 1-SAT (No máximo 1 símbolo proposicional positivo em todas as sub-fórmulas)

10 Complexidade Computacional
Criação da classe de problemas NP-Completo S. A. Cook, The complexity of theorem proving procedures, Proceedings, Third Annual ACM Symp. on the Theory of Computing,1971, Abordagem mais simples: B. Hayes, Can’t get no satisfaction, American Scientist, Vol. 85, nr. 2, Mar-Apr 1997,

11 Vocabulário Sistemas de Dedução, Decidibilidade, Corretude,
Completude, Consistência, Monotonicidade

12 Cálculo Proposicional
Cálculo = Lógica + Sistema de Prova (ou dedução) Um sistema de prova serve para analisar e raciocinar sobre argumentos de uma lógica, de maneira a prová-los válidos ou inválidos.

13 Sistema de dedução Alfabeto de uma Lógica
Conjunto de fórmulas desta Lógica Conjunto de regras de dedução (ou regras de inferência)

14 Como avaliar sistemas de dedução??
Avaliação do problema de dedução Finitude da solução algorítmica (decidibilidade) Avaliação do algoritmo de dedução Complexidade Avaliação da capacidade de inferência Qualidade: Consistência Eficiência: Completude

15 Avaliação de lógicas e seus algoritmos de dedução
Análise de lógicas Expressividade Finitude = Decidibilidade Tem a ver com teoria da computação Computabilidade, Máquinas de Turing, funções recursivas, ... Análise para métodos de dedução Correção Completude Consistência Monotonicidade

16 Computabilidade Intuitivamente uma função é dita computável se é possível calcular seu valor, dado qualquer elemento do seu domínio Será toda função, bem definida, computável? NEM SEMPRE!!!

17 Decidibilidade Caso particular de computabilidade quando a função só admite dois valores É possível resolver um problema algoritmicamente (insolubilidade)? Quando se fala se um problema é solúvel tem-se um problema de decidibilidade Trata-se de saber se um algoritmo acaba Devolvendo uma resposta, no nosso caso, T ou F Há lógicas que são assim!

18 Complexidade Computabilidade diz respeito a se um problema pode ou não ser resolvido Complexidade diz respeito à quantidade de recursos necessários para resolver um problema Os recursos (normalmente) são: Memória Tempo Porém... Complexidade não será analisada nesse curso 

19 E para sistemas de dedução?
Desejamos que nossos sistemas de dedução tenham certas propriedades... Quais?? Relembrando conceitos Conseqüência lógica Contradição Lógicas precisam ter sintaxe e semântica bem definidas!

20 Avaliando sistemas de dedução
Queremos que o nosso sistema de dedução hipotético SD para ela (a lógica proposicional) seja correto, completo e consistente Verificar também monotonicidade Que danado é isso???

21 Correto Correto: Toda sentença deduzida por SD a partir de um dado conjunto de sentenças S inclusive o conjunto vazio de sentenças! Seja realmente dedutível a partir de S! Se as premissas são válidas, a conclusão também é válida!

22 Completo e Consistente
Toda sentença realmente dedutível a partir de S, seja também dedutível através de SD Consistente: Não seja possível gerar contradições usando SD

23 Teorema da correção Se b├SD H, então b⊨ H
Um sistema de dedução SD é correto se satisfaz à condição abaixo Todas as condições são a mesma no fundo  Se H é conseqüência lógica de um conjunto de hipóteses b a partir de SD, H é realmente conseqüência lógica de b Se b├SD H, então b⊨ H SD só deduz fórmulas corretas!!

24 Teorema da completude Se b⊨ H, então b├SD H
Um sistema de dedução SD é completo se satisfaz às condições abaixo Todas as condições são a mesma no fundo  Se H é conseqüência lógica de um conjunto de hipóteses b, H também é conseqüência lógica de b a partir de SD Se b⊨ H, então b├SD H Toda fórmula dedutível também é dedutível por SD!!

25 Teorema da Consistência
Um sistema de dedução SD é consistente sse não é possível deduzir usando SD duas fórmulas que se contradizem Não é possível ├SD H e ├SD H Teorema: Um sistema correto é também consistente

26 Prova do Teorema da Consistência
Se ├SD H, pelo teorema da correção: H é tautologia D H é contraditória Não é possível ├SD H, pois H seria uma tautologia Não é possível que H e H sejam tautologias

27 Monotonicidade Definição fraca: Se KBi├ H, então KBj├ H
Não perder o que é dedutível Definição forte: Se KBi├ H e j>i, então KBj├ H e KBj  KBi KB só aumenta


Carregar ppt "SAT e Custo Computacional"

Apresentações semelhantes


Anúncios Google