Documente Academic
Documente Profesional
Documente Cultură
Logică și
structuri
discrete
Curs pentru anul I
Automatică și Informatică Aplicată
Demonstrații informale
• Definiție
• Axiome și postulate
o AXIÓMĂ, axiome, s. f. 1. Adevăr fundamental admis fără demonstrație, fiind
evident prin el însuși. 2. Enunț prim, nedemonstrat, din care se deduc, pe baza
unor reguli, alte enunțuri. [Pr.: -xi-o-] – Din fr. axiome.
Sursa: DEX '98 (1998)
o POSTULÁT, postulate, s. n. Adevăr fundamental care apare ca evident și care
nu are nevoie să fie demonstrat; principiu de bază, normă. ♦ Enunț logic
considerat primul într-un sistem deductiv. – Din fr. postulat, lat. postulatum.
Sursa: DEX '98 (1998)
Negația
• Schimbă valoarea de adevăr a unei afirmații
S Non S
F (0) A (1)
A (1) F (0)
1
9-12-2019
Conjuncția și disjuncția
A B A∙B A+B
0 0 0 0
0 1 0 1
1 0 0 1
1 1 1 1
SAU exclusiv
A B A●B
0 0 0
0 1 1
1 0 1
1 1 0
Afirmații condiționale
• Dacă A, atunci B
A B A => B
0 0 1
0 1 1
1 0 0
1 1 1
Afirmații (propoziții)
condiționale
• Când ipoteza e falsă avem o afirmație condițională vag
adevărată
o Dacă 1=2, atunci 39=12
o Toate telefoanele din încăpere sunt închise
o Toate telefoanele din încăpere sunt deschise
o Toate telefoanele din încăpere sunt închise și (nu „sau”) deschise este vag
adevărată atunci când mulțimea telefoanelor din încăpere este vidă
2
9-12-2019
Propoziții echivalente
S T
non (A sau B) (non A) și (non B)
non (A și B) (non A) sau (non B)
A și (B sau C) (A și B) sau (A și C)
A sau (B și C) (A sau B) și (A sau C)
dacă A, atunci B dacă non B, atunci non A
dacă A, atunci B (non A) sau B
non (dacă A, atunci B) A și (non B)
Despre numere și
divizibilitate
• Numere întregi:
o Impare
• …, -5, -3, -1, 1, 3, 5, …
o Pare:
• …, -4, -2, 0, 2, 4, …
Proprietățile divizibilității
• Dacă d|a și a|b, atunci d|b
3
9-12-2019
Tehnici de demonstrare
Demonstrații exhaustive
10
Tehnici de demonstrare
Demonstrații condiționale
• Dacă A, atunci B
o Se bazează pe prezumția că ipoteza este adevărată
o Poate fi efectuată în mai mulți pași, până la atingerea concluziei B
• Dacă A, atunci M
• Dacă M, atunci N
• Dacă N, atunci P
• Dacă P, atunci B
• Exemplul 1)
o Dacă numerele x și y sunt impare, suma lor va fi pară
• x + y = (2k + 1) + (2m + 1) = 2k + 2m + 2 = 2(k + m + 1)
• Exemplul 2)
o Dacă d|a și a|b, atunci d|b
• b = an = (dm)n = d(mn)
11
Tehnici de demonstrare
Demonstrații prin contradicție (refutare)
12
4
9-12-2019
Tehnici de demonstrare
Demonstrații prin echivalență
• Exemplu
o x este impar dacă și numai dacă (iff) x2 + 2x + 1 este par
• X e impar iff x = 2k + 1 pentru un întreg k (definition)
• iff x + 1 = 2k + 2 pentru un întreg k (algebra)
• iff x + 1 = 2m pentru un întreg m (algebra)
• iff x + 1 este par (definition)
• iff (x + 1)2 este par (Exercițiul 8a din carte)
• iff x2+ 2x + 1 par (algebra) QED
13
Mulțimi
• Definiție:
o O colecție de lucruri (adesea numite elemente, obiecte sau membri)
• Sinonime:
o Mulțime, colecție, grămadă, grup, clasă…
• Notații
o Simbolice: S
o Explicite: { a, b, c, d }
o Analitice: { x | P }
14
Descrierea mulțimilor
• S = {x, y, z}
• {H, E, L, L, O}
15
5
9-12-2019
Descrierea mulțimilor
• Singleton
o SINGLETÓN s.n. Singura carte de un anumit semn pe care o are un jucător
la bridge. [< engl., fr. singleton]
o { a }, { 123 } etc.
• Mulțimea vidă
o {}
o ∅
• Exemple
o { { } }, { ∅ }
16
Despre mulțimi
• Egalitatea mulțimilor:
o A=B
o {u, g, h} = {h, u, g}
o A≠B
o {a, b, c} ≠ {a, b}
o {a} ≠ ∅
• Mulțimi:
o Finite
o Infinite
17
Despre mulțimi
• Numere:
o Naturale:
• ℕ = {0, 1, 2, 3, …}
• ℕ * = {1, 2, 3, …}
o Întregi:
• ℤ = {… , –3, –2, –1, 0, 1, 2, 3, …}
18
6
9-12-2019
Submulțimi
• Dacă toate elementele din A sunt regăsite și în B,
atunci A este o submulțime a lui B
o A⊂B
• Exemple:
o {a, b} ⊂ {a, b, c}
o {0, 1, 2} ⊂ ℕ
o ℕ⊂ℤ
o A⊂A
o ∅⊂A
o ℕ⊂ℤ⊂ℚ⊂ℝ
19
Submulțimi
• Dacă A nu este o submulțime a lui B, atunci putem
scrie A ⊄ B
o {a, b} ⊄ {a, c}
o {0, –1, –2} ⊄ ℕ
20
Submulțimi
• Diagrama Venn (de fapt, Euler) a submulțimii A
incluse în mulțimea B
B
A x
21
7
9-12-2019
• Exemplu:
o power(S) = {∅ , {a}, {b}, {c}, {a, b}, {a, c}, {b, c}, S}
22
23
Demonstrații de
incluziune
• Se dau:
o A = {x | x prim și 42 ≤ x ≤ 51}
o B = {x | x = 4k + 3 și k ∈ ℕ}
• Demonstrație:
o Luăm x din A. Atunci fie x = 43, fie x = 47
o Se observă că 43 = 4(10) + 3 și că 47 = 4(11) + 3.
o În ambele cazuri x ∈ B
o Prin urmare, A ⊂ B (Q.E.D.)
24
8
9-12-2019
Demonstrații de
neincluziune
• Se dau:
o A = {x | 3k + 1 și k ∈ ℕ}
o B = {x | 4k + 1 și k ∈ ℕ}
• Demonstrație:
o Se observă că A = {1, 4, 7, … } și B = {1, 5, 9, … }
o Deoarece 4 ∈ A și 4 ∉ B, rezultă că A ⊄ B
o Deoarece 5 ∈ B and 5 ∉ A, rezultă că B ⊄ A (Q.E.D.)
25
Demonstrații de egalitate
• Se dau:
o A = {x | x prim și 12 ≤ x ≤ 18} ,
o B = {x | x = 4k + 1 și k ∈ {3, 4}}
• Demonstrație:
o Dacă x ∈ A, atunci fie x = 13, fie x = 17
o Prin urmare, se verifică 13 = 4(3) + 1 și 17 = 4(4) + 1, rezultând că x ∈ B și, pe
cale de consecință că A ⊂ B (†)
o Dacă x ∈ B, atunci fie x = 4(3) + 1, fie x = 4(4) + 1, rezultând că x ∈ A și, pe
cale de consecință că B ⊂ A (‡)
o Din (†) și din (‡) rezultă că A = B (Q.E.D.)
26
Operații cu mulțimi
• Reuniunea
• Intersecția
• Complementul universal
27
9
9-12-2019
Reuniunea
• A ∪ B = {x | x ∈ A sau x ∈ B}
28
Proprietățile reuniunii
• A∪∅=A
• A ∪ B = B ∪ A (∪ este comutativă)
• A ∪ (B ∪ C) = (A ∪ B) ∪ C (∪ este asociativă)
• A∪A=A
29
Condiția de submulțime
• Exemplu
o Să se demonstreze că A ⊂ B dacă și numai dacă A ∪ B = B
• Demonstrație
o Întâi se demonstrează că A ⊂ B implică A ∪ B = B
• Dacă e adevărat și avem x ∈ A ∪ B, rezultă că x ∈ A sau x ∈ B
• Fiindcă am presupus A ⊂ B, avem x ∈ B, rezultând A ∪ B ⊂ B
• Pentru că întotdeauna avem B ⊂ A ∪ B, rezultă că A ∪ B = B (Q.E.D. 1)
30
10
9-12-2019
𝐴𝑖 = 𝐴1 ∪ 𝐴2 ∪ … ∪ 𝐴𝑛
𝑖=1
𝐴𝑖 = 𝐴1 ∪ 𝐴2 ∪ … ∪ 𝐴𝑛 ∪ …
𝑖=1
31
Intersecția
• A ∩ B = {x | x ∈ A și x ∈ B}
32
Proprietățile intersecției
• A∩∅=∅
• A ∩ B = B ∩ A (∩ este comutativă)
• A ∩ (B ∩ C) = (A ∩ B) ∩ C (∩ este asociativă)
• A∩A=A
33
11
9-12-2019
𝐴𝑖 = 𝐴1 ∩ 𝐴2 ∩ … ∩ 𝐴𝑛
𝑖=1
𝐴𝑖 = 𝐴1 ∩ 𝐴2 ∩ … ∩ 𝐴𝑛 ∩ …
𝑖=1
34
Diferența
• Dacă A și B sunt mulțimi, atunci diferența A – B este
mulțimea tuturor elementelor din A care nu se
regăsesc în B
o A – B se mai numește și complementul relativ al lui B față de A
• A – B = {x | x ∈ A și x ∉ B}
35
Diferența simetrică
• A ⊕ B = {x | fie x ∈ A, fie x ∈ B (nu amândurora!)}
• A ⊕ B = (A ∪ B) – (A ∩ B)
36
12
9-12-2019
Complementul universal
• Dacă discuția se referă întotdeauna la mulțimi care
sunt submulțimi ale unei anumite mulțimi U, atunci
diferența U – A se va numi complement universal al
lui A și se va nota cu A′
• Exemplu: (A ∪ B)′
37
• A ∪ (B ∩ C) = (A ∪ B) ∩ (A ∪ C)
o ∪ e distributivă față de ∩
• A ∩ (A ∪ B) =A
o legea absorbției
• A ∪ (A ∩ B) =A
o legea absorbției
38
• Demonstrație: x ∈ A ∩ (B ∪ C)
o dacă și numai dacă x ∈ A și x ∈ (B ∪ C)
o dacă și numai dacă x ∈ A, și fie x ∈ B , fie x ∈ C
o dacă și numai dacă fie (x ∈ A și x ∈ B), fie (x ∈ A și x ∈ C)
o dacă și numai dacă x ∈ (A ∩ B) ∪ (A ∩ C) (Q.E.D.)
39
13
9-12-2019
Proprietățile
complementului
• (A′)′ = A
• ∅′ = U și U′ = ∅
• A ∩ A′ = ∅ și A ∪ A′ = U
• A ⊂ B dacă și numai dacă B′ ⊂ A′
• (A ∪ B)′ = A′ ∩ B′
o Legea lui de Morgan
• (A ∩ B)′ = A′ ∪ B′
o Legea lui de Morgan
• A ∩ (A′ ∪ B) = A ∩ B
o Legea absorbției
• A ∪ (A′ ∩ B) = A ∪ B
o Legea absorbției
40
Numărarea elementelor
mulțimilor finite
• Regula reuniunii:
o |A ∪ B| = |A| + |B| – |A ∩ B|
41
Numărarea elementelor
mulțimilor finite
• Regula reuniunii se poate extinde pe mai multe
mulțimi:
o |A ∪ B ∪ C| = |A ∪ (B ∪ C)|
o = |A| + |B ∪ C| − |A ∩ (B ∪ C)|
42
14
9-12-2019
Numărarea elementelor
mulțimilor finite
• Regula diferenței: |A – B| = |A| – |A ∩ B|
43
Multimulțimi (bags)
• Multimulțimile sunt colecții de obiecte (la fel ca
mulțimile) care permit repetiții ale elementelor sale
• Se pot defini:
o Egalitatea ([h, u, g, h] = [h, h, g,u], dar [h, u, g, h] ≠ [h, u, g])
o Incluziunea ([a, b] ⊂ [a, b, a] , dar [a, b, a] ⊄ [a, b]
44
Multimulțimi (bags)
• Se pot defini:
o Suma multimulțimilor, notată cu A + B (dacă x apare de m ori în A și de n
ori în B, atunci x apare de m + n ori în A + B)
• De exemplu: [2, 2, 3] + [2, 3, 3, 4] = [2, 2, 2, 3, 3, 3, 4]
• De studiat acasă:
o Teoria mulțimilor a lui Cantor
o Paradoxul lui Russell
45
15
9-12-2019
Structuri ordonate
• Tupli
o Sunt colecții de obiecte, numite elemente, care au o anumită ordine
o Dacă un tuplu are n elemente, atunci el se va numi n-tuplu
o Cazurile particulare 2-tuplu și 3-tuplu se numesc dublu și, respectiv, triplu
o Doi n-tupli, (x1, … , xn) și (y1, … , yn), sunt egali dacă xi = yi pentru i între 1 și n
46
Produsul cartezian al
mulțimilor
• Dacă A și B sunt mulțimi, atunci produsul lor
cartezian, notat cu A x B, este mulțimea tuturor
dublilor (a, b), știind că a ∈ A și b ∈ B
o 𝐴 x 𝐵 = (𝑎, 𝑏) 𝑎 ∈ 𝐴 ș𝑖 𝑏 ∈ 𝐵
47
Produsul cartezian al
mulțimilor
• Produsul cartezian se poate extinde pe oricâte
mulțimi
• De reținut că A0 = {( )} și A1 = {(a)}
o De observat că A0 ≠ { } și A1 ≠ A
o De scris, ca exemplu, A0, A1, A2 și A3, dacă A = {a, b, c}
48
16
9-12-2019
Produsul cartezian al
mulțimilor
• Lucrând cu tupli, este necesar accesul aleatoriu la
oricare dintre elementele sale
49
50
51
17
9-12-2019
52
Liste
• Sunt succesiuni finite de zero sau mai multe
elemente, care se pot repeta
• Diferența majoră față de tupli constă în modul de
acces:
o Acces direct pentru tupli
o Acces secvențial pentru liste
53
Liste
• Notații uzuale și operații elementare:
54
18
9-12-2019
Liste
• Nu există restricții cu privire la felul elementelor din
listă
• De aceea, este o metodă foarte recomandată
pentru reprezentarea informațiilor în computere
• De exemplu:
55
Liste
• Dacă toate elemente unei liste L fac parte dintr-o
anumită mulțime A, atunci se spune că L este o listă
peste A
• De exemplu, dacă L = {a, b, c}, atunci următoarea
listă este peste A:
56
Reprezentarea listelor în
calculatoare
• Fie L = <b, c, d, e>
57
19
9-12-2019
Șiruri și limbaje
• Șirul este o succesiune ordonată și finită a unor
elemente amplasate prin juxtapunere
• Elementele sunt luate dintr-o mulțime numită alfabet
• Dacă A este un alfabet, atunci șirurile compuse cu
elemente din A se numesc șiruri peste A
o Exemplu de șiruri peste A = {a, b, c}: a, ba, bba, aacabb
• Șirul cu zero elemente se numește vid și este notat
cu majuscula grecească lambda Λ
• Numărul de elemente dintr-un șir se numește
lungimea șirului
o De exemplu, |Λ| = 0 și |aacabb| = 6
58
Concatenarea șirurilor
• Se face prin simpla juxtapunere
o De exemplu, dacă s = aab și t = ba sunt două șiruri peste alfabetul {a, b},
atunci concatenarea st = aabba
59
Limbaje
• Sunt mulțimi de șiruri
60
20
9-12-2019
Limbaje
• Dacă A este un alfabet, atunci mulțimile ∅ , {Λ }, A,
și A* sunt patru exemple de limbaje peste A
• D exemplu:
o s0 = Λ , s1 = s, s2 = ss, și s3 = sss
61
Numerale
• Sunt reprezentări scrise ale unor numere
62
Produsul limbajelor
• Fiind mulțimi, limbajele se pot combina prin operațiile
uzuale (reuniune, intersecție, diferență, complement)
63
21
9-12-2019
• Asociativitate:
• Necomutativitate:
64
65
66
22
9-12-2019
Grafuri
• Mulțimi de obiecte, dintre care unele pot prezenta
conexiuni
67
Reprezentarea grafurilor
68
Colorarea grafurilor
• Un graf este n-colorabil dacă vârfurilor sale li se pot
atribui n culori, astfel încât să nu existe culori
adiacente
• Numărul minim de culori este numărul cromatic al
grafului
69
23
9-12-2019
Colorarea grafurilor
• Un graf este planar dacă poate fi reprezentat în
plan, cu toate conexiunile sale, fără a apărea
intersecții între muchii
70
Terminologie
• Graful direcțional are muchii orientate
Sursă
Drenă
71
Reprezentarea
computațională a grafurilor
• Reprezentarea computațională a grafurilor
nedirecționale
72
24
9-12-2019
Grafuri ponderate
• Grafurile pot avea informație atașată muchiilor
73
Particularități
• Grafuri și relații binare
o Se observă că orice relație R pe o mulțime A se poate reprezenta ca un
graf direcționat de forma G = (A, R), cu nodurile A și muchiile R
o De exemplu, fie A = {1, 2, 3} și R = {(1,2), (1, 3), (2, 3), (3, 3)}
74
Căi în grafuri
• Deplasare de la un vârf la altul, de-a lungul unor
muchii conexe
• Calea de la x0 la xn este x0, x1, … , xn, unde există o
muchie xi-1, xi pentru 1 ≤ i ≤ n
• Ciclul este o cale care începe și se termină în
același vârf, fără ca muchiile să se repete
• Grafurile fără cicluri se numesc acicilice
• Lungimea unei căi este dată de numărul de muchii
parcurse
• Grafurile sunt conectate dacă există o cale între
oricare pereche de noduri
75
25
9-12-2019
Exemplu
• Calea b, c, d, b, a vizitează b de două ori și are
lungimea 4
76
O problemă
• A se trasa prima figură fără a se ridica creionul de
pe hârtie și fără a desena o muchie de două ori
• A doua figură demonstrează natura de graf a
problemei
77
Altă problemă
• Este faimoasa problemă a celor șapte poduri din
Königsberg care conectau prin 1800 două insule
ale râului Pregel cu lunca sa
• Orașul trebuia parcurs prin traversarea unui pod
doar o singură dată
• Leonhard EULER (1707–1783) a demonstrat că nu
există o astfel de soluție, găsind condiția generală
pentru existența ei
78
26
9-12-2019
Traversarea grafurilor
• Traversarea unui graf începe dintr-un nod v și
vizitează toate nodurile x la care se poate ajunge
cu ajutorul unei căi
79
Algoritmul prioritar pe
lățime
• Se apelează procedura visit(v, k), astfel:
80
Algoritmul prioritar pe
adâncime
• Se apelează recursiv procedura DF(v) astfel:
81
27
9-12-2019
Arbori
• Sunt reprezentări similare celor din biologie
• Arborii au:
o Rădăcină
o Noduri și frunze (părinți și copii)
o Ramuri
82
Reprezentarea expresiilor
algebrice
• Expresia algebrică x – y poate fi reprezentată cu
ajutorul unui arbore ordonat, având semnul minus în
rădăcină, variabila x în subarborele stâng și
variabila y în subarborele drept
3 – (4 + 8) (4 + 8) – 3
83
Reprezentarea arborilor
• Reprezentarea trebuie să permită reconstrucția
3 – (4 + 8) (4 + 8) – 3
84
28
9-12-2019
Reprezentarea arborilor
• Alt exemplu:
85
Reprezentarea arborilor în
computere
• Reprezentarea arborelui din lista
86
Arbori binari
• Arborii binari sunt acei arbori ordonați care sunt fie
vizi, fie au proprietatea ca fiecare nod să conțină
doi subarbori (numiți stâng și drept), care să fie, la
rândul lor, arbori binari
87
29
9-12-2019
Reprezentarea arborilor
binari în computere
• Fie arborele
88
89
Arbori de acoperire
• Arborele de acoperire al unui graf conectat este un
subgraf care este arbore și conține toate nodurile
grafului inițial
90
30
9-12-2019
91
92
93
31