Sunteți pe pagina 1din 39

Sisteme bazate pe cunoatere

Cap. III. Bazele logice ale


inteligenei artificiale
1) Terminologia logicii matematice
2) Calculul propoziional
3) Calculul cu predicate
4) Elemente de teoria deduciei
1

Bazele logice ale IA


Scopuri urmrite:
nelegerea aspectelor de logic folosite n
efectuarea raionamentelor n sistemele de IA, n
special n demonstrarea automat a teoremelor
Competene dobndite:
nelegerea modului n care sistemele de IA pot fi
analizate i validate prin mecanismele formale din
logic
2

III. Bazele logice ale IA

1. Terminologia logicii matematice


Limbajul obinuit este ambiguu i imprecis. n gndire apar
afirmaii, judeci, care se exprim sub form de enunuri.
Corespondentul acestora n SBC vor fi faptele i regulile din
baza de cunotine.
Definiia 1. Enunul este o formaiune lingvistic elementar,
cu sens (de tip) narativ, declarativ i cu neles de sine
stttor - se afirm ceva despre ceva.
Enunul poate fi scris sau vorbit i este o formaiune capabil
s poarte informaie. Din punct de vedere logic enunul se
compune din dou pri: subiectul (sau subiectele) i partea
predicativ.
Definiia 2. Subiectul este acel ceva despre care se afirm
ceva ntr-un enun. Restul, ceea ce rmne dup
ndeprtarea subiectului sau a subiectelor, este partea
predicativ.

III. Bazele logice ale IA

Exemple
Microprocesorul 8080 este depit.
Microprocesorul 80686 este mai performant dect
microprocesorul 8086.
Ce nseamn SBC ?
Deschide geamul !
Un enun are unul sau mai multe subiecte i o singur
parte predicativ.
Subiectul poate s fie precizat (n IA se folosete
termenul instaniat) sau nu.
4

III. Bazele logice ale IA

Exemplu
Numrul x se divide cu 2.
Definiia 3. Un enun cu toate subiecte instaniate se
numete propoziie. Enunul care conine unul sau
mai multe subiecte neinstaniate se numete
predicat. Subiectele neinstaniate dintr-un predicat se
numesc variabile. Numrul subiectelor neprecizate
dintr-un predicat se numete aritatea predicatului.
Exemple
Oraul x i oraul y sunt conectate prin n drumuri.
Numrul x este mai mare dect 3.
5

III. Bazele logice ale IA

O propoziie poate fi considerat ca un predicat de aritate


0. Dac ntr-un predicat de aritate n, ntr-un mod
oarecare, se instaniaz o variabil a sa, se obine un
predicat de aritate n-1.
n limbajul natural putem exprima oricte nelesuri dorim
prin compunerea enunurilor. Enunurile compuse au
fost formalizate n logic folosind operatorii logici:
Operaiile logice (negaia, conjuncia, disjuncia,
implicaia i echivalena)
Cuantificatorii (, ).

III. Bazele logice ale IA

Definiia 4. Fie P, Q dou enunuri.


Negaia lui P, pe care o notm cu (7P), este enunul care
afirm c P nu are loc.
Conjuncia lui P i Q este enunul notat (P Q) care afirm
c fiecare din cele dou enunuri are loc.
Disjuncia lui P i Q, notat cu (P Q), este enunul care
afirm c mcar unul din cele dou enunuri are loc.
Implicaia P implic Q se noteaz prin (P Q) i este
enunul care afirm c dac P are loc, atunci are loc i Q.
Echivalena lui P i Q afirm c P i Q au loc n acelai timp
i se noteaz cu (P Q).

III. Bazele logice ale IA

Cuantificatorii genereaz noi enunuri numai dac sunt


ataai variabilelor predicatelor. Dac P este un predicat n
care apar variabilele x, y, z, atunci l vom nota P(x, y, z).
Cuantificatorii permit formarea de enunuri compuse n
modul urmtor.
Definiia 5. Fie P un predicat ce conine variabila x i care
afirm c obiectul desemnat de variabila x are proprietatea
.
Enunul construit din P cu cuantificatorul , relativ la variabila
x, este enunul notat (x) P(x), care se citete exist x astfel
nct P(x) i care afirm c n clasa de obiecte din care face
parte x, exist mcar unul cu proprietatea .
8

III. Bazele logice ale IA

Enunul construit din P cu cuantificatorul relativ


