Συναρτησιακές και Πλειότιµες Εξαρτήσεις

Σχετικά έγγραφα
Συναρτησιακές Εξαρτήσεις

Συναρτησιακές Εξαρτήσεις

Συναρτησιακές Εξαρτήσεις

Συναρτησιακές Εξαρτήσεις. Βάσεις εδοµένων Ευαγγελία Πιτουρά 1

Συναρτησιακές Εξαρτήσεις

Συναρτησιακές Εξαρτήσεις

Συναρτησιακές Εξαρτήσεις

Συναρτησιακές Εξαρτήσεις

Συναρτησιακές Εξαρτήσεις

Συναρτησιακές Εξαρτήσεις Σχεδιασμός Βάσεων Δεδομένων

Λογικός Σχεδιασμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Λογικός Σχεδιασμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Λογικός Σχεδιασμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Λογικός Σχεδιασμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Κανονικές Μορφές Σχεδιασµός Σχεσιακών Σχηµάτων

Λογικός Σχεδιασµός Σχεσιακών Σχηµάτων

Κανονικοποίηση Σχήµατος. Βάσεις εδοµένων Ευαγγελία Πιτουρά 1

Λογικός Σχεδιασμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

καλών σχεσιακών σχημάτων

Κανονικές Μορφές. Τι συμβαίνει με το (πρωτεύον) κλειδί και τις συναρτησιακές εξαρτήσεις; Παράδειγμα 1. Παράδειγμα 2

Κανονικές Μορφές. Συνενώσεις Άνευ Απωλειών. Προσοχή με τις τιμές null στην αποσύνθεση

Κανονικές Μορφές. Βάσεις Δεδομένων : Κανονικές Μορφές. ηλαδή, i = 1,.., n R i R. Σύντομη επανάληψη αποσύνθεσης.

Κανονικοποίηση Σχήµατος

Βάσεις εδοµένων. Συναρτησιακές Εξαρτήσεις (Functional Dependencies) Σχεδιασµός Βάσεων εδοµένων και. Κανονικοποίηση.

Σχεδιασµός Σχεσιακών Σχηµάτων

Σχεδιασµός Σχεσιακών Σχηµάτων

Κανονικοποίηση. Άτυπες Οδηγίες. Παράδειγµα. Αξιολόγηση Σχεσιακών Σχηµάτων Β. Περιττές Τιµές και Ανωµαλίες Ενηµέρωσης

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι

Κανονικές Μορφές. Αποσύνθεση (decomposition)

Copyright 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley, ΕλληνικήΈκδοση, ίαυλος

Λογικός Σχεδιασµός Σχεσιακών Σχηµάτων: Αποσύνθεση. Βάσεις εδοµένων Ευαγγελία Πιτουρά 1

Βάσεις Δεδομένων Συναρτησιακές Εξαρτήσεις (Functional Dependencies) Σχεδιασμός Βάσεων Δεδομένων και Κανονικοποίηση

καλών σχεσιακών σχημάτων

Συναρτησιακές Εξαρτήσεις 7ο Φροντιστήριο. Βάρσος Κωνσταντίνος

Συναρτησιακές Εξαρτήσεις 7ο Φροντιστήριο. Βάρσος Κωνσταντίνος

ΗΥ360 Αρχεία και Βάσεις Δεδομένων

Σχεδιασµός µιας Β. Ένας απλός τρόπος αναπαράστασης δεδοµένων: ένας διδιάστατος πίνακας που λέγεται σχέση Γνωρίσµατα

Κανονικοποίηση. Σημασιολογία Γνωρισμάτων. Άτυπες Οδηγίες. Παράδειγμα. Αξιολόγηση Σχεσιακών Σχημάτων ΒΔ. Περιττές Τιμές και Ανωμαλίες Ενημέρωσης

ΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων:. Πλεξουσάκης

Εισαγωγή. Σχεδιασµός µιας Β

Lecture 22: Functional Dependencies and Normalization

Βάσεις Δεδομένων : Λογικός Σχεδιασμός 1. καλών σχεσιακών σχημάτων. Λογικός Σχεδιασμός Σχεσιακών Σχημάτων. Γενικές Κατευθύνσεις.

