Вы находитесь на странице: 1из 24

MINISTERUL EDUCAŢIEI AL REPUBLICII MOLDOVA

UNIVERSITATEA TEHNICĂ A MOLDOVEI


FACULTATEA CALCULATOARE INFORMATICĂ ŞI MICROELECTRONICĂ

CATEDRA INFORMATICA APLICATĂ

Lucrarea nr. 5 Relații.

Numele : Gonța Olga


Numărul : 15
Grupa : IA-171

Pînă la data :…/…/……

Lucrarea efectuată # …

Nr Sarcina Puncte
1 Structura,
2 Continutul,
3 Exemplul/exemple,
Utilitatea, domeniile de
4
aplicabilitate.
Recomandări dacă
5
studentul le consideră utile.
6 Limba străină la prezentare
7 Aplicaţia în limbajul C

Total

Verificat / Nota : ………………………….

Data : ………………………….
„Relații. Forme de prezentare, proprietăți”

Structura

În matematică, o relație binară pe o mulțime A este o submulțime a produsului


cartezian {AxA}.

Tipuri de relații binare

Definiție:Tuplu este o secvență ordonată de elemente cu posibilitatea de a


fi repetate.

Elementele unui Exemplul:


Tuplu sunt enumerate <a, b, c>
în paranteze, de regulă Ordinea
elementelor in tuplu
unghiulare.
are importanță.
<a, b> nu este
egal cu <b, a>
Definiție:Produsul (cartezian) de mulțimi A și B, este mulțimea tuturor
tuplu-rilor de gradul 2, în care primul element apartine multimii A, iar al doilea
element lui B.

Este cunoscut că:


A X B - produs cartezian al multimilor A și B.
AXB≠BXA

Continut:

O relație binară între două mulțimi este o submulțime a produsului


cartezian.

Definiția formală:
R AB.
 Exemplu de relatie binara intre multimi:
„Relatia binară între mulțimi”
 Exemplu de Relatia binară pe mulțime:

Operații asupra relațiilor binare:

1. intersecția a două relații binare R1și R2 – este relația R1R2 = { (x, y)


| (x, y) R1și (x, y) R2 }.
2. reuniunea a două relații binare R1și R2 - este relația R1 R2 = { (x, y) |
(x, y) R1 sau (x, y) R2 }.
3. diferența relațiilor R1și R2 este o astfel de relație încît: R1\ R2 = {
(x, y) | (x, y) R1 și (x, y) R2 }
4. complimentara relației R={ (x, y) | (x, y) (AA)\R}.
5. inversa relației R –1 = { (x, y) | (y, x) R}.
Sarcina 1:/Anexa 1/

𝐑𝟏 :
1.На множестве А={1,2,3,4,5,6} задано отношение делимости: xRy тогда и только тогда,
когда x делится на y.
2.На множестве А={1,2,3,4,5,6} задано отношение делимости: xRy тогда и только тогда,
когда y делится на x.

R1 = {(x, y)| x ∈ A, y ∈ B si xRy ⇔ x\y}


R1 = {(1,2), (2,3), (3,4), (4,5), (5,6)}

R 2 = {(x, y)| x ∈ A, y ∈ B si xRy ⇔ 𝑦\𝑥}


R1 = {(1,2), (2,3), (3,4), (4,5), (5,6)}

1. Prezentaţi fiecare relaţie binară în toate formele sale:

