LOGICA MATEMATICA SI COMPUTATIONALA Sem. I,

Documente similare
Logică și structuri discrete Logică propozițională Marius Minea marius/curs/lsd/ 3 noiembrie 2014

ExamView Pro - Untitled.tst

Prelegerea 4 În această prelegere vom învăţa despre: Algebre booleene; Funcţii booleene; Mintermi şi cuburi n - dimensionale. 4.1 Definirea algebrelor

Probleme date la examenul de logică matematică şi computaţională. Partea a II-a Claudia MUREŞAN Universitatea din Bucureşti Facultatea de Matematică ş

Limbaje de ordinul I LOGICA DE ORDINUL I Un limbaj L de ordinul I este format din: o mulţime numărabilă V = {v n n N} de variabile; conectorii şi ; pa

Paradigme de programare

Microsoft Word - cap1p4.doc

Logică și structuri discrete Logică propozițională Marius Minea marius/curs/lsd/ 27 octombrie 2014

Notiuni de algebra booleana

D.Rusu, Teoria măsurii şi integrala Lebesgue 6 MĂSURA LEBESGUE Cursul 5 Teorema 6.26 Există submulţimi ale lui R care nu sunt măsurabile Lebesgue. Dem

Prelegerea 3 În această prelegere vom învăţa despre: Clase speciale de latici: complementate. modulare, metrice, distributive şi 3.1 Semi-distributivi

Facultatea de Matematică Anul II Master, Geometrie Algebrică Mulţimi algebrice ireductibile. Dimensiune 1 Mulţimi ireductibile Propoziţia 1.1. Fie X u

Retele Petri si Aplicatii

Microsoft Word - Draghici_Logica_predicatelor.docx

Logică și structuri discrete Limbaje regulate și automate Marius Minea marius/curs/lsd/ 24 noiembrie 2014

ALGORITMII ŞI REPREZENTAREA LOR Noţiunea de algoritm Noţiunea de algoritm este foarte veche. Ea a fost introdusă în secolele VIII-IX de către Abu Ja f

TEORIA MĂSURII Liviu C. Florescu Universitatea Al.I.Cuza, Facultatea de Matematică, Bd. Carol I, 11, R Iaşi, ROMANIA, e mail:

Logică și structuri discrete Mulțimi Casandra Holotescu

15. Logică matematică cu aplicații în informatică - MI 3