Κανονικοποίηση. Παύλος Εφραιμίδης. Βάσεις Δεδομένων Κανονικοποίηση 1

Σχεδιασμός μιας εφαρμογής ΒΔ: Βήματα. 1. Συλλογή και Ανάλυση Απαιτήσεων(requirement analysis)

Διδάσκων: Παναγιώτης Ανδρέου

Κανονικές Μορφές 8ο Φροντιστήριο. Βάρσος Κωνσταντίνος

Κανονικοποίηση Σχήματος

Σχεσιακό Μοντέλο. Εισαγωγή. Βάσεις εδοµένων : Σχεσιακό Μοντέλο 1

Ένας απλός τρόπος αναπαράστασης δεδομένων: ένας διδιάστατος πίνακας που λέγεται σχέση Γνωρίσματα

Ένας απλός τρόπος αναπαράστασης δεδομένων: ένας διδιάστατος πίνακας που λέγεται σχέση Γνωρίσματα


ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι

Λογικός Σχεδιασμός Σχεσιακών Σχημάτων: Αποσύνθεση

Βάσεις Δεδομένων : Σχεσιακό Μοντέλο 1. Ένας απλός τρόπος αναπαράστασης δεδομένων: ένας διδιάστατος πίνακας που λέγεται σχέση.

Κανονικές Μορφές 8ο Φροντιστήριο. Βάρσος Κωνσταντίνος

Βάσεις εδοµένων Ευαγγελία Πιτουρά 2. Εννοιολογικός Σχεδιασµός Βάσεων Δεδοµένων (µε χρήση του Μοντέλου Οντοτήτων/Συσχετίσεων)

Σχεδιασμός μιας Β : Βήματα

ιδασκοντες: x R y x y Q x y Q = x z Q = x z y z Q := x + Q Τετάρτη 10 Οκτωβρίου 2012

Κεφάλαιο 8. ΣΧΕ ΙΑΣΜΟΣ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ ΚΑΙ ΚΑΝΟΝΙΚΟΠΟΙΗΣΗ (Normalization) Ι.Β Σχεδιασµός Σχεσιακών Β και Κανονικοποίηση Σελίδα 4.1

Σχεδιασµός µιας Β. Εισαγωγή. Μετατροπή σε σχεσιακό -> είσοδο σε ένα Σ Β. Εισαγωγή. Ιδέες Ο/Σ Σχέσεις Σχεσιακό Σ Β

Το Σχεσιακό Μοντέλο. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων

Μοντέλο Οντοτήτων-Συσχετίσεων

Μοντέλο Οντοτήτων-Συσχετίσεων

Βάσεις Δεδομένων Ευαγγελία Πιτουρά 2. Εννοιολογικός Σχεδιασμός Βάσεων εδομένων (με χρήση του Μοντέλου Οντοτήτων/Συσχετίσεων)


Σχεσιακός Λογισµός. Σχεσιακός Λογισµός Πλειάδων. σχεσιακά πλήρης γλώσσα

Ορισµοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL

Το Σχεσιακό Μοντέλο. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

ιµελής Σχέση ιατεταγµένο ζεύγος (α, β): ύο αντικείµενα (όχι κατ ανάγκη διαφορετικά) σε καθορισµένη σειρά. Γενίκευση: διατεταγµένη τριάδα (α, β, γ), δι

