Relacioni model podataka - University of Novi Sad · 2014-05-15 · Ciljevi •Uvođenje jasne...
Transcript of Relacioni model podataka - University of Novi Sad · 2014-05-15 · Ciljevi •Uvođenje jasne...
Ciljevi
• Uvođenje jasne granice između logičkih i fizičkih aspekata baze podataka – nezavisnost podataka
– n-arna relacija
– šema relacije
– šema baze podataka
• Strukturalna jednostavnost
– dvodimenzinalna tabela
• Deklarativni jezik za defnisanje i korišćenje baze podataka
– SQL
Strukturalna komponenta RMP
• Skup obeležja realnog sistema ili njegovog dela koji je predmet posmatranja – univerzalni skup obeležja
– U = {Ai | i = 1, ..., m}
• Dom: U → D, (∀ Ai ∈ U)(Dom(Ai) ∈ D) – svakom obeležju iz univerzalnog skupa obeležja pridružuje se domen
Strukturalna komponenta RMP • R – vrednost (torka)
– R ⊆ U, R = {Ai | i = 1, ..., k} – t[R], t - funkcija koja preslikava svako obeležje iz R u
odgovarajuću vrednost • t: R → Dom, Dom = 𝑑𝑜𝑚(𝐴𝑖)𝑘
𝑖=1 • t(Ai) ∈ dom(Ai, i = 1, ..., k) • t(Ai) = ai, ai ∈ dom(Ai)
– {(Ai, ai), Ai ∈ R}
• Restrikcija R-vrednosti – X ⊆ R, t[R] – X-vrednost t[X], u kojoj je svakom obeležju A iz X
pridružena ista vrednost kao i u R-vrednosti t[R] – t[X] = {(Ai, ai) | Ai ∈ X} – Realan entitet ili poveznik
Strukturalna komponenta RMP
• Relacija, r(R) – konačan skup torki
– predstavlja se dvodimenzionalnom tabelom
– Skup realnih entiteta ili poveznika
– SAT(R) – skup svih relacija nad skupom obeležja R
• Projekcija relacije na skup obeležja – X ⊆ R, r – relacija nad R
– projekcija (restrikcija) relacije r na skup obeležja X je relacija r[X], definisana kao r[X] = {t[X] | t ∈ r(R)}
– 𝜋X(r(R)))
Strukturalna komponenta RMP
• Šema relacije
– imenovana dvojka N(R, C)
• N – naziv šeme relacije
• R – skup obeležja šeme relacije, R ⊆ U
• C – skup ograničenja
• Pojava nad šemom relacije
– relacija r(R) koja zadovoljava sva ograničenja iz skupa C šeme relacije N(R, C) je pojava nad tom šemom relacije
Strukturalna komponenta RMP
• Ključ šeme relacije
– obeležje ili skup obeležja koji jedinstveno određuju svaku torku u relaciji nad zadatom šemom relacije
– skup obeležja K, K ⊆ R, je ključ šeme relacije N(R, C), ako za svaku pojavu nad šemom relacije r važe sledeća dva uslova:
• (∀ u, v ∈ r) u[K]=v[K] ⇒ u=v (JEDINSTVENOST)
• (∀ X, X ⊂ K) ne važi prvi uslov (MINIMALNOST)
Strukturalna komponenta RMP
• Šema baze podataka
– imenovana dvojka N(S, I)
• N – naziv šeme baze podataka
• S – skup šema relacija
• I – skup međurelacionih ograničenja – međurelaciona ograničenja prikazuju odnose između relacija
– referencijalni integritet
Strukturalna komponenta RMP
• Pojava nad šemom baze podataka
– pojava nad skupom šema relacija S = {(Ri, Ci) | i = 1, ..., n} je funkcija koja preslikava svaku šemu relacije (Ri, Si) ∈ S u pojavu nad šemom relacije (Ri, Si)
Integritetna komponenta RMP
• Ključ
• Funkcionalna zavisnost
• Zavisnost sadržavanja
• Referencijalni integritet
Integritetna komponenta RMP
• Zavisnost sadržavanja
– domen kompatibilni skupovi (dom(X) ⊆ dom(Y))
– r je relacija nad U, A1, ..., An i B1, ..., Bn dva niza različitih obeležja iz U; relacija r zadovoljava zavisnost sadržavanja [A1, ..., An] ⊆ [B1, ..., Bn], ako važi da za svaku torku t iz relacije r postoji torka u iz relacije r, tako da su t[Ai]=u[Bi], za svako i∈{1, ..., n}
– neka su r1 i r2 relacije nad različitim šemama relacija N1(R1, C1) i N2(R2, C2), A1, ..., An ∈ R1 i B1, ..., Bn ∈ R2; zavisnost sadržavanja N1[A1, ..., An] ⊆ N2[B1, ..., Bn] je zadovoljena, ako važi da za svaku torku t1 iz relacije r1, postoji torka t2 iz relacije r2, tako da su t1[Ak]=t2[Bk], za svako k∈{1, ..., n}
Integritetna komponenta RMP
• Referencijalni integritet
– osnovno i najčešće korišćeno međurelaciono ograničenje
– međurelaciona zavisnost sadržavanja N1[A1, ..., An] ⊆ N2[B1, ..., Bn] kod koje je {B1, ..., Bn} primarni ključ relacije sa nazivom N2
– ako važi i zavisnost sadržavanja N2[B1, ..., Bn] ⊆ N1[A1, ..., An], tada se ona naziva inverzni referencijalni integritet
Integritetna komponenta RMP
• Funkcionalna zavisnost
– f: X → Y
• X – leva strana funkcionalne zavisnosti, lhs(f)
• Y – desna strana funkcionalne zavisnosti, rhs(f)
– X, Y su skupovi obeležja
– r – relacija nad skupom obeležja R, X, Y ⊆ R; skup torki relacije r zadovoljava funkcionalnu zavisnost X → Y ako za svake dve torke u i v važi u[X]=v[X] ⇒ u[Y]=v[Y]
Funkcionalne zavisnosti
• F – skup funkcionalnih zavisnosti
• F logički implicira X → Y (F ╞ X → Y) ako svaka relacija nad U, koja zadovoljava sve funkcionalne zavisnosti iz F, zadovoljava i X → Y
• Skup logičkih posledica skupa F
• Trivijalna funkcionalna zavisnost
– X → Y je trivijalna akko ∀ r ∈ SAT(U) važi X → Y
• Teorema: X → Y je trivijalna akko Y ⊆ X
Armstrongove aksiome
• Skup formalnih pravila putem kojih se mogu izvesti sve logičke posledice nekog skupa funkcionalnih zavisnosti
– Neredundantan
– Neprotivrečan
– Kompletan
Armstrongove aksiome
• F definisan nad U
• X, Y, Z, W ⊆ U
• A1 (refleksivnost): – Y ⊆ X ⇒ X → Y (trivijalna f.z.)
• A2 (proširenje): – X → Y i Z ⊆ W ⇒ XW → YZ
• A3 (pseudotranzitivnost): – X → Y i YW → Z ⇒ XW → Z
– W = {} - tranzitivnost
Armstrongove aksiome
• A4 (unija):
– X → Y1 i X → Y2 ⇒ X → Y1 Y2
• A5 (dekompozicija):
– X → Y i Z ⊆ Y ⇒ X → Z
• Primenom pravila A1-A5 na skup F, dobija se skup F+ - ZATVARANJE SKUPA FUNKCIONALNIH ZAVISNOSTI
Funkcionalne zavisnosti
• Nakon svakog ažuriranja baze podataka potrebno je proveriti da li su zadovoljene sve funkcionalne zavisnosti iz skupa F
• F može sadržati veliki broj logički suvišnih funkcionalnih zavisnosti
• Minimalan skup koji je podskup skupa F, a iz kog se mogu izvesti sve funkcionalne zavisnosti iz F – zadatak! – Redukovan skup funkcionalnih zavisnosti
– Neredundantno pokrivanje skupa funkcionalnih zavisnosti
Zatvaranje skupa obeležja
• Zatvaranje skupa obeležja X ⊆ U s obzirom na skup f.z. F, definisan u U, je skup XF
+ definisan na sledeći način:
– XF+ = {A | A ∈ U i X → A ∈ F+} – skup svih obeležja
koja funkcionalno zavise od X
• Algoritam...
Zatvaranje skupa obeležja - algoritam
• Ulaz: skup funkcionalnih zavisnosti F, X ⊆ U
• Izlaz: XF+ zatvaranje skupa obeležja
X+ ← X
Q ← 0
dok Q = X+ radi
Q ← X+
∀ f ∈ F, ako je lhs(f) ⊆ X+
X+ ← X+ ∪ rhs(f)
kraj ako
kraj dok
XF+ ← Q
Zatvaranje skupa obeležja
• Utvrđivanje ekvivalentnosti dva skupa f.z.
– F ≡ G ⇔ F ╞ G i G ╞ F
– (∀ f ∈ F)rhs(f) ⊆ (lhs(f)) + G
– (∀ g ∈ G) rhs(g) ⊆ (lhs(g)) + F
• Redukcija levih strana f.z.
– (X \ {A}) → B ∈ F ⇔ B ∈ (X \ {A})+F
• Traženje neredundantnog pokrivanja skupa f.z.
– f ∈ (F \ {f})+, f: X → B ⇔ B ∈ X+F\{f}
Redukcija
• Funkcionalna zavisnost X → A ∈ F+ je REDUKOVANA ili IMA REDUKOVANU LEVU STRANU s obzirom na F, ako važi:
– (∀ Y ⊂ X) (Y → A ∈ F+)
• Skup funkcionalnih zavisnosti F je REDUKOVAN ili IMA REDUKOVANE LEVE STRANE, ako je svaka f.z. f: X → A iz F redukovana
• Algoritam...
Redukcija levih strana - algoritam • Ulaz:
– zadati skup funkcionalnih zavisnosti F – svaka fz je desno redukovana (ima samo jedno obeležje sa desne
strane)
• Izlaz: – skup funkcionalnih zavisnosti G sa redukovanim levim stranama – G je ekvivalentno sa F
G ← 0 radi ∀ f : X → B ∈ F radi ∀ A ∈ X ako je X\{A} → B ∈ F+ tada X ← X\{A} kraj radi G ← G ∪ {X → B} kraj radi
• U proveri X\{A} → B ∈ F+ koriste se sve fz iz F+, pa i X → B • Rezultat redukcije zavisi od redosleda izbora elemenata sa leve
strane izabrane funkcionalne zavisnosti
Neredundantno pokrivanje • Za ekvivalentne skupove kažemo da pokrivaju
jedan drugog
• POKRIVANJE (pokrivač) skupa f.z. F je svaki skup f.z. G koji ima isto zatvaranje kao F – F+ = G+
• Skup G je NEREDUNDANTNO POKRIVANJE skupa f.z. F, ako ne sadrži pravi podskup koji takođe predstavlja pokrivanje skupa F
• Funkcionalna zavisnost f: X → Y je REDUNDANTNA u F, ako se može izvesti iz F \ {f} – f ∈ (F \ {f})+
• Algoritam...
Neredundantno pokrivanje - algoritam
• Ulaz: F = {X → A | X ⊆ U i A ∈ U} (desne strane su jednočlani skupovi)
• Izlaz: G – neredundantno pokrivanje skupa F G ← F
radi ∀ f ∈ G
ako je f ∈ (G \ {f})+ tada
G ← G \ {f}
kraj ako
kraj radi
• Prilikom provere da li je neka fz suvišna, ona sama se ne posmatra
Kanoničko pokrivanje
• G, F – skupovi funkcionalnih zavisnosti
• G je kanoničko pokrivanje skupa F ako:
– G+ = F+
– G je levo redukovan (sadrži samo redukovane fz)
– G je neredundantan
– Desna strana svake fz u G sadrži samo jedno obeležje
Projekcija skupa funkcionalnih zavisnosti
• Projekcija (restrikcija) skupa funkcionalnih zavisnosti F definisanih u U na skup obeležja W⊆U, u oznaci F|W ili 𝜋W(F), je:
F|W = {X→Y | (X→Y ∈ F+) ˄ (XY ⊆ W)}
Algoritam za izračunavanje ključa šeme relacije
• Skup obeležja X⊆R je ključ šeme relacije (R, F) ako važi: – X→R ∈ F+
– (∀ Y ⊂ X)(Y →R ∈ F+)
• Ulaz: (R, F)
• Izlaz: X (jedan ključ šeme relacije (R, F)) X←R
radi (∀A∈X)
ako je A∈(X\{A})+ tada
X←X\{A}
kraj ako
kraj radi
Algoritam za izračunavanje skupa ključeva šeme relacije
• Ulaz: (R, F)
• Izlaz: K – skup ključeva šeme relacije (R, F) K ← 0
radi ∀ X ⊆ R
ako je R=XF+ tada
radi (∀A∈X)
ako je A∈(X\{A})+ tada
X←X\{A}
kraj ako
kraj radi
K ← K ∪ X
kraj ako
kraj radi
Anomalije ažuriranja
• Anomalije prilikom upisa, brisanja, modifikacije torki
• Integritet entiteta: – Jedinstvenost vrednosti ključa
• (∀X∈K)(∀ti,tj∈r)(ti[X]=tj[X] ⇒ ti=tj)
– Ni kompletan ključ ni bilo koje obeležje ključa ne sme imati nepoznatu ili nula vrednost nad šemom relacije • (∀X∈K)(∀A∈X)(∀t∈r)(t[A]=𝜔)
• Vrednost ključa se ne sme menjati prilikom ažuriranja
Anomalije ažuriranja
• Anomalija upisa
• Anomalija brisanja
• Anomalija modifikacije
• Kad postoji samo jedna šema relacije (univerzalna relacije), sigurno dolazi do redundanse podataka
Normalne forme
• Prva normalna forma
– Obeležje je elementarno (atomično) ako se ne može dekomponovati; njegov domen sadrži samo atomične elemente.
– Šema relacije je u 1NF ako su sva njenaobeležja elementarna.
– Šema baze podataka je u 1NF ako su sve njene šeme relacija u 1NF.
Normalne forme
• Druga normalna forma – Atribut A relacije r je potpuno funkcionalno zavisan od
atributa X relacije r, ako je funkcionalno zavisan od atributa X, a nije funkcionalno zavisan ni od jednog pravog podskupa atributa X. • X→A je potpuna, ako važi (∀Y⊂X)Y→A∈F+
– Šema relacije je u 2NF ako je u 1NF i ako je svako neprimarno obeležje skupa R u potpunoj funkcionalnoj zavisnoti od svakog ključa šeme relacije (R,F) • Neprimarno obeležje je ono koje nije kandidat za ključ
– Šema baze podataka je u 2NF, ako je svaka njena šema relacije u 2NF
Normalne forme
• Treća normalna forma
– Netrivijalna funkcionalna zavisnost X→A je tranzitivna ako važi X→Y∈F+, Y→A∈F+, Y→X∈F+
– Šema relacije je u 3NF ako je u 2NF a ako svi njeni neključni (neprimarni) atributi netranzitivno zavise od primarnog ključa.
– Šema baze podataka je u 3NF, ako je svaka njena šema relacije u 3NF.
Normalne forme
• Boyce-Codd normalna forma (BCNF)
– Šema relacije je u BCNF ako svaka netrivijalna funkcionalna zavisnost u F+ sadrži ključ šeme relacije (R,F).
– Šema baze podataka je u BCNF, ako je svaka njena šema relacije u BCNF.
Normalne forme - primeri BRI IMES PREZS BPI OZP NAP OZN PRN OCE
123 Ana Perić 5 P1 Baze podataka 1 N1 Marković 10
123 Ana Perić 5 P2 Analiza 1 N2 Ilić 9
456 Ivan Marić 8 P1 Baze podataka 1 N1 Marković 8
135 Maja Savić 10 P2 Analiza 1 N3 Antić 9
765 Marko Dakić 4 P3 Web dizajn N4 Pantić 10
456 Ivan Marić 8 P3 Web dizajn N4 Pantić 7
765 Marko Dakić 4 P1 Baze podataka 1 N1 Marković 6
U = {BRI, IMES, PREZS, BPI, OZP, NAP, OZN, PRN, OCE} F = {BRI → IMES+PREZS+BPI, OZP → NAP, NAP → OZP, OZN→ PRN+OZP+NAP, BRI+OZP → OCE+OZN} K = {BRI+OZN, BRI+OZP, BRI+NAP}
Normalne forme - primeri BRI SPR IME SEM SSMER NAZSMER IMERUK NAZPRED OCENA
123 P1 Ana 5 1 Računarske nauke
Sima Analiza 1 7
123 P2 Ana 5 1 Računarske nauke
Sima Baze podataka 8
123 P3 Ana 5 1 Računarske nauke
Sima Uvod u programiranje
8
345 P3 Ivan 7 1 Računarske nauke
Sima Uvod u programiranje
10
345 P1 Ivan 7 1 Računarske nauke
Sima Analiza 1 5
987 P2 Mila 4 2 Informacione tehnologije
Mika Baze podataka 8
987 P5 Mila 4 2 Informacione tehnologije
Mika Informacioni sistemi
9
987 P4 Mila 4 2 Informacione tehnologije
Mika Operativni sistemi
6
987 P1 Mila 4 2 Informacione tehnologije
Mika Analiza 1 7
• BRI jedinstveno određuje ime studenta, semestar i šifru i naziv smera koji student studira. • SPR jedinstveno određuje naziv predmeta. • SSMER jedinstveno određuje naziv smera i ime rukovodioca. • Jedan student iz jednog predmeta može da ima samo jednu ocenu.
Normalne forme - primeri
BRI SPR NAZPRED OCENA
123 P1 Analiza 1 7
123 P2 Baze podataka 8
123 P3 Uvod u programiranje 8
345 P3 Uvod u programiranje 10
345 P1 Analiza 1 5
987 P2 Baze podataka 8
987 P5 Informacioni sistemi 9
987 P4 Operativni sistemi 6
987 P1 Analiza 1 7
Normalne forme - primeri
Predmet_id Predmet_naziv Semestar Godina Profesor
IT1 Analiza 1 1 2012 Pap
IT1 Analiza 1 1 2013 Takači
IT2 Algebra 1 1 2012 Vojvodić
IT2 Algebra 1 1 2013 Šešelja
IT3 Programski jezici 2 2012 Ivanović
IT3 Programski jezici 2 2013 Ivanović
IT4 Baze podataka 1 3 2013 Racković
IT5 OOP 3 2013 Radovanović
IT6 Baze podataka 2 4 2013 Racković
• Predmet_id određuje Predmet_naziv, semestar • Predmet_id i godina određuju profesora
Normalne forme - primeri
Predmet_id Godina Profesor_id Profesor
IT1 2012 P1 Pap
IT1 2013 P2 Takači IT2 2012 P3 Vojvodić
IT2 2013 P4 Šešelja
IT3 2012 P5 Ivanović
IT3 2013 P5 Ivanović
IT4 2013 P6 Racković
IT5 2013 P7 Radovanović
IT6 2013 P6 Racković
• Šeme relacija:
– A({A1, A2}, {A1→A2})
– B({B1, B2}, {B1→B2})
– X({A1, B1, X1}, {A1+B1→X1})
– C({C1, C2, B1}, {C1→C2, C1→B1})
– Y({A1, B1, C1, Y1}, {A1+B1+C1→Y1, C1→B1})
• Šeme relacija:
– A({A1, A2}, {A1})
– B({B1, B2}, {B1})
– X({A1, B1, X1}, {A1+B1})
– C({C1, C2, B1}, {C1})
– Y({A1, B1, C1, Y1}, {A1+B1+C1}) da li je ključ dobar?
• Fukcionalne zavisnosti:
– A1→A2
– B1→B2
– A1+B1→X1
– C1→C2, C1→B1
– A1+B1+C1→Y1
• SP - šifra predmeta
• N- naziv predmeta
• SN - šifra nastavnika
• IP – ime nastavnika
• BI – broj indeksa
• IS – ime studenta
• BC – broj časova
• SE - semestar
• Šeme relacija:
– Predmet({SP, N}, {SP→N})
– Nastavnik({SN, IP}, {SN→IP})
– Predaje({BC, SP, SN}, {SP+SN→BC})
– Student({BI, IS, SN}, {BI→IS, BI→SN})
– Sluša({SP, SN, BI, SE}, {SP+SN+BI→SE, BI→SN})
SP N
P1 Baze podataka 1
P2 Informacioni sistemi 1
P3 Operativni sistemi 1
SN IP
N1 Ana
N2 Mirko
N3 Sava
SP SN
P1 N1
P2 N1
P2 N3
BI IME SN
S1 Tanja N1
S2 Marko N1
S3 Dunja N2
BI SN SP SE
S1 N1 P1 3
S1 N3 P2 5
S2 N3 P2 5
Nastavnik Predmet
Student Predaje
Sluša
Ali je narušena funkcionalna zavisnost BI→SN!
• Šema relacije • Sluša({SP, SN, BI, SE}, {SP+SN+BI→SE, BI→SN})
nije u 2NF • ključ: SP+BI
• SP+BI→SN nije potpuna, jer važi i BI→SN
• Prilikom prevođenja bi trebalo preimenovati šifru nastavnika (SN), koja kao strani ključ prelazi u šemu relacije Student, jerje značenje tog tipa poveznika mentorstvo (koji nastavnik je mentor kom studentu)
– Student({BI, IS, SMentora}, {BI→IS, BI→SMentora}) • SMentora je preimenovano obeležje
– Sluša({SP, SN, BI, SE}, {SP+SN+BI→SE}) • Ovde je ključ SP+SN+BI
Metoda dekompozicije
• Jedna od metoda normalizacije
• Rastavljanje šeme univerzalne relacije do skupa šema relacija, koje su sve u BCNF
• Ne garantuje se očuvanje polaznog skupa funkcionalnih zavisnosti (neke f.z. Iz polaznog skupa mogu biti izgubljene)
• (U,F)
X→Y
(XY, F|XY) (R\Y, F|R\Y)
Metoda dekompozicije
• Izbor funkcionalne zavisnosti:
– Netrivijalna f.z. koja nije posledica ključa
• P3: Y→A, (A⊆Y) ˄ (R⊆Y+) – ovaj uslov obezbeđuje dolazak u BCNF
– Strožiji uslov, koji garantuje da se pri dekompoziciji neće izgubiti neka f.z. ali ne garantuje dolazak u BCNF
• P1: Y→A, (A⊆Y) ˄ (R⊆Y+) ˄ (F+=(F|R\A∪F|YA)+)
• P2: Y→A, (A⊆Y) ˄ (AY⊂R) ˄ (F+=(F|R\A∪F|YA)+)
Metoda dekompozicije
• Izbor funkcionalne zavisnosti po kojoj se vrši dekompozicija – Ne treba dekomponovati na osnovu trivijalne f.z.
– Birati, ako je moguće, one f.z. koje na levoj strani ne sadrže ključ šeme relacije
– Birati, ako je moguće, one f.z. koje sa desne strane imaju obeležje koje se više nigde ne pojavljuje
• Da se ne bi nepotrebno gubile funkcionalne zavisnosti, dekompozicija se vrši prvo po pravilu P1, pa po P2, pa po P3
Metoda sinteze
• Jedna od metoda normalizacije • Šema univerzalne relacije (U,F)
– F je skup funkcionalnih zavisnosti, gde sve funkcionalne zavisnosti imaju jednočlane skupove obeležja sa desne strane
• Rezultat metode sinteze je skup šema relacija: – S={(Ri, Ki)|i=1,...,n}, Ri⊆U, Ki – sintetizovani ključevi – U= 𝑅𝑖
𝑛𝑖=1 - Skup šema relacija S sadrži kompletnu
informaciju o skupu obeležja U – F≡{X→Ri|X∈Ki ˄ ((Ri, Ki) ∈ S)} - Skup šema relacija S sadrži
kompletnu informaciju o skupu funkcionalnih zavisnosti F – (Ri, Ki)∈S je najmanje u 3NF – Ne postoji skup šema relacija T sa manjim brojem šema
relacija nego S, a da zadovoljava prethodna tri uslova
Metoda sinteze
• Koraci algoritma: 1. Redukcija skupa f.z. 2. Nalaženje neredundantnog pokrivača
• Polazni skup f.z. se prevodi u kanonički pokrivač H
3. Particija skupa f.z. na disjunktne podskupove f.z. sa jednakim levim stranama
• Svaki podskup bi mogao generisati jednu šemu relacije, ali moguće je da još uvek nije zadovoljen uslov minimalnosti
4. Izdvajanje ekvivalentnih levih strana • Isto zatvaranje levih strana (npr. X i Y), formira se skup J u kom se nalaze zavisnosti X→Y i
Y→X (nove f.z. koje jesu posledica skupa H, ali nisu morale postojati u H) • Zbog toga neke od postojećih f.z. mogu postati tranzitivne (suvišne) • Obezbeđuje se minimalnost skupa šema relacija
5. Pronalaženje tranzitivnih f.z. • Eliminisanje f.z. koje su posledica uvođenja f.z. X→Y i Y→X
6. Rekonstrukcija grupa • Uz eliminisanje tranzitivnih f.z. • Uključuju se f.z. X→Y i Y→X
7. Formiranje šema relacija • Skup obeležja f.z. proglašava se za skup obeležja šeme relacije • Skup levih strana f.z. postaje skup sintetizovanih ključeva posmatrane šeme relacije