𝐑𝟏 : {
𝐑 𝟏 = { (1,2),(1,3), (1,5), (2,5), (4,5)}

 Formă grafică:

0 1 2 3 4 5 6

 Graf:

1 2

3 6

4
 Matricea adiacenta:

1 2 3 4 5 6
1 1 1 1 0 1 0
2 1 2 0 0 1 0
3 1 0 1 0 0 0
4 0 0 0 0 1 0
5 1 1 0 1 1 0
6 0 0 0 0 0 0

𝐑𝟐 :
𝐑 𝟐 = { (𝟏, 𝟐), (𝟐, 𝟑), (𝟑, 𝟒), (𝟒, 𝟓), (𝟓, 𝟔) }

 Formă grafică:

1 2 3 4 5 6
 Graf:

6 1

4
 Matricea adiacenta:

1 2 3 4 5 6
1 1 1 0 0 0 0
2 1 1 1 0 0 0
3 0 1 1 1 0 0
4 0 0 1 1 1 0
5 0 0 0 1 1 1
6 0 0 0 0 1 1

2. Verificați proprietățile oricărei relații binare:


𝐑𝟏
1) R este reflexivă dacă: ∀x ∈ 𝐴 ⇔ xRx
Verificam pentru R1 :
2R2: „2\2” – F ⇒ R1 este reflexiv

2) R este simetric dacă: ∀x ∈ A, y ∈ B , xRy → yRx


Verificam pentru R1 :
2R3 → 3R2: „2\3” → „3\2”– F ⇒ R1 este simetrica
3) R este tranzitiv dacă: ∀x ∈ A, y ∈ B , xRy si yRz → xRz
Verificam pentru R1 :
2R3 si 3R4 → 2R4 : „2\3” – F ⇒ R1 nu este tranzitiva
𝐑𝟐
1) R este reflexivă dacă: ∀x ∈ 𝐴 ⇔ xRx
Verificam pentru R 2 :
2R2: „2∙ 2=2” – F ⇒ R 2 nu este reflexiv

2) R este simetric dacă: ∀x ∈ A, y ∈ B , xRy → yRx


Verificam pentru R 2 :
2R4→ 4R2: „2\4” → „2\4”– F ⇒ R 2 nu este simetrica
3) R este tranzitiv dacă: ∀x ∈ A, y ∈ B , xRy si yRz → xRz
Verificam pentru R 2 :
2R4 si 4R8→ 2R8 : „2\3” – F ⇒ R 2 nu este tranzitiva

3. Efectuați următoarele operații privind relațiile binare R1 și R2:


 reuniunea :
R1 = { (1,2), (2,3), (3,4), (4,5), (5,6)}
 intersecție :
R1 ={(1,2) }
 diferența R1 \ R2 și R2 \ R1 :

R1 \ R2= {(2,3), (3,4), (4,5), (5,6)}


R2 \ R1= {(2,4), (3,6)}
 diferența simetrică;