Cursul 6 Cadru topologic pentru R n În continuarea precedentei părţi, din cursul 5, dedicată, în întregime, unor aspecte de ordin algebric (relative l

Logică și structuri discrete Relații. Funcții parțiale Marius Minea marius/curs/lsd/ 20 octombrie 2014

Cursul 12 (plan de curs) Integrale prime 1 Sisteme diferenţiale autonome. Spaţiul fazelor. Fie Ω R n o mulţime deschisă şi f : Ω R n R n o funcţie de

Analiză de flux de date 29 octombrie 2012

Cursul 8 Funcţii analitice Vom studia acum comportarea şirurilor şi seriilor de funcţii olomorfe, cu scopul de a dezvălui o proprietate esenţială a ac

Retele Petri si Aplicatii

Şiruri de numere reale Facultatea de Hidrotehnică Universitatea Tehnică Gheorghe Asachi Iaşi, 2015 Analiză Matematică Lucian Maticiuc 1 / 29

FIŞA DISCIPLINEI

Limbaje Formale, Automate si Compilatoare

Logică și structuri discrete Logica predicatelor Casandra Holotescu

Calcul Numeric

Analiză statică Analiza fluxului de date 23 octombrie 2014

Microsoft Word - Mapa 0.doc

Distanţa euclidiană (indusă de norma euclidiană) (în R k ). Introducem în continuare o altă aplicaţie, de această dată pe produsul cartezian R k XR k,

L4. TEOREMELE ALGEBREI BINARE. FUNCȚII LOGICE ELEMENTARE. OPERAȚII LOGICE PE BIT. SINTEZA FUNCȚIILOR LOGICE DIN TABELE DE ADEVĂR 1. Obiective Prin par

Curs 3 Permutari cu repetitie. Combinari. Algoritmi de ordonare si generare

Tiberiu Trif Analiză matematică 2 Calcul diferențial și integral în R n

Microsoft Word - Planuri_Mate_

REVISTA DE FILOSOFIE

Paradigme de Programare

Microsoft PowerPoint - Curs_SDA_9_RO_2019_v2.pptx

Capitole Speciale de Informatică Curs 1: Extragerea informaţiilor. Modelul boolean şi modelul boolean extins 27 septembrie 2018 Extragerea informaţiil

O teoremă de reprezentare (II) Marian TETIVA 1 Abstract. In this paper some (in general well-known) results on complete sequences are exposed, with ap

Elemente de aritmetica

L4. TEOREMELE ALGEBREI BINARE. FUNCȚII LOGICE ELEMENTARE. OPERAȚII LOGICE PE BIT. SINTEZA FUNCȚIILOR LOGICE DIN TABELE DE ADEVĂR 1. Obiective Prin par

Curs 8: Tehnica divizării (I) Algoritmi si structuri de date - Curs 8 1

PowerPoint Presentation

Cursul 7 Formula integrală a lui Cauchy Am demonstrat în cursul precedent că, dacă D C un domeniu simplu conex şi f : D C o funcţie olomorfă cu f cont

ALGORITMICĂ. Seminar 3: Analiza eficienţei algoritmilor - estimarea timpului de execuţie şi notaţii asimptotice. Problema 1 (L) Să se determine număru

ALGORITHMICS

Logică computațională O introducere practică pentru studenți la informatică Note de curs Adrian Crăciun 24 ianuarie

Microsoft PowerPoint - Curs_SDA_10_RO_2019_v1.pptx

I. INTRODUCERE 1. Necesitatea studiului logicii Teodor DIMA În activitatea noastră zilnică, atunci când învăţăm, când încercăm să fundamentăm o părere

Curs 6: Clasificarea surselor de informatii - Clasificarea Bayes Naiva. Modelul Bernoulli

LUCRAREA 8 PROGRAMAREA NELINIARĂ ÎN REZOLVAREA PROBLEMELOR DIN ENERGETICĂ. METODE DE ORDINUL Aspecte generale Programarea neliniară are o foart

Spatii vectoriale

Teoreme cu nume 1. Problema (Năstăsescu IX, p 147, propoziţia 5) Formula lui Chasles Pentru orice puncte M, N şi P avem MN + NP = MP.

Microsoft Word - _arbori.docx

PowerPoint Presentation

Analiz¼a Matematic¼a - Curs 6 M¼ad¼alina Roxana Buneci

Gheorghe IUREA Adrian ZANOSCHI algebră geometrie clasa a VII-a ediţia a V-a, revizuită mate 2000 standard EDITURA PARALELA 45 Matematică. Clasa a VII-

ALGEBRA PENTRU INFORMATICĂ GEORGE CIPRIAN MODOI Cuprins Bibliografie 2 1. Mulţimi, Funcţii, Relaţii Preliminarii logice 3 Exerciţii la Prelimin

PowerPoint-Präsentation

DOMENIUL: Matematica

Slide 1

Microsoft Word - Curs_08.doc

Cursul 1 1. Introducere Corpul numerelor complexe Dezvoltarea istorică a gândirii matematice a urmărit îndeaproape evoluţia ideii de număr. Această ev

COMENTARII FAZA JUDEŢEANĂ, 9 MARTIE 2013 Abstract. Personal comments on some of the problems presented at the District Round of the National Mathemati

8.1. Elemente de Aritmetică. 8. Aplicatii (15 aprilie 2019) Lema 8.1. Fie (A, +) un grup abelian şi H, K A. Atunci H K şi H + K = {h + k h H şi k K} s

Aero-BCD, , Prof. L. Costache & M. Olteanu Notițe de Adrian Manea Seminar 5 Șiruri și serii de funcții. Serii de puteri 1 Șiruri de funcții D

CAPITOLUL I

I

Algebra si Geometri pentru Computer Science

FIŞA DISCIPLINEI 1. Date despre program 1.1 Instituţia de învăţământ superior Universitatea Alexandru Ioan Cuza din Iaşi 1.2 Facultatea Facultatea de

1

ROMÂNIA MINISTERUL EDUCAŢIEI NAŢIONALE UNIVERSITATEA OVIDIUS DIN CONSTANŢA FACULTATEA DE MATEMATICĂ ŞI INFORMATICĂ PLAN DE ÎNVĂŢĂMÂNT (conţine 11 pagi

Curs7

OLM_2009_barem.pdf

MD.09. Teoria stabilităţii 1

SECURITATE ȘI CRIPTOGRAFIE

Microsoft Word - TIC5

2

{ 3x + 3, x < 1 Exemple. 1) Fie f : R R, f(x) = 2x + 4, x 1. Funcţia f este derivabilă pe R\{1} (compunere de funcţii elementare), deci rămâne să stud

proiectarea bazelor de date

Microsoft Word - Mihailesc Dan_Test logica (1).doc

Şcoala ………

2

tehnologii web

Examenul de bacalaureat 2012

MINISTERUL EDUCAŢIEI AL REPUBLICII MOLDOVA COORDONAT: " " 2017 Nr. de înregistrare a planului de învăţământ UNIVERSITATEA DE STAT DIN MOLDOVA Aprobat:

PROGRAMA CONCURSULUI NAŢIONAL

02. Analiza matematica 3 - MI 2

Microsoft Word - Curs1.docx

Microsoft Word - Curs_07.doc

Consultatii ELa123, 06 ianuarie 2014

Microsoft Word - Algoritmi genetici.docx

SUBPROGRAME

Universtitatea Babeş-Bolyai Cluj-Napoca Facultatea de Matematică şi Informatică Anca Grad (născută Dumitru) Condiţii de optim îmbunătăţite pentru prob

Microsoft Word - CarteC.doc

Transcriere:

LOGICA MATEMATICĂ ŞI COMPUTAŢIONALĂ Sem. I, 2017-2018 Ioana Leustean FMI, UB

Partea III Calculul propoziţional clasic Consistenţă şi satisfiabilitate Teorema de completitudine Algebra Lindenbaum-Tarski Forma normală conjunctivă Clauze Rezoluţie Algoritmul Davis-Putnam Demonstraţii folosind rezoluţia

Consistenţă, satisfiabilitate, completitudine

Mulţimi consistente Definiţie O mulţime Γ de formule se numeşte consistentă dacă există o formulă ϕ astfel încât Γ ϕ. Propoziţie este consistentă. Dem. Aratăm ca (ϕ ϕ). Presupunem că (ϕ ϕ). Deoarece deducţia este corectă, obţinem f e ( (ϕ ϕ)) = 1 oricare ar fi e o evaluare. Dar f e ( (ϕ ϕ)) = (f e (ϕ) f e (ϕ)) = 0, deci obţinem o contradicţie. Exerciţiu. Teoreme := {ϕ Form ϕ} este consistentă. Exerciţiu. Orice mulţime satisfiabilă este consistentă.

Mulţimi inconsistente Definiţie O mulţime Γ de formule se numeste inconsistentă dacă nu este consistentă, i.e. Γ ϕ oricare ϕ Form. Propoziţie Pentru o mulţime Γ Form sunt echivalente: (1) Γ este inconsistentă, (2) există ψ Form, Γ ψ si Γ ψ. Dem. (1) (2) este evidentă. (2) (1) se demonstrează folosind teorema ψ ( ψ ϕ). Exerciţiu. Γ, Γ inconsistentă inconsistentă

Mulţimi inconsistente Propoziţie Pentru Γ Form si ϕ Form sunt echivalente: (1) Γ {ϕ} este inconsistentă, (2) Γ ϕ. Dem. (1) (2) Γ {ϕ} ϕ Γ ϕ ϕ TD Γ (ϕ ϕ) ϕ (teoremă) Γ ϕ (2) (1) rezultă folosind propoziţia anterioară, deoarece Γ {ϕ} ϕ si Γ {ϕ} ϕ.

Mulţimi maximal consistente Definiţie O mulţime Form se numeşte maximal consistentă dacă este consistentă şi or. Form ( inconsistentă). Propoziţie Dacă Form este maximal consistentă, atunci sunt adevărate următoarele proprietăţi: oricare ϕ Form, ϕ sau ϕ, oricare ϕ, ψ Form ϕ ψ ϕ sau ψ. Propoziţie Pentru orice mulţime consistentă Γ Form este inclusă într-o mulţime maximal consistentă.

Teorema de completitudine extinsă Orice mulţime consistentă este satisfiabilă. Completitudine Dem. Fie Γ Form o multime consistentă. Trebuie sa demonstrăm că Γ are un model. Fie o mulţimea maximal consistentă a.î. Γ. Definim e : Var {0, 1} prin e(v) = 1 dacă v, e(v) = 0 dacă v. Fie P(ϕ) = f e (ϕ) = 1 ϕ. Demonstrăm prin inducţie structurală că P(ϕ) este adevarată pentru orice ϕ Form. Din definiţia evaluării e, P(v) este adevărată oricare v Var. Presupunem că P(ϕ) si P(ψ) sunt adevărate. Ob tinem f e ( ϕ) = 1 f e (ϕ) = 0 ϕ ϕ, f e (ϕ ψ) = f e (ϕ) f e (ψ) = 1 f e (ϕ) = 0 sau f e (ψ) = 1 ϕ sau ψ ϕ ψ. Conform principiului inducţiei structurale, P(ϕ) este adevărată pentru orice ϕ Form, adică f e (ϕ) = 1 ϕ. Rezultă f e (Γ) = {1}, deci Γ admite un model.

Completitudine Teorema de completitudine Γ-teoremele şi Γ-tautologiile coincid, i.e. Γ ϕ Γ = ϕ oricare are fi ϕ Form si Γ Form. În particular, ϕ = ϕ. Dem. corectitudinea. Presupunem că Γ ϕ. Atunci Γ ϕ si Γ { ϕ} este consistentă. Fie e : Var {0, 1} un model pentru Γ { ϕ}. Obţinem f e (Γ) = {1} si f e ( ϕ) = 1, deci f e (ϕ) = 0. Din ipoteză, orice model al lui Γ este şi model al lui ϕ, deci f e (ϕ) = 1. Am ajuns la o contradicţie, deci presupunerea noastră a fost falsă. În consecinţă, Γ ϕ.

Conectorii derivaţi Conectori derivaţi Pentru ϕ si ψ formule oarecare, definim urmatoarele prescurtari: ϕ ψ := ϕ ψ ϕ ψ := (ϕ ψ) ϕ ψ := (ϕ ψ) (ψ ϕ) Exerciţiu. Dacă e : Var {0, 1} evaluare, atunci f e (ϕ ψ) = f e (ϕ) f e (ψ), f e (ϕ ψ) = f e (ϕ) f e (ψ), f e (ϕ ψ) = f e (ϕ) f e (ψ).

Conectori derivaţi Aratati ca v 1 (v 2 (v 1 v 2 )). Aplicând teorema de completitudine, aceasta revine la a demonstra = v 1 (v 2 (v 1 v 2 )) v 1 v 2 v 1 (v 2 (v 1 v 2 )) 0 0 1 0 1 1 1 0 1 1 1 1

Sintaxa şi Semantica Lemă Sunt echivalente: (1) ϕ ψ, (2) f e (ϕ) f e (ψ) oricare e : Var {0, 1} evaluare. Lemă Sunt echivalente: (1) ϕ ψ, (2) f e (ϕ) = f e (ψ) oricare e : Var {0, 1} evaluare. Dem. exerciţiu

Sintaxa şi Semantica (ϕ ψ) ((ϕ χ) (ψ χ)) Demonstraţia sintactică (1) {ϕ ψ, ϕ χ, ψ} (ϕ ψ) ( ψ ϕ) (teoremă) (2) {ϕ ψ, ϕ χ, ψ} ϕ ψ (ipoteză) (3) {ϕ ψ, ϕ χ, ψ} ψ ϕ (1), (2), MP (4) {ϕ ψ, ϕ χ, ψ} ψ (ipoteză) (5) {ϕ ψ, ϕ χ, ψ} ϕ (3), (4), MP (6) {ϕ ψ, ϕ χ, ψ} ϕ χ (ipoteză) (7) {ϕ ψ, ϕ χ, ψ} χ (5), (6), MP (8) {ϕ ψ, ϕ χ} ψ χ TD (9) {ϕ ψ} (ϕ χ) (ψ χ) TD (10) (ϕ ψ) ((ϕ χ) (ψ χ)) TD

Demonstraţia semantică = (v 1 v 2 ) ((v 1 v 3 ) (v 2 v 3 )) Metoda tabelului Sintaxa şi Semantica v 1 v 2 v 3 (v 1 v 2 ) ((v 1 v 3 ) (v 2 v 3 )) 0 0 0 1 0 0 1 1.... 1 1 1 1 Lema substituţiei. Fie γ o formula si v 1,..., v n variabilele care apar în γ. Fie γ(γ 1,..., γ n ) formula obţinută înlocuind v i cu γ i oricare i {1,..., n}. Dacă = γ atunci = γ(γ 1,..., γ n ). Dem. exerciţiu Rezultă = (ϕ ψ) ((ϕ χ) (ψ χ))

Algebra Lindenbaum-Tarski

Echivalenţa formulelor Form mulţimea formulelor calculului propoziţional clasic PC. Pe Form definim relaţia binară prin ϕ ψ ddacă ϕ ψ ddacă ϕ ψ si ψ ϕ, Teoremă Form Form este o relaţie de echivalenţă pe Form Dem. Relaţia este reflexivă, simetrică şi tranzitivă deoarece: ϕ ϕ ϕ ψ ψ ϕ ϕ ψ si ψ χ ϕ χ

LINDA Algebra Lindenbaum-Tarski Pe Form, mulţimea formulelor PC, definim relaţia binară prin ϕ ψ ϕ ψ. Pe mulţimea claselor de echivalenţă Form/ = { ϕ ϕ Form} definim operaţiile,,, 0, 1 prin ˆϕ ˆψ := ϕ ψ, ˆϕ ˆψ := ϕ ψ, ˆϕ := ϕ, 1 := θ, 0 := ( θ) (cu θ teoremă). În acest fel obţinem o structură algebrică LINDA= (Form/,,,, 0, 1) Algebra LINDA se numeşte algebra Lindenbaum-Tarski a PC. LINDA este o algebră Boole

Algebra Boole Definiţie O algebră Boole este o structură (A,,,, 0, 1) care satisface următoarele identităţi or. x, y, z A: (L1) (x y) z = x (y z), (x y) z = x (y z), (L2) x y = y x, x y = y x, (L3) x (x y) = x, x (x y) = x, (D) x (y z) = (x y) (x z), x (y z) = (x y) (x z), (P) x 0 = x, x 0 = 0, (U) x 1 = x, x 1 = 1, (C) x x = 1, x x = 0.

SAS Algebra Sintaxa Semantica Teoremă de completitudine Pentru ϕ Form, sunt echivalente: (1) ϕ, (2) = ϕ (f e (ϕ) = 1 pentru orice evaluare e : Var L 2 ), (3) ˆϕ = 1 în LINDA.

SAS (ϕ ψ) ((ϕ χ) (ψ χ)) Demonstraţia sintactică (1) {ϕ ψ, ϕ χ, ψ} (ϕ ψ) ( ψ ϕ) (teoremă) (2) {ϕ ψ, ϕ χ, ψ} ϕ ψ (ipoteză) (3) {ϕ ψ, ϕ χ, ψ} ψ ϕ (1), (2), MP (4) {ϕ ψ, ϕ χ, ψ} ψ (ipoteză) (5) {ϕ ψ, ϕ χ, ψ} ϕ (3), (4), MP (6) {ϕ ψ, ϕ χ, ψ} ϕ χ (ipoteză) (7) {ϕ ψ, ϕ χ, ψ} χ (5), (6), MP (8) {ϕ ψ, ϕ χ} ψ χ TD (9) {ϕ ψ} (ϕ χ) (ψ χ) TD (10) (ϕ ψ) ((ϕ χ) (ψ χ)) TD

Demonstraţia semantică = (v 1 v 2 ) ((v 1 v 3 ) (v 2 v 3 )) Metoda tabelului v 1 v 2 v 3 (v 1 v 2 ) ((v 1 v 3 ) (v 2 v 3 )) 0 0 0 1 0 0 1 1.... 1 1 1 1 SAS Lema substituţiei. Fie γ o formula si v 1,..., v n variabilele care apar în γ. Fie γ(γ 1,..., γ n ) formula obţinută înlocuind v i cu γ i oricare i {1,..., n}. Dacă = γ atunci = γ(γ 1,..., γ n ). Rezultă = (ϕ ψ) ((ϕ χ) (ψ χ))

SAS Demonstraţia algebrică (ϕ ψ) ((ϕ χ) (ψ χ)) Dacă θ := (ϕ ψ) ((ϕ χ) (ψ χ)), atunci ˆθ := ( ˆϕ ˆψ) (( ˆϕ ˆχ) ( ˆψ ˆχ)) in LINDA. Notăm a := ˆϕ, b := ˆψ, c := ˆχ si obţinem ˆθ = (a b) ((a c) (b c)) = (a b) ((a c) c b) = (a b) b (a c) c = (a b) (a c) = 1 Am arătat că ˆθ = 1 in LINDA, deci θ.

SAS Demonstraţia algebrică (ϕ ψ) ((ϕ χ) (ψ χ)) Notăm θ := (ϕ ψ) ((ϕ χ) (ψ χ)) Fie B o algebră Boole şi e : Var B o evaluare. Notăm a := f e (ϕ), b := f e (ψ), c := f e (χ) si obţinem f e (θ) = (a b) ((a c) (b c)) = (a b) ((a c) c b) = (a b) b (a c) c = (a b) (a c) = 1 B Am arătat că f e (θ) = 1 B pentru orice algebră Boole B şi orice evaluare e : Var B, deci θ.

Forma normală conjunctivă

Exemplu Arătaţi că = v 1 (v 2 (v 1 v 2 )). v 1 v 2 v 1 (v 2 (v 1 v 2 )) 0 0 1 0 1 1 1 0 1 1 1 1 Acest tabel defineşte o funcţie F : {0, 1} 2 {0, 1} x 1 x 2 F (x 1, x 2 ) 0 0 1 0 1 1 1 0 1 1 1 1

Funcţia asociată unei formule Fie ϕ o formulă v 1,..., v n variabilele care apar în ϕ, e 1,..., e 2 n evaluările posibile. Tabelul asociat v 1 v 2... v n ϕ..... e k (v 1 ) e k (v 2 )... e k (v n ) f ek (ϕ).. defineşte funcţia F ϕ : {0, 1} n {0, 1}. x 1 x 2... x n F ϕ (x 1,..., x n )..... e k (v 1 ) e k (v 2 )... e k (v n ) f ek (ϕ).......

Funcţia asociată unei formule Fie ϕ o formulă cu variabilele v 1,..., v n. Definiţie Funcţia asociată lui ϕ este F ϕ : {0, 1} n {0, 1} definită prin F ϕ (x 1,..., x n ) = f e (ϕ), unde e(v 1 ) = x 1, e(v 2 ) = x 2,..., e(v n ) = x n Definiţie O funcţie Booleană în n variabile este o funcţie F : {0, 1} n {0, 1}. F ϕ este o funcţie Booleană pentru orice ϕ.

Sintaxa şi Semantica Lemă Sunt echivalente: (1) ϕ ψ, (2) f e (ϕ) f e (ψ) oricare e : Var {0, 1} evaluare, (3) F ϕ F ψ. Lemă Sunt echivalente: (1) ϕ ψ, (2) f e (ϕ) = f e (ψ) oricare e : Var {0, 1} evaluare, (3) F ϕ = F ψ. Dem. exerciţiu

Caracterizarea funcţiilor Booleene Teorema FB Pentru orice funcţie Booleană H : {0, 1} n {0, 1} există o formulă ϕ cu n variabile astfel încât H = F ϕ. Exemplu: Fie H : {0, 1} 3 {0, 1} descrisă prin tabelul: x y z H(x, y, z) 0 0 0 0 M 1 = x y z 0 0 1 0 M 2 = x y z 0 1 0 1 m 1 = x y z 0 1 1 0 M 3 = x y z 1 0 0 1 m 2 = x y z 1 0 1 1 m 3 = x y z 1 1 0 1 m 4 = x y z 1 1 1 1 m 5 = x y z Fie ϕ = M 1 M 2 M 3 şi ψ = m 1 m 2 m 3 m 4 m 5 H(x, y, z) = F ϕ = F ψ

FND si FNC Definiţie Un literal este o variabilă sau negaţia unei variabile. O formă normală disjunctivă (FND) este o disjuncţie de conjuncţii de literali. O formă normală conjuctivă (FNC) este o conjuncţie de disjuncţii de literali. Teoremă Pentru orice formulă ϕ există o FND θ 1 si o FNC θ 2 astfel încât = ϕ θ 1 si = ϕ θ 2 Dem. Fie θ 1 si θ 2 formulele definite în demonstraţia teoremei anterioare pentru H = F ϕ. Atunci F ϕ = F θ1 = F θ2.

FNC Orice formulă poate fi adusa la FNC prin urmatoarele transformări: 1. înlocuirea implicaţiilor şi echivalenţelor 2. regulile De Morgan 3. principiului dublei negaţii 4. distributivitatea ϕ ψ ϕ ψ, ϕ ψ ( ϕ ψ) ( ψ ϕ) (ϕ ψ) ϕ ψ, (ϕ ψ) ϕ ψ, ψ ψ ϕ (ψ χ) (ϕ ψ) (ϕ χ), (ψ χ) ϕ (ψ ϕ) (χ ϕ)

Exemple 1. Determinaţi FNC pentru formula ( p q) (p q) ( p q) (p q) (p q) ( p q) ( p q) ( p q) ( p p q) (q p q) 2. Determinaţi FNC pentru formula ((p q) q) ( (p q) q) p q q

Rezoluţia în PC

Satisfiabilitate Definiţie Fie Γ o mulţime de formule. Un model al lui Γ este o evaluare e : Var {0, 1} cu f e (Γ) = {1}. Mulţimea Γ este satisfiabilă dacă are un model. O formulă ϕ este consecinţă (semantică) a lui Γ (Γ = ϕ) dacă orice model al lui Γ este şi model pentru ϕ. Teoremă. Sunt echivalente: {ϕ 1,..., ϕ n } = ψ, {ϕ 1,..., ϕ n, ψ} nu este satisfiabilă, ϕ 1... ϕ n ψ nu este satisfiabilă. Dem. exerciţiu

SAT Problema satisfiabilităţii: SAT Fiind dată o formulă ϕ (în forma normală conjunctivă) există o evaluare e : Var {0, 1} astfel încât f e (ϕ) = 1? Teorema Cook-Levin SAT este o problemă NP-completă. Stephen Cook 1971, Leonid Levin 1973 Cook, Stephen A. (1971). The Complexity of Theorem-Proving Procedures. Proceedings of the 3rd Annual ACM Symposium on Theory of Computing: 151-158.

Rezoluţia Rezoluţia propoziţională este o regula de deducţie pentru calculul propoziţional clasic. Multe demonstratoare automate şi SAT-solvere au la bază rezoluţia. Utilizând rezoluţia se poate construi un demonstrator automat corect şi complet pentru calculul propoziţional, fara alte teoreme şi reguli de deducţie. Limbajul PROLOG este fundamentat de rezoluţie. Rezoluţia este o metodă de verificare a satisfiabilităţii pentru formule în forma clauzală.

Clauze Definitii Un literal este o variabila sau negatia unei variabile. O clauza este o multime finita de literali: C = {L 1,..., L n }, unde L 1,..., L n sunt literali. Clauza C este triviala daca exista p Var astfel incat p, p C. O clauza C = {L 1,..., L n } este satisfabila daca formula L 1... L n este satisfiabila. Daca e : Var {0, 1} este o evaluare vom nota e(c) := f e (L 1... L n ). Clauza vida := {} nu este satisfiabila (disjunctie indexata de ). O multime de clauze S = {C 1,..., C m } este satisfiabila daca exista o evaluare e : Var {0, 1} astfel incat e(c i ) = 1 oricare i {1,..., m}.

Clauze Observatie Putem identifica clauza C = {L 1,..., L n } cu L 1... L n, multimea de clauze S = {C 1,..., C m } cu C 1... C m. clauza disjunctie de literali multime de clauze FNC Definitie C clauza, S multime de clauze Var(C) = {p Var p C sau p C}, Var(S) = {Var(C) C S}.

Exemple 1. p, r, q sunt literali. 2. {p, r}, { r, r}, {q, p}, {q, p, r} sunt clauze. 3. S = {{p, r}, { r, r}, {q, p}, {q, p, r}} este satisfiabila. Dem. Consideram e(p) = e(q) = 1. 4. S = {{ p, q}, { r, q}, {p}, {r}} nu este satisfiabila. Dem. Daca exista o evaluare e care satisface C, atunci e(p) = e(r) = 1. Rezulta e(q) = 0, deci f e ({ p, q}) = f e ( p q) = 0. In consecinta, { p, q} nu e satisfacuta de e. 5. O multime de clauze triviale este intotdeauna satisfiabila.

Proprietati Propozitie Fie C, D clauze si T, S, U multimi de clauze. Urmatoarele implicatii sunt adevarate. (p1) C D, C satisfiabila D satisfiabila (p2) C D satisfiabila C satisfiabila sau D satisfiabila (p3) p Var(C) C {p} şi C { p} sunt satisfiabile (p4) S T, T satisfiabila S satisfiabila (p5) Fie p Var si U, T, S multimi de clauze astfel incat p Var(U), or. T T (p T si p T ), or. S S (p S si p S). Atunci U satisfiabila U T, U S satisfiabile Dem. (p1)-(p4) exercitiu

Regula Rezolutiei Rez C 1 {p}, C 2 { p} C 1 C 2 unde {p, p} C 1 = si {p, p} C 2 =. Propozitie Regula Rezolutiei pastreaza satsifiabilitatea, i.e. {C 1 {p}, C 2 { p}} satisfiabila C 1 C 2 satisfiabila. Dem. Fie e : Var {0, 1} este o evaluare astfel incat e(c 1 {p}) = e(c 2 { p}) = 1.Daca e(p) = 1 atunci e(c 2 ) = 1, deci e(c 1 C 2 ) = 1. Similar pentru e(p) = 0. Invers, presupunem ca e(c 1 C 2 ) = 1, deci e(c 1 ) = 1 sau e(c 2 ) = 1. Daca e(c 1 ) = 1 consideram e : Var {0, 1} o evaluare cu e (v) = e(v) daca v Var(C 1 ) si e (p) = 0. Atunci e (C 1 ) = e(c 1 ) = 1, deci e (C 1 {p}) = 1.De asemenea e (C 2 { p}) = e (C 2 ) e ( p) = 1, deci e este model pentru multimea de clauze {C 1 {p}, C 2 { p}}.

Exemple {p}, { p} {p}, { p, q} {q} Atentie Aplicarea simultana a regulii pentru doua variabile diferit este gresita. De exemplu {p, q}, { p, q} contrazice rezultatul anterior, deoarece {{p, q}, { p, q}} este satisfiabila (e(p) = e(q) = 1). Aplicarea corectă a Regulii Rezolutiei este. {p, q}, { p, q} {q, q}

Derivare prin rezolutie Definitie Fie S o multime de clauze. O derivare prin rezolutie din S este o secventa finita de clauze astfel incat fiecare clauza este din S sau rezulta din clauze anterioare prin rezolutie. Exemplu S = {{ p, q}, { q, r, s}, {p}, {r}, { s}} O derivare prin rezolutie pentru din S este C 1 = { s} ( S) C 2 = { q, r, s} ( S) C 3 = { q, r} (C 1, C 2, Rez) C 4 = {r} ( S) C 5 = { q} (C 3, C 4, Rez) C 6 = { p, q} ( S) C 7 = { p} (C 5, C 6, Rez) C 8 = {p} ( S) C 9 = (C 7, C 8, Rez)

Algoritmul Davis-Putnam(DP) Verifică satisfiabilitatea unei mulţimi de clauze Intrare: S multime nevida de clauze netriviale. S 1 := S; i := 1; P1. v i Var(C i ); Ti 1 := {C S i v i C}; Ti 0 := {C S i v i C}; T i := Ti 0 Ti 1 ; U i := ; P2. if Ti 0 and Ti 1 then U i := {C 1 \ {v i } C 0 \ { v i } C 1 Ti 1, C 0 Ti 0 }; P3. S i+1 = (S i \ T i ) U i ; S i+1 = S i+1 \ {C S i+1 C triviala}; P4. if S i+1 = then SAT else if S i+1 then NESAT else {i := i + 1; go to P1}. Run DP

Exemplu S 1 := S = {{ p, q, s}, { r, q}, {p, r}, {p}, {r}, {s}} v 1 := p; T1 1 := {{p, r}, {p}}; T 1 0 := {{ p, q, s}}; U 1 := {{r, q, s}, {q, s}}; S 2 := {{ r, q}, {r}, {s}, {r, q, s}, {q, s}}; i := 2; v 2 := q; T2 1 := {{r, q, s}, {q, s}}; T 2 0 := {{ r, q}}; U 2 := {{r, q, r}, { s, r}}; S 3 := {{r}, {s}, { s, r}}; i := 3; v 3 := r; T 1 3 := {{r}}; T 0 3 := {{ s, r}}; U 3 := {{ s}}; S 4 := {{s}, { s}}; i := 4; v 4 := s; T 1 4 := {{s}}; T 0 4 := {{ s}}; U 4 := { }; S 5 := { } In consecinta, S nu este satisfiabila

Exemplu S 1 := S = {{p, r}, {q, p}, {q, p, r}} v 1 := r; T1 1 := {{q, p, r}}; T 1 0 := {{p, r}}; U 1 := {{q, p, p}}; S 2 := {{q, p}}; i := 2; v 2 := q; T2 1 := {{q, p}}; T 2 0 := ; U 2 := ; S 3 := In consecinta, S este satisfiabila

Algoritmul DP Fie S o multime finita de clauze si n este numarul de variabile care apar in S. Algoritmul DP se opreste deoarece Var(S i+1 ) Var(S i ). Daca n este numarul de variabile care apar in S, atunci exista un n 0 n astfel incat Var(S n0 +1) =, deci S n0 +1 = sau S n0 +1 = { }. Pentru simplitate, vom presupune in continuare ca n 0 = n. Propozitie S i satisfiabila S i+1 satisfiabila oricare i {1,..., n 1}. Dem. Fie i {1,..., n 1}. Stim ca S i+1 = (S i \ T i ) U i. Consideram cazurile U i = si U i. Daca U i =, atunci Ti 0 = sau Ti 1 = si S i = (S i+1 T i ). Ne aflam in ipotezele proprietatii (p5). Din (p4) si (p5) obtinem concluzia dorita.

Algoritmul DP Dem. continuare Daca U i, notam C i := S i \ T i. In consecinta S i = C i T i si S i+1 = C i U i.observam ca fiecare clauza din U i se obtine aplicand Regula Rezolutiei pentru doua clauze din T i. Am demonstrat ca Regula Rezolutiei pastreaza satisfiabilitatea: U i satisfiabila T i satisfiabila. Au loc urmatoarele echivalente: S i = C i T i satisfiabila C i, T i satisfiabile C i, U i satisfiabile U i T i = S i+1 satisfiabila.

Algoritmul DP Teorema DP Algoritmul DP este corect si complet, i.e. S nu este satisfiabila daca si numai daca iesirea algoritmului DP este { }. Dem. Din propozitia anterioara, S nu este satisfiabila daca si numai daca S n nu este satisfiabila. Fie p unica variabila propozitionala care apare in S n. Daca S n = {{p}} atunci S n este satisfiabila deoarece e(p) = 1 este un model. Daca S n = {{ p}} atunci S n este satisfiabila deoarece e(p) = 0 este un model. In ambele cazuri S n+1 = {}. Daca S n = {{p}, } sau S n = {{ p}, } atunci S n nu este satisfiabila si S n+1 = { }. Daca S n = {{p}, { p}} sau S n = {{p}, { p}, } atunci S n nu este satisfiabila, putem aplica Regula Rezolutiei si obtinem S n+1 = { }. Se observa ca S n nu este satisfiabila daca si numai daca S n+1 = { }.

Rezolutia Observatie Algoritmul DP cu intrarea S se termina cu { } daca si numai daca exista o derivare prin rezolutie a clauzei vide din S. Teorema Daca S este o multime finita nevida de clauze, sunt echivalente: S nu este satisfiabila, exista o derivare prin rezolutie a clauzei vide din S. Regula Rezolutiei este corecta si completa pentru PC.

Exemplu Cercetăm satisfiabilitatea mulţimii S = {{ p, q, s}, { r, q}, {p, r}, {p}, {r}, {s}} S 1 := S v 1 := p; T1 1 := {{p, r}, {p}}; T 1 0 U 1 := {{r, q, s}, {q, s}}; := {{ p, q, s}}; C 1 = {p, r} ( S) C 2 = { p, q, s} ( S) C 3 = {r, q, s} (C 1, C 2, Rez) C 4 = {p} ( S) C 5 = {q, s} (C 4, C 2, Rez)

Exemplu S 2 := {{ r, q}, {r}, {s}, {r, q, s}, {q, s}}; i := 2; v 2 := q; T2 1 := {{r, q, s}, {q, s}}; T 2 0 := {{ r, q}}; U 2 := {{ s, r}}; S 3 := {{r}, {s}, { s, r}}; i := 3; C 6 = { r, q} ( S) C 7 = { r, r, s} (C 3, C 6, Rez) C 8 = { r, s} (C 5, C 6, Rez)

Exemplu S 3 := {{r}, {s}, { s, r}}; i := 3; v 3 := r; T 1 3 := {{r}}; T 0 3 := {{ s, r}}; U 3 := {{ s}}; C 9 = {r} ( S) C 10 = { s} (C 9, C 8, Rez)

Exemplu S 4 := {{s}, { s}}; i := 4; v 4 := s; T 1 4 := {{s}}; T 0 4 := {{ s}}; U 4 := { }; C 11 = {s} ( S) C 12 = { s} (C 10, C 11, Rez) C 13 = (C 11, C 12, Rez) S 5 := { } In consecinta, S nu este satisfiabila

Forma clauzala Definitie Fie ϕ o formula si C 1 C n o FNC astfel incat = ϕ C 1 C n. Spunem ca multimea de clauze {C 1,, C n } este forma clauzala a lui ϕ. Lema ϕ satisfiabila C 1 C n satisfiabila {C 1,, C n } satisfiabila Dem. exercitiu Definitie Daca Γ = {γ 1,..., γ n } este o multime de formule atunci o forma clauzala pentru Γ este S := S 1 S n unde S i este forma clauzala pentru γ i oricare i. Lema Γ satisfiabila S satisfiabila Dem. exercitiu

Demonstratii prin rezolutie Teorema Fie Γ o multime finita de formule, ϕ o formula si S o forma clauzala pentru Γ { ϕ}. Sunt echivalente: (1) Γ = ϕ, (2) Γ { ϕ} nu e satisfiabila, (3) S nu este satisfiabila, (4) exista o derivare prin rezolutie a clauzei vide din S. Observatie Teorema este adevarata si pentru Γ multime oarecare. Demonstratia foloseste compacitatea calculului propozitional: o multime de formule este satisfiabila daca si numai daca orice submultime finita a sa este satisfiabila.

Exemplu A demonstra ca = p (q p) revine la a demonstra ca { (p (q p))} nu e satisfiabila.pentru aceasta determinam o forma clauzala pentru (p (q p)) si aplicam DP. Determinam FNC pentru (p (q p)): (p (q p)) ( p q p) p q p Forma clauzala este S = {{p}, {q}, { p}}. Aplicam DP: {{p}, {q}, { p}} {{p}, { p}} { } S nu este satisfiabila deoarece exista o derivare prin rezolutie a clauzei vide din S. In consecinta, = p (q p).

Exemplu Cercetati daca {p q} = p q. Aceasta revine cerceta satisfiabilitatea multimii = {p q, (p q)}. O forma clauzala pentru p q este {{p, q}}. O forma clauzala pentru (p q) este {{ p, q}}. Forma clauzala pentru este S = {{p, q}, { p, q}}. Aplicam DP: {{p, q}, { p, q}} {{q, q}} {} (multimea vida) In acest caz S este satisfiabila, deci {p q} =p q.

Exemplu Cercetati daca {p, p (q r)} = p ( p q r). Determinam forma clauzala pentru {p, p (q r), ( p ( p q r))}. Forma clauzala a lui p este {{p}}. p (q r) p q r (FNC) Forma clauzala a lui p (q r) este {{ p, q, r}}. ( p ( p q r)) (p ( p q r)) p (p q r)) Forma clauzala a lui ( p ( p q r)) este {{ p}, {p, q, r}}. Aplicam DP: {{p}, { p, q, r}, { p}, {p, q, r}} {{q, r},, { q, r}} {{r}, } { } Este adevarat ca {p, p (q r)} = p ( p q r)

Concluzie Fie Γ o multime de formule si ϕ o formula. Notam prin Γ Rez ϕ faptul ca exista o derivare prin rezolutie a clauzei vide dintr-o forma clauzala a lui Γ { ϕ}. In acest caz spunem ca ϕ se demostreaza prin rezolutie din Γ. Teorema Sunt echivalente: Γ = ϕ, Γ Rez ϕ. Folosind rezolutia (fara alte axiome si reguli de deductie) se poate construi un demonstrator automat pentru PC.