la variabila x, se noteaz (x) P(x), se citete
oricare ar fi x, P(x) i afirm c orice obiect al
clasei din care face parte x are proprietatea .
Atunci cnd ntr-un predicat apare variabila x,
nelesul este precizat dac tim domeniul
(mulimea, iar n IA termenul folosit este univers
de discurs) n care variabila x poate lua valori,
adic n IA vom spune c se instaniaz.
9

III. Bazele logice ale IA

n acest fel i definiiile enunurilor n care apar


cuantificatorii, date mai sus, au suport:
cuantificatorul ne permite s precizm
informaii despre toate elementele universului de
discurs fr a fi necesar s le enumerm, iar
ne permite s precizm existena unui element
din universul de discurs, element avnd anumite
proprieti, fr a fi necesar s-l identificm n
mod direct.
10

III. Bazele logice ale IA

Informaia circul, este prelucrat i stocat n


msura n care ea prezint interes pentru
receptor, adic n msura n care are valoare.
Cea mai simpl valoare informaional este
valoarea de adevr a informaiei.
Att n domeniul SBC ct i n logic ne
intereseaz determinarea valorii de adevr a
enunurilor.
Valoarea de adevr reprezint gradul de
concordan dintre informaia respectiv i
situaia de fapt la care aceasta se refer.
Valoarea de adevr a unui enun poate avea o
ntreag scar de gradaii.

11

III. Bazele logice ale IA

2. Calculul propoziional
Calculul propoziional este acea parte a logicii care se ocup
cu analiza propoziiilor din punct de vedere al compunerii lor
corecte cu ajutorul operaiilor logice i al studiului valorilor de
adevr pentru enunurile compuse n acest fel.
Se poate vorbi despre un limbaj al calculului propoziional,
care este un limbaj formal, oferind o prim posibilitate de a
formaliza limbajul natural (completarea fcndu-se prin
limbajul calculului cu predicate).
Orice limbaj presupune existena unui alfabet, care
precizeaz simbolurile folosite, a unei sintaxe stabilind cum
pot fi combinate n limbajul respectiv simbolurile admise i a
unei semantici, stabilind semnificaia combinaiilor admise de
sintax.
12

III. Bazele logice ale IA

Sintaxa calculului propoziional


Definiia 6. Numim alfabetul calculului propoziional
mulimea Sp = V L {( , )}
V este o mulime infinit numrabil de simboluri, care se
numesc variabile propoziionale. Acestea vor fi notate
cu p, q, r, eventual cu indici p1, p2
L = {7, , , , } este mulimea operaiilor logice.
Definiia 7. Numim cuvnt peste un alfabet S o
succesiune finit de elemente din S. Mulimea tuturor
cuvintelor peste alfabetul S se noteaz cu S*. Ne vor
interesa cuvintele peste alfabetul calculului propoziional,
mulimea acestora notndu-se
cu S *. Elementele mulimii le vom nota cu A, B, . . .
p

13

III. Bazele logice ale IA

*
p se

Definiia 8. Un cuvnt A S
numete formul n
calculul propoziional (notm mulimea formulelor n
calculul propoziional cu Fp) dac i numai dac
ndeplinete una din condiiile:
1. A V (A este o variabil propoziional);
2. A = (7 B) unde B Fp;
3. A = (B # C) unde B, C Fp, iar # L \ {7}.
Se poate observa c definiia de mai sus este una de tip
recursiv, deoarece entitatea definit este descris chiar pe
baza entitii de acelai tip (n cazurile 2 i 3). Totodat,
ea poate fi privit i ca fiind de tip inductiv, n care 1
asigur pasul iniial, iar 2 i 3 asigur pasul inductiv.
14

III. Bazele logice ale IA

Exemplu
Dac p, q, r V, atunci: q r , r q, ((7p) (r q))
sunt trei cuvinte peste alfabetul calculului propoziional
*
S
(elemente din p).
Din acestea, numai ultimul cuvnt este i formul n
calculul propoziional (element din Fp).
Rezult din definiiile de mai sus i din acest exemplu c
are loc relaia:
*
V Fp S p, incluziunile respective nefiind stricte.

15

III. Bazele logice ale IA

Folosirea strict a definiiei formulei n calculul


propoziional presupune manevrarea unui numr mare de
paranteze. Pentru simplitate, A Fp poate fi reprezentat
printr-un cuvnt mai simplu A, obinut din A prin
renunarea, omiterea unor paranteze, cu condiia ca din
cuvntul redus A s se poat reconstitui n mod unic
formula A, pe baza urmtoarelor 3 reguli de reconstituire:
1) restabilirea parantezelor se face n ordine pentru: 7, ,
, , ;
2) dac A Fp atunci cuvntul 77 . . . 7A reprezint
formula (7 (7 (. . . (7A)). . .) );
3) dac A1, A2, . . . An Fp i # {, , , } atunci
cuvntul A1 # A2 #. . . #An reprezint formula
(. . . ((A1 # A2) #. . . #An).
16

III. Bazele logice ale IA

Regula 1) de mai sus fixeaz prioritatea operaiilor n


calculul propoziional cea mai prioritar este negaia,
urmat de conjuncie, disjuncie, implicaie i echivalen,
iar regulile 2) i 3) arat c reconstituirea se face de la
stnga la dreapta.
Practic, se caut de la stnga la dreapta cea mai prioritar
operaie logic n jurul creia se poate reconstitui o
formul, se reconstituie, .a.m.d.
Exemplu
Dac p, q, r V, s se reconstituie formula din care
provine urmtorul cuvnt A:
A = (p q r p) (7q r) 7p r