(R1 \ (R1 {(1,2), (2,3), (3,4), (4,5), (5,6)}

 produs (compoziție)
R1xR2:

(1,2) (2,4) (3,6)

(1,2) (1,2),(1,2) (1,2),(2,4) (1,2),(3,6)

(2,3) (2,3),(1,2) (2,3),(2,4) (2,3),(3,6)

(3,4) (3,4),(1,2) (3,4),(2,4) (3,4),(3,6)

(4,5) (4,5),(1,2) (4,5),(2,4) (4,5),(3,6)

(5,6) (5,6),(1,2) (5,6),(2,4)


(5,6),(3,6)
R2xR1:
(1,2) (2,4) (3,6)

(1,2) (1,2),(1,2) (1,2),(2,4) (1,2),(3,6)

(2,3) (2,3),(1,2) (2,3),(2,4) (2,3),(3,6)

(3,4) (3,4),(1,2) (3,4),(2,4) (3,4),(3,6)

(4,5) (4,5),(1,2) (4,5),(2,4) (4,5),(3,6)

(5,6) (5,6),(1,2) (5,6),(2,4)


(5,6),(3,6)

Recomandari utile:
 Ca sa putem defini o relatie R o putem face cu ajutorul proprietatii sau
prin indicarea elementelor care sunt in relatie unul cu celalalt, grafic
sau prin enumerarea perechilor.
Algebra relationala si Bazele de Date Relaționale BDR

Structura
Definitie:

O baza de date relationala (BDR) reprezinta un ansamblu de relatii,


princaresereprezintaatâtdatelecâtsilegaturiledintredate.In cadrul BDR, datele sunt
organizate sub forma unor tablouri bidimensionale (tabele) de date, numite relatii.

Prezentarea structurii
relationale a datelor
pentru BDR impune
definirea notiunilor de:

 domeniu
 relatie,
 atribut si
 schema a unei relatii.

Operatorii modelului relational:

 Modelul relational ofera doua colectii de operatori pe relatii si anume:

1. Algebra Relationala (AR);


2. calculul relational.

 La rândul sau, calculul relational este de doua tipuri:

1. calcul relational orientat pe tuplu;


2. calcul relational orientat pe domeniu.
Ne limitam, în cele ce urmeaza, la elemente de algebra relationala.

Unele operatii ale AR pot fi definite prin intermediul altor operatii. În acest sens,
putem vorbi de:
1. operatii de baza, precum: reuniunea, diferenta, produsul cartezian
etc.
2. operatii derivate, ca: intersectia, diviziunea etc.

Codd a introdus asa numita AR standard, constituita din 6 operatii de


baza:

reuniunea, diferenta, produsul cartezian, proiectia, selectia si jonctiunea precum


si din doua operatii derivate: intersectia si diviziunea

Continut:
Principalele operatii ale AR:

1. Reuniunea
Reprezinta o operatie a AR definita pe doua relatii: R1 si R2 ambele cu o
aceeasi schema, operatie care consta din construirea unei noi relatii R3, cu
schema identica cu R1 si R2 si având drept extensie tuplurile din R1 si R2 luate
impreuna o singura data.
Notatia uzuala pentru reuniune este: R3=R1 U R2
Exemplu:

2. Diferenta. Reprezinta operatie din AR definita pe doua relatii: R1 si R2,


ambele cu o aceeasi schemâ, operatia constând din construirea unei noi
relatii R3, cu schema identica cu a operanzilor si cu extensia formata din
acele tupluri ale relatiei R1 care nu se regasesc si în relatia R2.
Notatia uzuala pentru operatia de diferenta a doua relatii este:
R3=R1-R2

Exemplu:
3. Produs cartezian

Notatia uzuala pentru desemnarea operatiei este: R3=R1xR2.

Exemplu:

4. Proiectia
Notatia uzuala pentru operatia de proiectie este:
ΠAi,Aj,…,Am(R)

Exemplu:
5. Selectia
Notatia folosita in mod uzual pentru desemnarea operatiei de selectie este
urmatoarea:
Σ(conditie)R

Exemplu:

6. Jonctiunea (Joinul)
Notatiiile uzuale pentru desemnarea operatiei de jonctiune sunt:

Exemplu:
Sarcina 2:/Anexa 2/

Relaţii. Forme de prezentare, proprietăţi

Realizarea sarcinii. Var 15.

Angajati

Nr. cod Nume Prenume IDF Nume reprezentant

4 Argint Cornel 01 Marinescu Ion


7 Bidian Dan 02 Marinescu Ion
8 Calin Marius 03 Marinescu Ion
10 Coca Eugen 04 Marinescu Ion
14 Darie Emanuel 05 Marinescu Ion
12 Duma Denisa 06 Marinescu Ion
19 Leonidas Aurora 07 Marinescu Ion
3 Lunca Amelia 08 Marinescu Ion

U
angajati(gen masculin) angajati(gen femenin)
Nr. Nume Prenume IDF Nume Nr. cod Nume Prenume IDF Nume
cod colaborator Inginer colaborator
12 Duma Denisa 06
4 Argint Cornel 01
Marinescu Marinescu
Ion Ion
19 Leonida Aurora 07
7 Bidian Dan 02
Marinescu Marinescu
Ion Ion
3 Lunca Amelia 08
8 Calin Marius 03
Marinescu Marinescu
Ion Ion
10 Coca Eugen 04
Marinescu
Ion
14 Darie Emanuel 05
Marinescu
Ion
2. Diferenta. Reprezinta operatie din AR definita pe doua relatii: R1 si R2, ambele
cu o aceeasi schemâ, operatia constând din construirea unei noi relatii R3, cu
schema identica cu a operanzilor si cu extensia formata din acele tupluri ale relatiei
R1 care nu se regasesc si în relatia R2.
Notatia uzuala pentru operatia de diferenta a doua relatii este: R3=R1-R2

Inginer(gen masculin)
Nr. cod Nume Prenume IDF Nume
Angajat colaborator
4 Argint Cornel 01 Marinescu
Ion
7 Bidian Dan 02 Marinescu
Ion
8 Calin Marius 03 Marinescu
Ion
10 Coca Eugen 04 Marinescu
Ion
14 Darie Emanuel 05 Marinescu
Ion

Nr. cod Nume Prenume IDF Nume


Angajat colaborator
4 Argint Cornel 01 Marinescu
Ion
7 Bidian Dan 02 Marinescu
Ion
8 Calin Marius 03 Marinescu
Ion
10 Coca Eugen 04 Marinescu
Ion
14 Darie Emanuel 05 Marinescu
Ion
12 Duma Denisa 06 Marinescu
Ion
19 Leonida Aurora 07 Marinescu Ingineri
Ion Ingineri(gen femenin)
3 Lunca Amelia 08 Marinescu
Nr. cod Nume Prenume IDF Nume
Ion Angajat colaborator
12 Duma Denisa 06
Marinescu
Ion
19 Leonida Aurora 07
Marinescu
Ion
3 Lunca Amelia 08
Marinescu
Ion
3. Produs cartezian. Reprezinta o operatie a AR definita pe doua relatii: R1 si
R2, operatie care constă din construirea unei noi relatii R3, a cărei schema se
obține prin concatenarea schemelor relațiilor R1 si R2 și a cărei extensie cuprinde
toate combinațiile tuplurilor din R1 cu cele din R2.
Notația uzuala pentru desemnarea operației este: R3=R1xR2.

Nume Reprezentant
Nume Prenume IDFurnizor Nume colaborator
Argint Cornel 04 Marinescu Ion
Bidian Dan 04 Marinescu Ion
Calin Marius 04 Marinescu Ion
Coca Eugen 04 Marinescu Ion
Darie Emanuel 04 Marinescu Ion
Duma Denisa 04 Marinescu Ion
Leonida Aurora 04 Marinescu Ion
Lunca Amelia 04 Marinescu Ion
Argint Cornel 05 Marinescu Ion
Bidian Dan 05 Marinescu Ion
Calin Marius 05 Marinescu Ion
Coca Eugen 05 Marinescu Ion
Darie Emanuel 05 Marinescu Ion
Duma Denisa 05 Marinescu Ion
Leonida Aurora 05 Marinescu Ion
Lunca Amelia 05 Marinescu Ion
x

Nume_Prenume Inginer IDReprezentant

Nume Prenume IDF Nume


Argint Cornel colaborator
Bidian Dan 04 Marinescu Ion
Calin Marius
Coca Eugen 05 Marinescu Ion
Darie Emanuel
Duma Denisa
Leonida Aurora
Lunca Amelia

Figura 1.3: Nume reprezentant reprezintă produsul cartezian dintre relația


Nume_PrenumeInginer si IDReprezentant
4. Proiectia. Reprezinta o operatie din AR definita asupra unei relatii R,
operatie care consta din construirea unei noi relatii P, în care se regasesc unele
atribute din R, înseamna efectuarea unor taieturi verticale asupra lui R, care pot
avea ca efect aparitia unor tupluri duplicate ce se cer a fi eliminate.
Prin operatia de proiectie se trece de la o relatie de grad n la o relatie de grad p,
mai mic decât cel initial (p < n) ceea ce explica si numele de proiectie atribuit
operatiei.
Notatia uzuala pentru operatia de proiectie este:
ΠAi,Aj,…,Am(R)

colaborator

Nume
colaborator
Marinescu Ion

Nume colaborator

Lista membrilor AF- persoane fizice


Nr. cod Nume Prenume IDF Nume
Inginer colaborator
4 Argint Cornel 01 Marinescu Ion
7 Bidian Dan 02 Marinescu Ion
8 Calin Marius 03 Marinescu Ion
10 Coca Eugen 04 Marinescu Ion
14 Darie Emanuel 05 Marinescu Ion
12 Duma Denisa 06 Marinescu Ion
19 Leonida Aurora 07 Marinescu Ion
3 Lunca Amelia 08 Marinescu Ion

Figura 1.4: Proiecția relației Lista membrilor AF- persoane fizice


pe atributul Numecolaborator
5. Selecția. Reprezintă o operație din AR definită asupra unei relatii R,
operație care constă din construierea unei relatii S, a cărei schema este identica cu
cea a relației R și a cărei extensie este constituită din acele tupluri din R care
satisfac o conditie menționată explicit în cadrul operației. Întrucât cel mai
adesea, nu toate tuplurile din R satisfac, aceasta condiție, selecția înseamnă
efectuarea unor tăieturi orizontale asupra relației R, adică eliminarea de
tupluri.
Conditia precizata în cadrul operatiei de selectie este în general de forma:

unde: "operator de comparatie" poate fi: <, <=, >=, > sau <>.
Notatia folosita in mod uzual pentru desemnarea operatiei de selectie este
urmatoarea:
Σ(conditie)R

Colaborator Popescu Razvan


Nr. cod Nume Prenume IDF Nume
inginer colaborator
8 Calin Marius 03 Marinescu
Ion

colaborator
Marinescu Ion
Lista membrilor AF- persoane fizice
Nr. cod Nume Prenume IDF Nume
Inginer colaborator
4 Argint Cornel 01 Marinescu Ion
7 Bidian Dan 02 Marinescu Ion
8 Calin Marius 03 Marinescu Ion
10 Coca Eugen 04 Marinescu Ion
14 Darie Emanuel 05 Marinescu Ion
12 Duma Denisa 06 Marinescu Ion
19 Leonida Aurora 07 Marinescu Ion
3 Lunca Amelia 08 Marinescu Ion

Figura 1.5: Selecție efectuată asupra relației Lista membrilor AF- persoane
fizicedupă criteriul colaborator Popescu Razvan
6. Jonctiunea (Joinul). Reprezinta o operatie din AR definita pe doua relatii:
R1 si R2, operatie care consta din construirea unei noi relatii R3, prin
concatenarea unor tupluri din R1 cu tupluri din R2. Se concateneaza acele tupluri
din R1 si R2 care satisfac o anumita conditie, specificata explicit în cadrul
operatiei. Extensia relatiei R3 va contine deci combinatiile acelor tupluri care
satisfac conditia de concatenare.
Notatiiile uzuale pentru desemnarea operatiei de jonctiune sunt:

Figura 1.6: colaboator grafică a JOINULUI.

În functie de operatorul de comparație din cadrul condiției de compunere, există


mai multe variante ale operatorului JOIN. Cel mai important tip de join, în sensul
celei mai frecvente utilizări este equijoinul.
7. Equijoinul reprezintă joncțiunea dirijată de o condiție de forma:
Operația de joncțiune se poate exprima cu ajutorul operațiilor de produs
cartezian și selecție, rezultatul unui join fiind același cu rezultatul unei selecții
operate asupra unui produs cartezian, adica:
JOIN (R1,R2, conditie) = Σ(conditie) (PRODUS(R1,R2), conditie)
Produsul cartezian reprezinta o operație laborioasa și foarte costisitoare,
ceea ce face ca în locul produsului să fie utilizat joinul ori de câte ori acest lucru
este posibil. Cu toate că apare drept o operație derivată, joinul este prezentat de
obicei drept o operație de bază din AR, dată fiind importanța sa în cadrul
sistemelor relaționale, în special la construirea relațiilor virtuale.

Date despre tip membru


Nume Prenume Tip Tip Grad.
membru membru
Calin Marius Fondator Fondator I
Coca Eugen Onorific Onorific II
Darie Emanuel Simplu Simplu III

Tip membru Tip membru

Tip membru_Inginer Grad.Inginer


Nume Prenume Tip
membru
Calin Marius Fondator
Coca Eugen Onorific
Darie Emanuel Simplu
Tip membru Grad.
Fondator I
Onorific II
Simplu III

Figura 1.7: Operația de equijoin a relațiilor Tip membru_Inginerși


Grad.Inginer
8.Jonctiunea naturală. În cazul equijoinului, schema relatiei contine toate
atributele celor doi operanzi (fig.3.10.) În toate tuplurile relatiei rezultat vor exista
de aceea cel putin doua valori egale. In sensul eliminarii acestei redundante s-a
introdus jonctiunea naturala, ca operatie definita pe doua relatii: R1 si R2, prin care
este construita o noua relatie R3, a carei schema este obtinuta prin reuniunea
atributelor din relatiile R1 si R2 (atributele cu acelasi nume se iau o singura data) si
a carei extensie contine tuplurile obtinute prin concatenarea tuplurilor din R1 cu
tuplurile din R2 care prezinta aceleasi valori pentru atributele cu acelasi nume.
Notația uzuala pentru joncțiunea naturală este:

Reprezentarea grafica a acestei operatii este prezentata mai jos.

Date despre tip membru


Nume Prenume Tip Tip Grad.
membru membru
Calin Marius Fondator Fondator I
Coca Eugen Onorific Onorific II
Darie Emanuel Simplu Simplu III

Tip membru Tip membru

Tip membru Grad membru


Nume Prenume Tip Tip membru Grad.
Simplu III
membru
Calin Marius Fondator
Onorific II
Coca Eugen Onorific
Darie Emanuel Simplu Fondator I

Figura 1.8: Operația de joncțiune natural dintre relațiile Tip membru si


Grad membru

Nr. cod Nume Prenume IDF Nume


Inginer 9.Intersectia. Reprezinta o operatie a
colaborator
4 Argint Cornel 01 Marinescu AR definita pe doua relatii: R1 si R2
Ion ambele cu aceeasi schema, operatie care
7 Bidian Dan 02 Marinescu consta din construirea unei noi relatii R3, cu
Ion schema identica cu a operanzilor si cu
8 Calin Marius 03 Marinescu extensia formata din tuplurile comune lui R1
Ion si R2.
Notatiile uzuale folosite pentru
desemnarea operatiei de intersectie sunt:

Reprezentant3

Nr. cod Nume Prenume IDF Nume


Inginer colaborator
8 Calin Marius 03 Marinescu Ion

Nr. cod Nume Prenume IDF Nume


Angajat Furnizor
Ո 8 Calin Marius 03 Popescu
colaborator1 Razvan
colaborator 2 10 Coca Eugen 04 Neamt
Liviu
14 Darie Emanuel 05 Sotir Ada
12 Duma Denisa 06 Radu Laura
Recomandari utile:

o Cunoasterea OMR definesc operatiile care se pot efectua asupra relatiilor,


ne ajuta in realizarea functiilor de prelucrare asupra bazei de date,
respectiv consultarea, inserarea, modificarea si stergerea datelor.
o Pentru a putea Prezenta o structura relationala a datelor pentru BDR
impune definirea notiunilor de: domeniu, relatie, atribut si schema a unei
relatii.
o Am insusit ca intr-o relatie, tuplurile trebuie sa fie distincte (nu se admit
duplicari ale tuplurilor) .
o O reprezentare comoda a relatiei este tabelul bidimensional
o În cadrul modelului relational ne intereseaza decat relatiile finite,
chiar daca în construirea relatiilor se admit domenii infinite.

o O relatie se reprezinta o tabela care contine date, fiecare coloana avand


asociat un anumit tip de date, dat de domeniul din care provine.

Concluzii

În această lucrre de laborator am studiat relaţiile, formele de reprezentare şi


proprietăţile. La fel am făcut cunoştinţă cu operaţiile ce pot fi aplicate unor relaţii.
Astfel putem conclude că relaţiile ne vin în ajutor pentru definirea unor noţiuni ce
au legătură logică între ele, astfel acele operaţii şi proprietăţi sunt accesibile în
orice domeniu.

Вам также может понравиться