Documente Academic
Documente Profesional
Documente Cultură
Curs 2
O notiune e recursive daca e folosita in propria sa definitie.
In ML putem avea definitii globale ( ex : let notiune=expresie) sau definitii locale, folosite
doar intr-o expresie(ex : let notiune = expresie1 in expresie2).
Fractali = figure geometrice in care o parte a figurii e similara intregului.
Curs 3
O lista e o secventa finita, ordonata, de valori de acelasi tip.
-
Listele pot fi definite recursive : o lista este o lista vida, sau un element urmat de o lista.
Un tip de date abstract e un tip de date definit prin operatiile care se pot efectua asupra lui (
si constrangerile intre acestea), fara a expune modul in care acestea sunt implementate.
TDA izoleaza definite/interfata de implementare.
Curs 4
Multimea e un concept matematica fundamental. Am putea spune ca o multime e o colectie de
obiecte numite elementele multimii.
- Elementele unei multimi nu sunt ordonate
- Un element nu apare de mai multe ori ( Dar exista notiunea de multiset : fiecare element e
caracterizat prin numarul de aparitii ).
Putem defini o multime prin enumrarea elementelor sau printr-o prorietate caracteristica.
A este o submultime a lui B : AB daca fiecare element a lui A e si un element al lui B.
A e o submultime proprie a lui B : A B daca A B si exista cel putin un element x din B care
nu este in A.
Curs 5
O relatie intre elementele aceleasi multimi defineste un graf.
O relatie binara R intre doua multimi A si B e o submultime a produsului cartezian A B :
RAB.
O relatie R AB poate fi vazuta ca o functie f : A P(B) de la A la multimea partilor lui B.
O exceptie este o eroare care intrerupe calculul; daca nu e tratata, se incheie executia
programului.
Sintaxa in ML : try expresie
with tipar
Proprietati ale relatiilor:
-reflexiva daca pentru orice x X avem (x,x) R
-ireflexiva daca pentru orice x X avem (x,x) R
-simetrica daca pentru orice x,y X, daca (x,y) R atunci si (y,x) R
-antisimetrica daca pentru orice x,y X, daca (x,y) R si (y,x) R, atunci x=y
-tranzitiva, daca pentru orice x,y,z X, daca (x,y) R si (y,z) R, atunci (x,z) R
O relatie e de echivalenta daca e reflexive, simetrica si tranzitiva(ex : relatia de egalitate).
O relatie de echivalenta pe X defineste o partitie a lui X in clase de echivalenta.
O relatie e o ordine partial ( non-stricta ) , daca e reflexive, antisimetrica si tranzitiva(ex :
relatia <=)
O relatie e o ordine stricta daca e ireflexiva si tranzitiva.
O lattice e o multime partial ordonata, in care orice doua elemente au un minorant si un
majorant.(ex : multimea divizorilor unui numar )
x X e punct fix pentru functia f : X X daca f(x)=x.
O lattice L e completa daca orice multime S L are un cel mai mic majorant si un cel mai
mare minorant.
Teorema ( Knaster-Tarski):Fie f o functie monotona pe o lattice complete. Atunci multimea
punctelor fixe a lui f e tot o lattice completa.
Corolar : O functie monotona pe o lattice complete are un cel mai mic punct fix si un cel mai
mare punct fix.
Inversa unei relatii R A B e relatia R-1BA, cu (y,x) R-1 daca si numai daca (x,y) R.
Compunerea a doua relatii R1 AB si R2 B C :
R2R1 = {(x,z)|exista y B | (x,y) R1 si (y,z)R2}
O relatie e de echivalenta daca si numai daca R = R-1.
Daca R e tranzitiva , R R = R.
Inchiderea tranzitiva a unei relatii R X X e relatia tranzitiva minimala R+ astfel ca
R R+.
Putem calcula R+ ca fiind
= R R2
Curs 6
O propozitie(logica) e o afirmatie care e fie adevarata, fie falsa, dar nu ambele simultan.
Formulele logicii propozitionale :
-orice propozitie atomica este o formula
- daca a este o formula, atunci si not a este o formula
Curs 7
Reguli de simplificare a unei formule si stabilirea realizabilitatii unei formule:
1.Daca un literal e 1 , pot fi sterse clauzele in care apare
2.Daca un literal e 0 , el poate fi sters in clauzele in care apare.
3.Daca nu se mai pot face reduceri alegem o variabila si incercam un valoare 1 sau 0.
4.Daca nici un caz un are solutie, formula nu e realizabila.
Curs 8
Silogisme = reguli de inferenta compuse din 3 parti :
1.premisa majora ; ex : Toti oamenii sunt muritori
2.premisa minora ; ex : Toti grecii sunt oameni
3.concluzia ; ex : Toti grecii sunt muritori
Fiecare e propozitie categorica, despre doua categorii A si B.
Curs 9
O substitutie e o functie care asociaza unor variabile niste termeni.
Substitutia a pe termenul T se noteaza usual postfix : Ta
Doi termini t1 si t2 se pot unifica daca exista o substitutie care ii face egali : t1=t2. O
astfel de substituie se numeste unificator.
Clauzele Horn : clauze cu cel mult un literal pozitiv.
Regulile lui Hoare : Atribuire, Secventiere, Decizie, Ciclu cu test.
Curs 10
Se da un alphabet : o multime de simboluri ( ex. Caractere)
Un cuvant finit peste alfabetul e un sir a1a2an de simboluri ai
Multimea tuturor cuvintelor finite peste alfabetul e notata * ;
*={a1a2an|ai }.
steaua Kleene : zero sau mai multe aparitii.
* are cuvinte de lungime nelimitata dar nu infinite
Un limbaj formal e o submultime definite dupa anumite reguli : gramatici, automate,
expresii regulate etc.
Automat finit determinist(DFA) : o multime de stari (unele acceptoare), o stare initiala, si
tranzitii in functie de simbolurile de intrare.
Formal, un automat e un tuplu cu 5 elemente (cvintuplu) (,S,s0,,F):
- e un alphabet finit nevid de simboluri de intrare
-S e o multime finita nevida de stari
-s0 S e starea initiala
-:S S e functia de tranzitie ( pentru fiecare stare si intrare , da starea urmatoare)
-F S e multimea starilor acceptoare
Un DFA e minimal daca nu exista un automat cu mai putine stari care accepta acelasi limbaj.
Curs 11
Concatenarea limbajelor : L1L2 ={w1w2| w1 L1, w2 L2}
Inchiderea Kleene(repetitia): L*={w| n N, w=w1w2wn, wi L}
nu repetitia aceluiasi sir, ci concatenarea oricaror siruri.
Daca e1 si e2 sunt expresii regulate atunci si urmatoarele sunt :
(e1+e2)
reuniunea limbajelor
(e1e2)
concatenarea limbajelor
(e1)*
inchiderea Kleene a limbajului
Cel mai prioritar este * apoi concatenare si apoi reuniune +; punctual pentru concatenare se
omite.
(0+1)*
(0+1)*0
1(0+1)*+0
O gramatica descrie cum se obtin sirurile dintr-un limbaj prin reguli de productie (reguli de
rescriere) pornind de la un simbol de start.
O gramatica formala G e formata din :
: o multime de simboluri terminale
N: o multime de simboluri neterminale, N =
P : o multime de reguli de productie , de forma ( N)*N( N)* ( N)
un simbol de start S
Curs 13
Un arbore e un graf conex fara cicluri. E compus din noduri si ramuri (muchii).
Obs: un arbore cu n noduri are n-1 ramuri
Orice nod in afara de radacina are un unic parinte. Un nod poate avea mai multi copii.
Nodurile fara copii se numesc noduri frunza.
Un arbore e fie arborele vid sau un nod cu mai multi subarbori.
Formula lui Cayley : Exista nn-2 arbori neordonati cu n noduri.
Codul Prufer : Un arbore cu n noduri poate fi reprezentat unic ca sir de n-2 numere de la 1 la
n.
Intr-un arbore binar, fiecare nod are cel mult doi copii. Un arbore binary e fie arborele vid
fie un nod cu cel mult doi subarbori.
Un arbore binar cu inaltimea n are cel mult 2n+1 -1 noduri.
Arbori binari completi : Fiecare nod care nu e frunza are exact doi copii.
Un arbore binar complet cu n frunze are n-1 noduri ce nu sunt frunze.
Un arbore binar complet de inaltime n are cel mult 2n frunze.
Parcurgerea arborilor : in preordine - intai radacina, apoi subarborii
in inordine arborele stang, apoi radacina, apoi arborele drept
in postordine intai subarborii, apoi radacina
Curs 14
Informal, un graf reprezinta o multime de obiecte (noduri) intre care exista anumite
legaturi (muchii sau arce).
Formal, un graf e o pereche ordinata G=(V,E) unde V e multimea nodurilor si E (multimea
muchiilor) e o multime de perechi (u,v) VV.