KΕΦΑΛΑΙΟ 1 ΧΡΗΣΙΜΕΣ ΜΑΘΗΜΑΤΙΚΕΣ ΕΝΝΟΙΕΣ. { 1,2,3,..., n,...

Βάσεις δεδομένων. (9 ο μάθημα) Ηρακλής Βαρλάμης

Σχεδίαση Β.Δ. (Database Design)

Συναρτησιακές Εξαρτήσεις και Κανονικοποίηση

Λογικός Σχεδιασµός Σχεσιακών Σχηµάτων: Αποσύνθεση

ΠΑΡΑ ΕΙΓΜΑΤΑ ΥΠΟΛΟΓΙΣΜΟΥ ΑΠΟΚΡΙΣΕΩΝ ΣΕ ΗΛΕΚΤΡΙΚΑ ΙΚΤΥΑ

ΗΥ118: Διακριτά Μαθηματικά - Εαρινό Εξάμηνο 2016 Τελική Εξέταση Ιουνίου - Τετάρτη, 15/06/2016 Λύσεις Θεμάτων

Κλείσιμο Συνόλου Γνωρισμάτων


2η ΔΙΑΛΕΞΗ Συναρτησιακές εξαρτήσεις

Σχεσιακή Άλγεβρα. Βάσεις Δεδομένων : Σχεσιακή Άλγεβρα 1

Όρια συναρτήσεων. ε > υπάρχει ( ) { } = ± ορίζονται αναλόγως. Η διατύπωση αυτών των ορισµών αφήνεται ως άσκηση. x y = +. = και για κάθε (, ) ( 0,0)

Μοντέλο Οντοτήτων-Συσχετίσεων

Κεφάλαιο 1. Θεωρία Ζήτησης

Σχεσιακή Άλγεβρα. Σχεσιακή Άλγεβρα

Θεωρία Κανονικοποίησης

Όρια συναρτήσεων. ε > υπάρχει ( ) { } = ± ορίζονται αναλόγως. Η διατύπωση αυτών των ορισµών αφήνεται ως άσκηση. x y = +. = και για κάθε (, ) ( 0,0)

Μετατροπή Σχήµατος Ο/Σ σε Σχεσιακό

Μάθηµα Θεωρίας Αριθµών Ε.Μ.Ε

ΗΥ118: Διακριτά Μαθηματικά Εαρινό εξάμηνο 2016 Λύσεις ασκήσεων προόδου

Σχεσιακή Άλγεβρα. Προγράµµατα που απαντούν σε ερωτήσεις για τον παρόν στιγµιότυπο της βάσης δεδοµένων (quering)

HY118- ιακριτά Μαθηµατικά

ΜΑΘΗΜΑΤΙΚΑ ΘΕΤΙΚΗΣ & ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ 2008 ΕΚΦΩΝΗΣΕΙΣ

Θέματα ανακεφαλαίωσης

Μοντέλο Οντοτήτων-Συσχετίσεων

Μερικές διατάξεις. HY118- ιακριτά Μαθηµατικά. Μερικές διατάξεις, παράδειγµα. ιαγράµµατα Hasse: Αναπαράσταση σχέσεων µερικής διάταξης

ΑΛΓΕΒΡΙΚΕΣ ΟΜΕΣ Ι. Ασκησεις - Φυλλαδιο 2

Σχεσιακό Μοντέλο. Σχεδιασμός Βάσεων Δεδομένων Μάθημα 2 ο Μαρία Χαλκίδη

Βάσεις Δεδομένων Ευαγγελία Πιτουρά 2. Εννοιολογικός Σχεδιασμός Βάσεων εδομένων (με χρήση του Μοντέλου Οντοτήτων/Συσχετίσεων)

Η εταιρεία είναι οργανωµένη σε τµήµατα Κάθε ΤΜΗΜΑένα όνοµα, κωδικό και έναν εργαζόµενο που διευθύνει το τµήµα. Αποθηκεύεται η ηµεροµηνία που ανέλαβε

Transcript:

Συναρτησιακές και Πλειότιµες Εξαρτήσεις 1 Συναρτησιακές Εξαρτήσεις 2

Συναρτησιακές Εξαρτήσεις Έστω ένα σχήµα σχέσης R(Α 1, Α 2,, Α n ). Aς συµβολίσουµε µε R = {Α 1, Α 2,, Α n } το σύνολο των γνωρισµάτων της R. Με απλά λόγια, µια συναρτησιακή εξάρτηση µας λέει ότι αν δυο πλειάδες µιας σχέσης της R συµφωνούν (έχουν την ίδια τιµή) σε κάποια γνωρίσµατα Χ R τότε συµφωνούν και σε κάποια γνωρίσµατα Y R. Έστω X R και Y R, µια συναρτησιακή εξάρτηση Χ Υ ισχύει στο σχήµα R αν για κάθε σχέση r(r), για κάθε ζεύγος πλειάδων t 1 και t 2 της r, τέτοιες ώστε t 1 [X] = t 2 [X] t 1 [Y] = t 2 [Y] 3 Συναρτησιακές Εξαρτήσεις Αντί {Α 1, Α 2,, Αn} {Β 1, Β 2,, Βm} γράφουµε Α 1 Α 2 Α n Β 1 Β 2 Β m Παρατήρηση Α 1 Α 2 Α n Β 1 και Α 1 Α 2 Α n Β 2 Α 1 Α 2 Α n Β 1 Β 2 4

Συναρτησιακές Εξαρτήσεις To Y εξαρτάται συναρτησιακά από το X Γιατί καλούνται συναρτησιακές Κ R υπερκλειδί της R ανν K? 5 Παράδειγµα Έστω το παρακάτω σχεσιακό σχήµα: Εγγραφή(Μάθηµα, Φοιτητής, Ώρα, Αίθουσα, Βαθµός) (συντοµογραφία) Ε(Μ, Φ, Ω, Α, Β) 1. Τα µαθήµατα προσφέρονται µόνο µια φορά (µια συγκεκριµένη ώρα και αίθουσα). 2. Οι φοιτητές δεν µπορούν να είναι σε δυο διαφορετικά µέρη ταυτόχρονα 3. ε γίνεται να έχουµε δυο µαθήµατα ταυτόχρονα στην ίδια αίθουσα 4. Ένας φοιτητής παίρνει µόνο ένα βαθµό σε κάθε µάθηµα Ποιες συναρτησιακές εξαρτήσεις εκφράζουν αυτές τις συνθήκες. Ποιο είναι το κλειδί. 6

Συναρτησιακές Εξαρτήσεις Παράδειγµα: Ένας Λογαριασµός µπορεί να ανήκει σε παραπάνω από έναν πελάτη και ένας πελάτης πολλούς λογαριασµούς Λογαριασµός Όνοµα-Υποκαταστήµατος Αριθµός-Λογαριασµού Ποσό Όνοµα-Πελάτη Παράδειγµα: Ένας Πελάτης πολλά δάνεια και ένα άνειο από παραπάνω από έναν πελάτη Πελάτης Όνοµα-Πελάτη Οδός Πόλη Αριθµός- ανείου 7 Συναρτησιακές Εξαρτήσεις Ταινία Τίτλος Έτος ιάρκεια Είδος Παίζει Όνοµα-Ηθοποιού Τίτλος Έτος Ηθοποιός Όνοµα ιεύθυνση Έτος-Γέννησης Σύζυγος-Ηθοποιού 8

Συναρτησιακές Εξαρτήσεις Τετριµµένες εξαρτήσεις (ισχύουν για όλα τα σχήµατα) Παράδειγµα: Α Α ή ΑΒ Β Γενικά, Χ Υ τετριµµένη, όταν Y X 9 Συναρτησιακές Εξαρτήσεις Οι συναρτησιακές εξαρτήσεις ορίζονται στο σχήµα µιας σχέσης Ένα σύνολο από συναρτησιακές εξαρτήσεις F ισχύει σε ένα σχήµα Έλεγχος αν µια σχέση ικανοποιεί το σύνολο F 10

Συναρτησιακές Εξαρτήσεις Παράδειγµα: Ποιες (µη τετριµµένες) συναρτησιακές εξαρτήσεις ικανοποιεί η παρακάτω σχέση Α Β C D a 1 b 1 c 1 d 1 a 1 b 2 c 1 d 2 a 2 b 3 c 2 d 3 a 3 b 3 c 2 d 4 11 Κανόνες Συµπερασµού Συνάγουµε νέες εξαρτήσεις από ένα δεδοµένο σύνολο εξαρτήσεων F = X Y : η συναρτησιακή εξάρτηση X Y συνάγεται από το σύνολο εξαρτήσεων F 12

Κανόνες Συµπερασµού F + : κλειστότητα του F : σύνολο όλων των συναρτησιακών εξαρτήσεων που συνάγονται από το F Κανόνες Συµπερασµού- για τη συναγωγή εξαρτήσεων 13 Κανόνες Συµπερασµού Κανόνες Συµπερασµού 1. Ανακλαστικός Κανόνας Αν Χ Υ, τότε X Y 2. Επαυξητικός Κανόνας {X Y} = ΧΖ YZ 3. Μεταβατικός Κανόνας {X Y, Υ Z } = Χ Z Κανόνες του Amstrong: βάσιµοι (sound) δε δίνουν λανθασµένες εξαρτήσεις και πλήρεις (complete) µας δίνουν όλο το F + 14

Κανόνες Συµπερασµού {X Y} = ΧΖ YZ Επαυξητικός Κανόνας Απόδειξη (µε επαγωγή σε άτοπο) Έστω ότι σε κάποιο στιγµιότυπο της r ισχύει X Y (1) αλλά όχι ΧΖ YZ (2) Από (2 & ορισµό), υπάρχουν δυο πλειάδες t1[xz] = t2[xz] (3) και t1[yz] t2[yz] Από (3), t1[x] = t2[x] (4) και t1[z] = t2[z] (5) Από (1) και (4), t1[y] = t2[y] (6) Από (5) και (6), t1[υz] = t2[υz] Άτοπο! 15 Κανόνες Συµπερασµού Επιπρόσθετοι κανόνες 4. Ενωτικός Κανόνας {X Y, Χ Z } = Χ YZ 5. ιασπαστικός Κανόνας {X YZ } = Χ Y 6. Ψευδοµεταβατικός Κανόνας {X Y, ΥΖ W } = ΧZ W 16

Κανόνες Συµπερασµού Ενωτικός Κανόνας {X Y (1), Χ Z (2)} = Χ YZ Απόδειξη (µε χρήση των κανόνων του Amstrong) (2) + Επαυξ. ΧY YZ (3) (1) + Επαυξ. X XY (4) (3) (4) Μεταβ. Χ YZ Ανακλαστικός Κανόνας Αν Χ Υ, τότε X Y Επαυξητικός Κανόνας {X Y} = ΧΖ YZ Μεταβατικός Κανόνας {X Y, Υ Z } = Χ Z 17 Κανόνες Συµπερασµού Έστω R = {A, B, C, G, H, I} και F = {A B, A C, CG H, CG I, B H} Παραδείγµατα συναρτησιακών εξαρτήσεων που συνάγονται από το F Α Η CG ΗI ΑG I 18

Κανόνες Συµπερασµού 1. Ανακλαστικός Κανόνας Αν Χ Υ, τότε X Y 2. Επαυξητικός Κανόνας {X Y} συνάγει ΧΖ YZ 3. Μεταβατικός Κανόνας {X Y, Υ Z} συνάγει Χ Z 4. Ενωτικός Κανόνας {X Y, Χ Z} συνάγει Χ YZ 5. ιασπαστικός Κανόνας {X YZ } συνάγει Χ Y 6. Ψευδοµεταβατικός Κανόνας {X Y, ΥΖ W} συνάγει ΧZ W 19 Κλειστότητα Χ + : κλειστότητα ενός συνόλου X από γνωρίσµατα υπό το F σύνολο όλων των γνωρισµάτων που εξαρτώνται συναρτησιακά από το X µέσω του F Υπολογισµός του Χ + Result := Χ while (αλλαγή στο Result) Για κάθε συναρτησιακή εξάρτηση: Υ Ζ F Αν Υ Result, Result := Result Z 20

Κλειστότητα Παράδειγµα Έστω R = {A, B, C, G, H, I} και F = {A B, A C, CG H, CG I, B H} Υπολογισµός του {A, G} + 21 Κλειστότητα Είναι ο αλγόριθµος σωστός (α) Για κάθε Y Result, ισχύει Υ Χ + (β) Για κάθε Υ Χ +, ισχύει Υ Result Πολυπλοκότητα χειρότερης περίπτωσης 22

Κλειστότητα Μπορούµε να χρησιµοποιήσουµε τον αλγόριθµο (πως;) για να: 1. είξουµε αν µια συναρτησιακή εξάρτηση ισχύει 2. Υπολογίσουµε τα κλειδιά ενός σχήµατος σχέσης 3. Υπολογίσουµε το F + 23 Παράδειγµα R(A, B, C, D) F = {AB C, C D, D A} 1. είξουµε αν µια συναρτησιακή εξάρτηση ισχύει C A? A D? AB D? 24

Παράδειγµα R(A, B, C, D) F = {AB C, C D, D A} 2. Υπολογίσουµε τα κλειδιά ενός σχήµατος σχέσης 25 Παράδειγµα R(A, B, C, D) F = {AB C, C D, D A} 3. Υπολογίσουµε το F + 26

Κάλυµµα Απλοποίηση ενός δοσµένου συνόλου συναρτησιακών εξαρτήσεων χωρίς να µεταβάλλουµε το κλείσιµό του Έστω δυο σύνολα συναρτησιακών εξαρτήσεων E και F Λέµε ότι το F καλύπτει το E (ή το Ε καλύπτεται από το F), αν κάθε ΣΕ στο Ε, ανήκει στο F + (δηλαδή, συνάγεται από το F). υο σύνολα συναρτησιακών εξαρτήσεων E και F είναι ισοδύναµα ανν E + = F +. (δηλαδή αν το Ε καλύπτει το F και το F καλύπτει το Ε) 27 Κάλυµµα Πως µπορούµε να υπολογίσουµε αν ένα σύνολο F καλύπτει ένα σύνολο E; Πως µπορούµε να υπολογίσουµε αν ένα σύνολο F είναι ισοδύναµο µε ένα σύνολο E; 28

Παράδειγµα F1 = {A C, B C} F2 = {A B, A C} F3 = {A B, AB C} F1 καλύπτει το F3; F3 καλύπτει το F1; F1 ισοδύναµο τουf3; F2 ισοδύναµο τουf3; 29 Ελάχιστο Κάλυµµα Ελάχιστο κάλυµµα F min της F: ελάχιστο σύνολο από ΣΕ που είναι ισοδύναµο µε την F Ένα σύνολο F συναρτησιακών εξαρτήσεων είναι ελάχιστο αν: κάθε ΣΕ στο F έχει ένα µόνο γνώρισµα στο δεξιό της µέρος δε µπορούµε να αφαιρέσουµε µια ΣΕ από το F και να πάρουµε ένα σύνολο ισοδύναµο του F δε µπορούµε να αντικαταστήσουµε µια ΣΕ Χ Ζ από το F µε µια ΣΕ Υ Z τέτοια ώστε Y X και να πάρουµε ένα σύνολο ισοδύναµο του F 30

Ελάχιστο Κάλυµµα Περιττά γνωρίσµατα: γνωρίσµατα που αν αφαιρεθούν δεν επηρεάζουν το κλείσιµο (δηλαδή προκύπτει ισοδύναµο σύνολο) Έστω ένα σύνολο F συναρτησιακών εξαρτήσεων και η ΣΕ Χ Υ F Το γνώρισµα Α Χ είναι περιττό στο Χ αν F = (F - {Χ Υ}) {(Χ - A) Υ} ηλαδή, αν ισχύει Α 2 Α n B 1 B 2 B m 31 Ελάχιστο Κάλυµµα Έστω ένα σύνολο F συναρτησιακών εξαρτήσεων και η ΣΕ Χ Υ F Το γνώρισµα B Y είναι περιττό στο Y αν (F - {Χ Υ}) {Χ (Υ - B)} = F ηλαδή, αν Α 1 Α 2 Α n B 2 B m + µας δίνει Α 1 Α 2 Α n B 1 B 2 B m Γενικά, αν στο δεξί µέρος µόνο ένα γνώρισµα, αν η εξάρτηση είναι περιττή 32

Ελάχιστο Κάλυµµα Πως θα υπολογίσουµε αν ένα γνώρισµα περιττό; στο α.µ. µιας ΣΕ είναι (Υπενθύµιση) Το γνώρισµα Α Χ είναι περιττό στο Χ αν F = (F - {Χ Υ}) {(Χ - A) Υ} Υπολόγισε το (Χ -{Α}) + µε βάση τις ΣΕ του συνόλου F. Το Α είναι περιττό αν το (Χ -{Α}) + περιέχει το Y 33 Ελάχιστο Κάλυµµα Πως θα υπολογίσουµε αν ένα γνώρισµα περιττό; στο δ.µ. µιας ΣΕ είναι (Υπενθύµιση) Το γνώρισµα Β Y είναι περιττό στο Y αν (F - {Χ Υ}) {Χ (Υ - Β)} = F Υπολογίζουµε το (Χ) + χρησιµοποιώντας το F, έχοντας το Χ Υ Β αντί Χ Υ Περιττό αν το Β ανήκει 34

Ελάχιστο Κάλυµµα Αλγόριθµος υπολογισµού ελάχιστου καλύµµατος 1. Αντικατέστησε τις συναρτησιακές εξαρτήσεις Χ 1 Υ 1 Υ 2 µεχ 1 Υ 1 και Χ 1 Υ 2 2. Για κάθε ΣΕ (i) Βρες τα περιττά γνωρίσµατα στο α.µ. (ii) Βρες τα περιττά γνωρίσµατα στο δ.µ (δηλαδή τις περιττές εξαρτήσεις 35 Ελάχιστο Κάλυµµα Παράδειγµα Έστω R(A, B, C) και F = {A BC, B C, A B, AB C}. Βρείτε το F min. 36

Ελάχιστο Κάλυµµa Παράδειγµα Έστω R(A, B, C) και F = {A BC, B C, A B, AB C}. Βρείτε το F min. Μετά από πράξεις {A B, B C, AB C} Εξέταση αν το Α είναι περιττό στο AB C, υπολογίζοντας το (Β) + Νέο σύνολο {A B, B C} Εξέταση αν το Β είναι περιττό στο B C (δε χρειάζεται) Εξέταση αν το C είναι περιττό στο B C (δηλαδή, ουσιαστικά αν ο κανόνας είναι περιττός) αν το Β + δίνει C µε τους υπόλοιπους κανόνες! 37 Ελάχιστο Κάλυµµa Μετά από πράξεις {A B, B C, AB C} Αν ξεκινούσα εξετάζοντας αν το Β είναι περιττό στο AB C Υπολογισµός του Α+, το Β είναι περιττό άρα Νέο σύνολο {A B, B C, A C} Εξέταση Β περιττό στο A B, (A + ) όχι Εξέταση C περιττό στο B C, (B + ) όχι Εξέταση C περιττό στο A C, (A + ) ναι! Νέο σύνολο {A B, B C} 38

Συναρτησιακές Εξαρτήσεις Ανακεφαλαίωση Συναρτησιακή εξάρτηση Κανόνες συναγωγής εξαρτήσεων Κλείσιµο γνωρίσµατος Ισοδυναµία συνόλου εξαρτήσεων Ελάχιστο κάλυµµα 39 Πλειότιµες Εξαρτήσεις 40

Πλειότιµες Εξαρτήσεις Πλειότιµες Εξαρτήσεις Προκύπτουν όταν δυο γνωρίσµατα είναι ανεξάρτητα το ένα από το άλλο Παράδειγµα Ηθοποιός(Όνοµα, Οδός, Πόλη, Τίτλος, Έτος) Yποθέτουµε ότι για κάθε ηθοποιό είναι πιθανόν να υπάρχουν πολλές διευθύνσεις Κανένα από τα 5 γνωρίσµατα δεν εξαρτάται συναρτησιακά από τα άλλα τέσσερα δεν υπάρχουν µη µη τετριµµένες εξαρτήσεις κλειδί? π.χ., Όνοµα Οδός Τίτλος Έτος Πόλη δεν ισχύει 41 Πλειότιµες Εξαρτήσεις Παράδειγµα (συνέχεια) Ηθοποιός(Όνοµα, Οδός, Πόλη, Τίτλος, Έτος) δεν υπάρχουν µη τετριµµένες εξαρτήσεις Το σχήµα είναι σε BCNF αλλά υπάρχει επανάληψη πληροφορίας που δεν οφείλεται όµως σε συναρτησιακές εξαρτήσεις 42

Πλειότιµες Εξαρτήσεις X Y Για κάθε ζεύγος πλειάδων t 1 και t 2 της σχέσης R που συµφωνούν σε όλα τα γνωρίσµατα του X µπορούµε να βρούµε στο R δυο πλειάδες t 3 και t 4 τέτοιες ώστε και οι δυo συµφωνούν µε τις t 1 και t 2 στο X: t 1 [X] = t 2 [X] = t3[x] = t 4 [X] η t 3 συµφωνεί µε την t 1 στο Υ: t3[y] = t 1 [Y] η t 3 συµφωνεί µε την t 2 στο R - X - Y: t3[r-x -Y]= t2[r -X-Y] η t 4 συµφωνεί µε την t 2 στο Υ: t4[y] = t2[y] η t 4 συµφωνεί µε την t 1 στο R -X -Y: t4[r-x -Y]= t 1 [R -X -Y] 43 Πλειότιµες Εξαρτήσεις A 1 A 2 A n B 1 B 2 B m A 1 A 2 A n B 1 B 2 B m C 1 C 2 C k a 1 a 2 a n b 1 b 2 b m c 1 c 2 c k a 1 a 2 a n b 1 b 2 b m c 1 c 2 c k t 1 t 2 t 3 t 4 44

Πλειότιµες Εξαρτήσεις Παράδειγµα Ηθοποιός(Όνοµα, Οδός, Πόλη, Τίτλος, Έτος) Όνοµα Οδός Πόλη Όνοµα Οδός Πόλη Τίτλος Έτος C. Fisher 123 Mapple Str Hollywood Star Wars 1977 C. Fisher 5 Locust Ln Malibu Empire Strikes Back 1980?? 45 Κανόνες Συµπερασµού για Πλειότιµες Εξαρτήσεις Κανόνες Συµπερασµού για Πλειότιµες Εξαρτήσεις 1. Ανακλαστικός κανόνας Αν Υ Χ, τότε X Y 2. Επαυξητικός κανόνας Αν X Y τότε ΧΖ YZ 3. Μεταβατικός κανόνας Αν X Y και Υ Z τότε Χ Z 4. Συµπληρωµατικός κανόνας για ΠΕ Αν X Y τότε Χ R -X-Y 5. Επαυξητικός κανόνας για ΠΕ Αν X Y και Z W τότε WΧ Z Y 6. Μεταβατικός κανόνας για ΠΕ Αν X Y και Υ Z τότε Χ Z - Y 46

Κανόνες Συµπερασµού για Πλειότιµες Εξαρτήσεις 7. Κανόνας αντιγραφής Αν X Y, τότε Χ Y 8. Κανόνας συγχώνευσης Αν X Y, Ζ Y και W τέτοιο ώστε: (α) W Y = και (β) W Z τότε Χ Z 47 Κανόνες Συµπερασµού για Πλειότιµες Εξαρτήσεις τετριµµένη ΠΕ; αν (α) το Y X ή (β) Χ Y = R 48

Κανόνες Συµπερασµού για Πλειότιµες Εξαρτήσεις βάσιµοι (sound) δε δίνουν λανθασµένες εξαρτήσεις και πλήρεις (complete) µας δίνουν όλο το D + Απόδειξη του κανόνας αντιγραφής (Αν X Y, τότε Χ Y) δηλαδή κάθε συναρτησιακή εξάρτηση είναι και πλειότιµη Οποτεδήποτε t1[x] = t2[χ], υπάρχουν... Το ανάποδο ισχύει; Αντιπαράδειγµα, π.χ., a 1 b 1 c 1 a 1 b 2 c 1 49 Κανόνες Συµπερασµού για Πλειότιµες Εξαρτήσεις Παράδειγµα συµπληρωµατικού κανόνα Αν X Y τότε Χ R -X-Y Όνοµα Όνοµα Οδός Πόλη Τίτλος Έτος Απόδειξη του συµπληρωµατικού κανόνα 50