17

III. Bazele logice ale IA

Rezolvare
A1 = (((p (q r)) p) ((((7q) r) (7p)) r))
n general nu se poate renuna la toate parantezele unei
formule pentru a obine o form simplificat a acesteia,
existnd pericolul de alterare a coninutului formulei. Acest
aspect este verificabil chiar pe exemplul de mai sus, unde,
dac n cuvntul iniial A am renuna la toate parantezele,
dup reconstituire nu am mai obine A1, ci A2:
A2 = ((p (q r)) ((p (7q)) ((r (7p)) r)))

18

III. Bazele logice ale IA

innd seama de prioritatea operaiilor logice ne vom


putea da seama de parantezele la care putem renuna
ntr-o formul i de cele la care nu putem renuna.
Exemplu
Formula A = ((7p) ((r p) (7r))), unde p, r V, poate
fi reprezentat simplificat prin cuvntul:
A1 = 7p (r p) 7r.
Dac am renuna la toate parantezele, atunci din
A2 = 7p r p 7r nu am obine prin reconstituire A, ci:
A3 = ((7p) (r (p (7r)))).

19

III. Bazele logice ale IA

n continuare vom lucra numai cu reprezentrile


simplificate ale formulelor i nu vom mai face distincie
ntre o formul i reprezentarea ei simplificat, cea
obinut prin omiterea anumitor paranteze.
Definiia 9. Dac A Fp atunci mulimea prilor lui A,
notat (A), se definete inductiv prin:
1) dac A V atunci (A) = {A};
2) dac A = 7B, unde B Fp, atunci (A) = (B) {A};
3) dac A = B # C, unde B, C Fp i # L \ {7}, atunci
(A) = (B) (C) {A}.

20

III. Bazele logice ale IA

Rezult din definiia de mai sus c mulimea (A) are


cardinalul egal cu 1 dac i numai dac A V (A este o
variabil propoziional).
n acest caz A se numete formul atomic sau atom.
Dac A Fp i A nu este atom, atunci formula va fi de
forma A = 7B sau A = B # C, cu # L \ {7}, caz n care
formula A se numete formul compus, iar 7 sau # se
numete operaie dominant a formulei.
Elementele lui (A) se numesc subformule ale lui A.

21

III. Bazele logice ale IA

Exemplu
Fie p, r V i formula A = 7p (r p) 7r.
A este formul compus.
(A) = {A, 7p, (r p) 7r, p, r p, 7r, r}
Operaia dominant pentru A este .

22

III. Bazele logice ale IA

innd seama de caracterul inductiv al definiiei formulei n


calculul propoziional, vom putea aplica inducia matematic
pentru a demonstra proprieti referitoare la formulele din calculul
propoziional. Astfel, poate fi formulat o schem a induciei
matematice pentru formulele din calculul propoziional.
Teorema Fie o proprietate referitoare la formulele din calculul
propoziional. Notm cu (A) faptul c proprietatea este
adevrat pentru A, A Fp. Dac au loc:
i) (A), oricare ar fi A o formul atomic;
ii) dac din (A1) i (A2), A1, A2 fiind formule oarecare, se
deduce (7A1), (A1 A2), (A1 A2), (A1 A2), (A1 A2)
atunci (A) are loc, oricare ar fi A Fp.
23

III. Bazele logice ale IA

Semantica calculului propoziional


Definiia 10. Se numete evaluare a formulelor n calculul
propoziional extensia unic a oricrei funcii
v : V {adevrat, fals} la Fp,
extensie pe care o vom nota tot cu v,
v : Fp {adevrat, fals}
i care se calculeaz dup regulile sintetizate n
urmtoarele tabele (n acestea am notat v(x) cu xv
valoarea evalurii v pentru x - i adevrat cu a, respectiv
fals cu f):

24

III. Bazele logice ale IA

Av

(7A)v

Av Bv (A B)v (A B)v (A B)v (A B)v

a a

a f

25

III. Bazele logice ale IA

innd seama de caracterul recursiv al definiiei formulei


n calculul propoziional, se constat c pentru
determinarea lui Av pentru o formul dat este suficient s
cunoatem valorile lui v pentru toate variabilele
propoziionale ce apar n A.
Definiia 11. O formul A se numete tautologie (sau lege
logic) dac oricare ar fi v o evaluare a formulelor, avem
Av = adevrat. Dac A este tautologie, atunci se folosete
notaia |=A.
Definiia 12. O formul A se numete realizabil
(consistent, verificabil) dac exist o evaluare v astfel
nct Av = adevrat. O formul A se numete nerealizabil
(contradicie, fals) dac oricare ar fi v o evaluare avem Av
= fals.
26

III. Bazele logice ale IA

Fp
Tautologii
Contradicii
Formule
realizabile
Fig. 1. O mprire a mulimii formulelor
din calculul propoziional
27

III. Bazele logice ale IA

Teorema 2. O formul este tautologie dac i numai


dac negaia ei este contradicie.
Teorema 3. O formul este realizabil dac i numai
dac negaia ei nu este tautologie.

Demonstraiile sunt imediate pe baza definiiei evalurii.


Teorema 2 ne arat o posibilitate de a demonstra c o
formul este tautologie: se art c negaia ei este
contradicie. Aceasta este calea urmat de
demonstrarea automat a teoremelor.

28

III. Bazele logice ale IA

Definiiile privind realizabilitatea i nerealizabilitatea se


extind pentru mulimi de formule.
Definiia 13. O mulime I Fp este realizabil
(consistent) dac exist o evaluare v astfel nct
oricare ar fi A I s avem Av = adevrat.
O mulime I Fp este nerealizabil (inconsistent) dac
oricare ar fi v o evaluare, exist A I astfel nct Av =
fals.
Este uor de observat c orice mulime de formule este
sau realizabil sau nerealizabil. Pentru SBC ne va
interesa ca baza de cunotine s fie pstrat
realizabil.
29

III. Bazele logice ale IA

Dei n definiia tautologiei se cere Av = adevrat pentru


oricare evaluare v, i exist o infinitate de evaluri, se
poate decide ntr-un numr finit de pai dac formula A
este tautologie pe baza observaiilor urmtoare:
a) n formula A intr un numr finit de variabile
propoziionale; fie acestea p1, p2,. . .,pn.
b) dac v i w sunt dou evaluri astfel nct: piv = piw
i = {1, ..., n}, atunci Av = Aw.
c) exist 2n evaluri distincte pe mulimea {p1, . . . pn}.
Rezult astfel c vom avea de testat cel mult 2n cazuri
pentru a decide dac A este tautologie.
30

III. Bazele logice ale IA

Pentru calculul propoziional exist mai muli algoritmi


ce pot fi aplicai pentru a decide asupra caracterului de
tautologie al unei formule; unul dintre acetia este
prezentat n continuare.

Asociem pentru fiecare variabil propoziional e o


variabil numeric cu valori n mulimea {0, 1}. Pentru
orice formul A, ale crei variabile propoziionale sunt
e1, . . . , en, asociem un polinom depinznd de
variabilele numerice 1, . . . , n . Aceast asociere o
facem pe baza urmtoarelor reguli de calcul:
31

III. Bazele logice ale IA

1) dac A V, deci A = e, atunci =


2) dac A = 7O, O Fp, atunci = 1-
3) dac A = O U, O, U Fp, atunci =
4) dac A = O U, O, U Fp, atunci = + -
5) dac A = O U, O, U Fp, atunci = 1- +
6) dac A = O U, O, U Fp, atunci
=1--++
Se remarc faptul c prin regulile de mai sus orice
polinom va lua valori n mulimea {0, 1}.

32

III. Bazele logice ale IA

Teorema 4. Dac v este o evaluare oarecare i oricare


ar fi e, e V, i asociem , astfel nct = 1 dac ev =
adevrat i = 0 dac ev = fals, atunci oricare ar fi A,
A Fp, Av = adevrat dac i numai dac valoarea
polinomului (asociat lui A conform celor ase reguli
de calcul de mai sus), pentru valorile corespunztoare
ale variabilelor numerice de care depinde este = 1.
Rezult, pe baza teoremei 4, algoritmul pentru a decide
dac o formul A este tautologie:
1) se construiete polinomul asociat formulei A;
2) se verific dac este o funcie polinomial identic
egal cu 1.
33

III. Bazele logice ale IA

Pentru aplicarea algoritmului este util s observm c


dac x este o variabil ce ia valori n mulimea {0,1}
atunci x2 = x i x(1-x) = 0. Aceast observaie poate
ajuta n rezolvarea pasului al doilea al algoritmului.
Exemplu
Fie formula A = e (u e u), e, u V.
Pentru a demonstra c are loc |=A construim folosind
regulile de asociere.
= 1 + (u e u) = 1 - + (1 + e u) =
1 - + (1 + ) = 1 - + - + = 1
34

III. Bazele logice ale IA

Teorema 5. Fie A Fp, o formul ce conine variabilele


propoziionale p1, . . ., pn i fie B formula obinut din
A prin substituia simultan a variabilelor p1, . . , pn,
respectiv cu formulele C1, . . .Cn
(se poate demonstra, de exemplu folosind inducia
matematic pentru formulele din calculul
propoziional, c i B este formul).
Dac A este tautologie atunci i B este tautologie.
Demonstraie.
n enunul teoremei p1, . . ., pn pot fi toate, sau o parte
din variabilele propoziionale care apar n A. Fie v o
evaluare oarecare.
35

III. Bazele logice ale IA

Trebuie s artm c Bv = adevrat.


Construim evaluarea w care satisface egalitile:
p1w = C1v, p2w = C2v, . . ., pnw = Cnv.
Din aceast construcie i din felul n care a fost
obinut B rezult: Aw = Bv. Cum din ipoteza teoremei
are loc |= A, nseamn c Aw = adevrat i deci Bv =
adevrat, ceea ce trebuia demonstrat.
Din aceast teorem rezult c n Fp exist o infinitate
de tautologii, de exemplu obinute dintr-o unic
tautologie prin substituii repetate ale variabilelor
propoziionale din aceasta, cu alte formule. Exist
ns o serie de tautologii de baz, utilizate mai des.
Acestea sunt date de urmtoarea teorem.
36

III. Bazele logice ale IA

Teorema 6. Dac A, B, C Fp atunci au loc:


1) |= A A
2) |= A A (legea identitii pentru echivalen)
3) |= A 77A (negarea negaiei)
4) |= A 7A (legea terului exclus)
5) |= A # B B # A, # {, , } (legi de comutativitate
pentru conjuncie, disjuncie i echivalen)
6) |= (A # B) # C A # (B # C), # {, , } (legi de
asociativitate pentru conjuncie, disjuncie i
echivalen)

37

III. Bazele logice ale IA

7) |= A #1 (B #2 C) (A #1 B) #2 (A #1 C), #1, #2 {, ,
} (legi de distributivitate pentru conjuncie i
disjuncie)
8) |= (A B) (7A B) (nlocuirea implicaiei cu
disjuncie)
9) |= (A B) (B C) (A C)
10) |= (A B) (A B) (B A) (nlocuirea
echivalenei cu dubla implicaie)
11) |= 7(A B) (7A 7B) (lege a lui De Morgan)
12) |= 7(A B) (7A 7B) (lege a lui De Morgan)
13) |= (A B) (7B 7A) (legea contrapoziiei)
38

III. Bazele logice ale IA

14) |= 7A (A B) B i |= 7B (A B) A
(rezoluia unitar)
15) |= (A B) (7B C) (A C) (rezoluia,
important n demonstrarea automat a teoremelor)
16) |= A (B A)
17) |= A (A B) B (modus ponens sau regula
detarii, important pentru SE)
18) |= (A B) 7B 7A (modus tollens)
Definiia 14. Dac A i B sunt formule ele sunt
echivalente dac este tautologie A B (conform
definiiei evalurii, acesta este acelai lucru cu a
spune c A i B iau aceleai valori de adevr pentru
orice evaluare).
39

S-ar putea să vă placă și