Bazy danych. Bazy danych. wykład kursowy. Adam Kolany. Państwowa Wyższa Szkoła Zawodowa 2007/2008

Podobne dokumenty
Systemy baz danych. Notatki z wykładu

Zależności funkcyjne

Pojęcie zależności funkcyjnej

PLAN WYKŁADU BAZY DANYCH ZALEŻNOŚCI FUNKCYJNE

Bazy danych. Andrzej Łachwa, UJ, /15

Bazy danych. Andrzej Łachwa, UJ, /15

KaŜdemu atrybutowi A przyporządkowana jest dziedzina Dom(A), czyli zbiór dopuszczalnych wartości.

Bazy Danych i Usługi Sieciowe

Jak wiernie odzwierciedlić świat i zachować występujące w nim zależności? Jak implementacja fizyczna zmienia model logiczny?

Bazy danych Teoria projektowania relacyjnych baz danych. Wykła. Wykład dla studentów matematyki

Bazy danych i usługi sieciowe

vf(c) =, vf(ft 1... t n )=vf(t 1 )... vf(t n ).

BAZY DANYCH. Anomalie. Rozkład relacji i normalizacja. Wady redundancji

Normalizacja. Pojęcie klucza. Cel normalizacji

Zależności funkcyjne pierwotne i wtórne

Algebrę L = (L, Neg, Alt, Kon, Imp) nazywamy algebrą języka logiki zdań. Jest to algebra o typie

Co to są liczby naturalne i czemu ich nie ma?! Adam Kolany

Normalizacja relacyjnych baz danych. Sebastian Ernst

Definicja bazy danych TECHNOLOGIE BAZ DANYCH. System zarządzania bazą danych (SZBD) Oczekiwania wobec SZBD. Oczekiwania wobec SZBD c.d.

Cel normalizacji. Tadeusz Pankowski

Struktury formalne, czyli elementy Teorii Modeli

Bazy danych. Plan wykładu. Zależności funkcyjne. Wykład 2: Relacyjny model danych - zależności funkcyjne. Podstawy SQL.

Jacek Czekaj. Rodziny równoważne z bazodanową rodziną relacji

Bazy Danych i Usługi Sieciowe

Projektowanie relacyjnych baz danych

Bazy danych 2. Zależności funkcyjne Normalizacja baz danych

Logika Stosowana. Wykład 1 - Logika zdaniowa. Marcin Szczuka. Instytut Informatyki UW. Wykład monograficzny, semestr letni 2016/2017

System BCD z κ. Adam Slaski na podstawie wykładów, notatek i uwag Pawła Urzyczyna. Semestr letni 2009/10

Bazy danych. Andrzej Grzybowski. Instytut Fizyki, Uniwersytet Śląski

Technologie baz danych

Indukcja. Materiały pomocnicze do wykładu. wykładowca: dr Magdalena Kacprzak

Definicja: alfabetem. słowem długością słowa

Andrzej Wiśniewski Logika II. Materiały do wykładu dla studentów kognitywistyki

Egzamin z logiki i teorii mnogości, rozwiązania zadań

Metoda Tablic Semantycznych

Semantyka rachunku predykatów

Semantyka rachunku predykatów pierwszego rzędu. Dziedzina interpretacji. Stałe, zmienne, funkcje. Logika obliczeniowa.

Logika Stosowana. Wykład 2 - Logika modalna Część 2. Marcin Szczuka. Instytut Informatyki UW. Wykład monograficzny, semestr letni 2016/2017

n=0 (n + r)a n x n+r 1 (n + r)(n + r 1)a n x n+r 2. Wykorzystując te obliczenia otrzymujemy, że lewa strona równania (1) jest równa

Tadeusz Pankowski Definicja. Definicja

BAZY DANYCH model relacyjny. Opracował: dr inż. Piotr Suchomski

Andrzej Wiśniewski Logika I Materiały do wykładu dla studentów kognitywistyki. Wykład 10. Twierdzenie o pełności systemu aksjomatycznego KRZ

Definicja: zmiennych zdaniowych spójnikach zdaniowych:

domykanie relacji, relacja równoważności, rozkłady zbiorów

Bazy danych 3. Zależności funkcyjne Normalizacja relacyjnych baz danych

Definicja: zmiennych zdaniowych spójnikach zdaniowych:

Metody dowodzenia twierdzeń i automatyzacja rozumowań Systemy aksjomatyczne I

Metoda tabel semantycznych. Dedukcja drogi Watsonie, dedukcja... Definicja logicznej konsekwencji. Logika obliczeniowa.

Logika Matematyczna (10)

Andrzej Wiśniewski Logika II. Materiały do wykładu dla studentów kognitywistyki. Wykład 14. Wprowadzenie do logiki intuicjonistycznej

Monoidy wolne. alfabetem. słowem długością słowa monoidem wolnym z alfabetem Twierdzenie 1.

Andrzej Wiśniewski Logika I Materiały do wykładu dla studentów kognitywistyki. Wykłady 12 i 13. Dowód i dowodzenie w KRP. Tezy KRP

0.1. Logika podstawowe pojęcia: zdania i funktory, reguły wnioskowania, zmienne zdaniowe, rachunek zdań.

WYKŁAD 1. Wprowadzenie do problematyki baz danych

O pewnych związkach teorii modeli z teorią reprezentacji

1 Zbiory. 1.1 Kiedy {a} = {b, c}? (tzn. podać warunki na a, b i c) 1.2 Udowodnić, że A {A} A =.

Andrzej Wiśniewski Logika II. Wykłady 10b i 11. Semantyka relacyjna dla normalnych modalnych rachunków zdań

Postać normalna Boyce-Codd (BCNF)

Rachunek predykatów. Formuły rachunku predykatów. Plan wykładu. Relacje i predykaty - przykłady. Relacje i predykaty

Bazy danych 2. Algebra relacji Zależności funkcyjne

Algebra i jej zastosowania konspekt wyk ladu, czȩść druga

Adam Meissner.

Normalizacja schematów logicznych relacji

Bazy danych 3. Normalizacja baz danych

Zasada indukcji matematycznej

PODSTAWY BAZ DANYCH 2009/ / Notatki do wykładu "Podstawy baz danych"

Relacyjne Bazy Danych Andrzej M. Borzyszkowski. Projekt bazy danych normalizacja. PJATK/ Gdańsk. Dwie metodologie. Formalne zasady projektowe

Pożyczkobiorcy. Anomalia modyfikacji: Anomalia usuwania: Konta_pożyczkowe. Anomalia wstawiania: Przykłady anomalii. Pożyczki.

Korzystając z własności metryki łatwo wykazać, że dla dowolnych x, y, z X zachodzi

III rok kognitywistyki UAM,

Dowody założeniowe w KRZ

Baza w jądrze i baza obrazu ( )

Tautologia (wyrażenie uniwersalnie prawdziwe - prawo logiczne)

Algebrą nazywamy strukturę A = (A, {F i : i I }), gdzie A jest zbiorem zwanym uniwersum algebry, zaś F i : A F i

Pierwsza postać normalna

III rok kognitywistyki UAM,

Wykład ze Wstępu do Logiki i Teorii Mnogości

Relacyjny model baz danych, model związków encji, normalizacje

Elementy logiki. Wojciech Buszkowski Wydział Matematyki i Informatyki UAM Zakład Teorii Obliczeń

Projektowanie baz danych

Wstęp do logiki. Klasyczny Rachunek Zdań III

WYKŁAD 3: METODA AKSJOMATYCZNA

Relacje i relacje równoważności. Materiały pomocnicze do wykładu. przedmiot: Matematyka Dyskretna 1 wykładowca: dr Magdalena Kacprzak

Matematyka dyskretna

RACHUNEK ZDAŃ 7. Dla każdej tautologii w formie implikacji, której poprzednik również jest tautologią, następnik także jest tautologią.

5. Algebra działania, grupy, grupy permutacji, pierścienie, ciała, pierścień wielomianów.

1. Wstęp do logiki. Matematyka jest nauką dedukcyjną. Nowe pojęcia definiujemy za pomocą pojęć pierwotnych lub pojęć uprzednio wprowadzonych.

Logika. Michał Lipnicki. 15 stycznia Zakład Logiki Stosowanej UAM. Michał Lipnicki () Logika 15 stycznia / 37

1 Wstęp do modelu relacyjnego

ROZDZIAŁ 1. Rachunek funkcyjny

Przestrzeń unitarna. Jacek Kłopotowski. 23 października Katedra Matematyki i Ekonomii Matematycznej SGH

Zależności funkcyjne c.d.

Wprowadzenie i pojęcia wstępne.

Elementy teorii mnogości. Część I. Wojciech Buszkowski Zakład Teorii Obliczeń Wydział Matematyki i Informatyki Uniwersytet im.

Rachunek zdań. Materiały pomocnicze do wykładu. wykładowca: dr Magdalena Kacprzak

Logika Matematyczna (2,3)

030 PROJEKTOWANIE BAZ DANYCH. Prof. dr hab. Marek Wisła

Interpretacja Niech U będzie zbiorem formuł takim, że zbiór {p 1,..., p k } jest zbiorem wszystkich symboli predykatywnych, {f 1,..., f l } jest zbior

Logika Matematyczna (1)

Konstruowanie Baz Danych Wprowadzenie do projektowania. Normalizacja

Transkrypt:

Bazy danych wykład kursowy Adam Kolany Państwowa Wyższa Szkoła Zawodowa dr.a.kolany@wp.pl 2007/2008

Wielozbiory Definicja Wielozbiory Definicja Niech A będzie dowolnym zbiorem. Wielozbiór elementów A, to dowolna funkcja Nośnik wielozbioru W: W : A N supp(w) df == { x : W(x) 0 }, W df == supp(w) Wielozbiór W jest skończony wtw, gdy supp(w) jest skończony.

Wielozbiory Działania na wielozbiorach Działania na wielozbiorach Definicja Niech W i V będą wielozbiorami elementów zbioru A. (W V) (x) = W(x) + V(x) (W V) (x) = min { W(x), V(x) } (W \ V) (x) = max { W(x) V(x), 0 }

Wielozbiory Działania na wielozbiorach Działania na wielozbiorach, cd. Definicja Niech W będzie wielozbiorem elementów zbioru A i niech V będzie wielozbiorem elementów zbioru B. (W V) ( x, y ) = W(x) V(y)

Wielozbiory Reprezentacja wielozbiorów Reprezentacja wielozbiorów Definicja Niech A będzie zbiorem i niech a A. Definiujemy wielozbiór δ a następująco: { 1, x = a δ a (x) = 0, x a, x A

Wielozbiory Reprezentacja wielozbiorów Definicja [ a 1,..., a n ] = δ a1... δ an

Wielozbiory Reprezentacja wielozbiorów Reprezentacja wielozbiorów, cd. Twierdzenie Niech W będzie skończonym wielozbiorem elementów A. Wówczas istnieją takie a 1,..., a n, że W = [ a 1,..., a n ] Dowód. indukcja względem #supp(w)

Wielozbiory Reprezentacja wielozbiorów Uwaga Niech π będzie permutacją { 1,..., n }. Wówczas [ a 1,..., a n ] = [ a π(1),..., a π(n) ] Dowód. Lączność i przemienność

Atrybuty, dziedziny, tabele Dziedziny Dziedzina Definicja Dziedziną nazywamy układ A, { f A j : j J }, { ρ A i : i I }, gdzie A jest niepustym zbiorem, f A j, j J, są działaniami w A oraz ρa i, i I, są relacjami w A. Zakładamy przy tym, że jedna z relacji jest identycznością.

Atrybuty, dziedziny, tabele Dziedziny Umowa Ustalamy zbiór dopuszczalnych nazw N, nazw atrybutów A oraz indeksowaną rodzinę dziedzin { D a : a A }. D a nazywać będziemy dziedziną atrybutu a A. Zakładamy przy tym, że dziedziny są nieskończone i ponumerowane: D a = { d a n : n = 0, 1, 2, 3,... }

Atrybuty, dziedziny, tabele Krotki Krotki Definicja Niech A będzie zbiorem atrybutów. Krotką o nagłówku A nazywamy dowolną funkcję k : A a A D a, o ile k(a) D a, a A.

Atrybuty, dziedziny, tabele Tabele Tabele Definicja Niech A będzie zbiorem atrybutów. Tabelą/relacją o nagłówku A nazywamy dowolny wielozbiór krotek o nagłówku równym A Tabelą/relacją częściową o nagłówku A nazywamy dowolny wielozbiór krotek o nagłówku zawartym w A

Atrybuty, dziedziny, tabele Tabele Oznaczenia Częściowa tabela maksymalna o nagłówku w A T c (A) rodzina wszystkich krotek o nagłówku w A T c (A) rodzina wszystkich tabel częściowych o nagłówku w A Tabela maksymalna o nagłówku w A T(A) rodzina wszystkich krotek o nagłówku A T(A) rodzina wszystkich tabel o nagłówku A

Atrybuty, dziedziny, tabele Operacje na tabelach Rzutowanie Definicja Niech R T(A) relacją i niech B A. Rzutem R na B jest tabela R B o nagłówku B R B (k) = { R(l) : l B = k }

Atrybuty, dziedziny, tabele Operacje na tabelach Zawężenie Definicja Niech R T(A) i niech B A oraz l T(B). Zawęrzeniem (Restrykcją) { R do l jest tabela R[l], dana wzorem R(k), k B = l R[l](k) = 0, w poz. przyp., k R 2

Atrybuty, dziedziny, tabele Operacje na tabelach Uwaga Niech B A, R T(A) k R B l R (k = l B ) Dowód. k R B 0 (R B )(k) = { R(l) : l B = k } l (R(l) 0 & k = l B ) l R (k = l B )

Atrybuty, dziedziny, tabele Operacje na tabelach Uwaga Niech B 1, B 2 A, R T(A) k R B1 R B2 l1,l 2 R(k B1 = l 1 B1, k B2 = l 2 B2 ) Dowód. k (R B1 ) (R B2 ) 0 ( (R B1 ) (R B2 ) ) (k)(r B1 )(k B1 ) (R B2 )(k B2 ) (R B1 )(k B1 ) 0 & (R B2 )(k B2 ) 0 k B1 R B1 & k B2 R B2 l1,l 2 R(k B1 = l 1 B1, k B2 = l 2 B2 )

Atrybuty, dziedziny, tabele Operacje na tabelach Uwaga Niech R T(A), B C A. Dowód R C R B R C k R B R C l,n R (k C = l C, k B = l B ) l R (k C = l C ) l (k = l C ) k R C

Elementy logiki Systemy formalne Reguły wnioskowania Definicja Regułą wnioskowania w zbiorze E nazywamy relację ρ (E) E dla której dm(ρ)

Elementy logiki Systemy formalne Definicja Reguła r jest finitarna: Π, e r Π skończone

Elementy logiki Systemy formalne Definicja System formalny to układ S = E, R, A, gdzie E jest niepustym zbiorem, A E oraz R jest zbiorem reguł w E

Elementy logiki Systemy formalne Definicja Dowód w systemie S ze zbiorem założeń X E: e 1,..., e n lub 1. e j A X 2. r R Π { e1,...,e j 1 } Π, e j r, j = 1,..., n.

Elementy logiki Systemy formalne Definicja Prv S (X) = = {e E : e1,...,e n e 1,..., e n, e - dowód w S ze zbiorem założeń X}

Elementy logiki Systemy formalne Uwaga S = E, R, A, X, Y E Y Prv S (X), Y, e r R = e Prv S (X) Twierdzenie S = E, R, A, X, Y E X, A Prv S (X) X Y = Prv S (X) Prv S (Y ) Prv S (Prv S (X)) Prv S (X)

Elementy logiki Systemy formalne Definicja S = E, R, A. Reguła r jest wyprowadzalna w S, jeżeli Π, e r e Prv S (Π) Twierdzenie Załóżmy, że r jest wyprowadzalna w S = E, R, A i niech S = E, R { r }, A. Wówczas Prv S = Prv S.

Elementy logiki Przykłady systemów formalnych Przykłady systemów formalnych Klasyczny Rachunek Zdań

Elementy logiki Przykłady systemów formalnych Klasyczny Rachunek Zdań Formuły Fml(P) : P Fml(P) α Fml(P) ( α) Fml(P) α, β Fml(P) (α β) Fml(P), {,,, }

Elementy logiki Przykłady systemów formalnych Klasyczny Rachunek Zdań Aksjomaty KRZ Ax 1. p (q p) Ax 2. [p (q r)] [(p q) (p r)] Ax 3. (p q) [(p r) (p q r)] Ax 4. p q p, Ax 5. p q q Ax 6. (p q) [(r q) (p r q)] Ax 7. p p q, Ax 8. q p q Ax 9. (p q) [(q p) (p q)] Ax 10. (p q) (p q), Ax 11. (p q) (q p) Ax 12. p ( p q), Ax 13. (p p) p Ax 14. p p

Elementy logiki Przykłady systemów formalnych Reguły r o : r : α, α β β α h(α), h : P Fml(P) α, β Fml(P)

Elementy logiki Przykłady systemów formalnych Przykład p p jest tezą KRZ 1. (p (q s)) ((p q) (p s)) Ax 2 2. (p ((p p) p)) ((p (p p)) (p p)) 1, q / p p, s / p, 3. p (q p) Ax 1 4. p ((p p) p) 3, q / p p 5. (p (p p)) (p p) r o (2, 4) 6. p (p p) 3, q / p 7. p p r o (5, 6)

Elementy logiki Przykłady systemów formalnych Klasyczny Rachunek Kwantyfikatorów

Elementy logiki Przykłady systemów formalnych Języki I-rzędu Definicja L = V, C, F, P, ς, ς : P F { 1, 2, 3,... } V = { x 0, x 1, x 2,... }

Elementy logiki Przykłady systemów formalnych Termy Trm(L) : V, C Trm(L) τ 1,..., τ n Trm(L) fτ 1... τ n Trm(L), ς(f) = n

Elementy logiki Przykłady systemów formalnych Formuły Frm(L) : τ 1,..., τ n Trm(L) Pτ 1... τ n Trm(L), ς(p) = n τ, σ Trm(L) τ = σ Frm(L), α Frm(L) ( α), ( xk α), ( xk α) Frm(L) α, β Frm(L) (α β) Frm(L), {,,, }

Elementy logiki Przykłady systemów formalnych Aksjomaty identyczności Eq 1 (a) s = s Eq 1 (b) s = t s = r t = r, Eq 2 (a) s 1 = t 1... s n = t n ( ) p (n) s 1... s n p (n) t 1... t n Eq 2 (b) s 1 = t 1... s n = t n ( ) f (n) s 1... s n = f (n) t 1... t n,.

Elementy logiki Przykłady systemów formalnych Aksjomaty logiczne gdzie Ax 1 (a) xm δ δ[ xm / τ ] Ax 1 (b) δ[ xm / τ ] xm δ Ax 2 (a) xn (α β) ( xn α β) Ax 2 (b) xn (β α) (β xn α) x m Ff(τ, δ), x n Vf(α) Ax 3 : podstawienia tautologii zdaniowych

Elementy logiki Przykłady systemów formalnych Klasyczny Rachunek Kwantyfikatorów Reguły r o : r : α, α β β α ( xk α), α, β Frm(L)

Elementy logiki Przykłady systemów formalnych Klasyczny Rachunek Kwantyfikatorów Przykładowy dowód α x n α, x n α α, xn ( xn α α ), x n α xn α, xn α α, α xn α, xn ( α xn α ), xn α xn α, xn α xn α, x n α xn α.

Zależności, schematy relacyjne Język zależności Język zależności Niech A będzie ustalonym nagłówkiem Definiujemy język L dep (A) = V, (A),, {,, 1, 2,... }, ς gdzie ς( ) = ς( ) = 2, ς( n ) = n

Zależności, schematy relacyjne Język zależności Umowa Zakładamy odtąd, że wszelkie rozważane relacje są płaskie.

Zależności, schematy relacyjne Język zależności Zależności Definicja Zależność funkcyjna w L dep (A), to formuła postaci: X Y, X, Y (A) Zależność wielowartościowa w L dep (A), to formuła postaci: X Y, X, Y (A)

Zależności, schematy relacyjne Język zależności Definicja Zależność złączeniowa w L dep (A), to formuła postaci: n X 1 X 2... X n, X 1,..., X n (A)

Zależności, schematy relacyjne Język zależności Schemat relacyjny Definicja Schematem relacyjnym, jest para A, D, gdzie D jest zbiorem zależności w L dep (A)

Zależności funkcyjne Spełnianie Spełnianie Definicja Relacja R T(A) spełnia zależność X Y, jeśli dla dowolnych k, l R zachodzi k X = l X = k Y = l Y Ozn. R = X Y Relacja R T(A) spełnia zbiór zależności D jeśli spełnia każdą z zależności tego zbioru. Ozn. R = D.

Zależności funkcyjne Spełnianie Wynikanie logiczne Definicja Relacja R jest relacją schematu Σ = A, D, jeżeli jej nagłówkiem jest A i spełnia ona zależności z D Ozn. R Rel(Σ) Zależność δ wynika logicznie ze schematu Σ, jeśli jest ona prawdziwa w każdej relacji schematu Σ. Ozn. Σ = δ, D = A δ.

Zależności funkcyjne Zależności trywialne Zależności trywialne Uwaga Zależność X Y jest prawdziwa w schemacie A, wtw, gdy Y X. ( ) k X = l X (k X ) Y = (l X ) Y k Y = k X Y = (k X ) Y = (l X ) Y = l X Y = l Y

Zależności funkcyjne Zależności trywialne ( ) Niech Y X i niech d x 0, k(x) = d x 0, x A oraz l(x) = d x 1, x X x A \ X Niech dalej Wówczas R = [ k, l ]. R = X Y.

Zależności funkcyjne Zależności trywialne Tryw(A) df == { X Y : Y X A }

Zależności funkcyjne System Armstronga System Armstronga Definicja S Arm (A) = Func(A), { r A ext, r A } trans, Tryw(A) r ext : Oznaczenie: X Y X Z Y Z, r trans : X Y, Y Z X Z X, Y, Z A. A, F f, F A f f Prv SArm (A)(F)

Zależności funkcyjne System Armstronga Sumowanie, pseudoprzechodniość, rozkładanie Następujące reguły są wyprowadzalne w S Arm (A) (Sumowanie) X Y, X Z X Y Z (Pseudoprzechodniość) X Y, W Y Z X W Z (Rozkładanie) X Y X Z, Z Y

Zależności funkcyjne System Armstronga Sumowanie, pseudoprzechodniość, rozkładanie Dowód Sumowanie 1. X Y zał 2. X X Y r ext (1) 3. X Z zał 4. X Y Y Z r ext (3) 5. X Y Z r trans (2, 4) Pseudoprzechodniość 1. X Y zał 2. X W Y W r ext (1) 3. W Y Z zał 4. X W Z r trans (2, 3) Rozkładanie 1. X Y zał 2. Y Z aks 3. X Z r trans (1, 2)

Zależności funkcyjne System Armstronga Sumowanie, pseudoprzechodniość, rozkładanie Wniosek Σ X Y (Σ X y) y Y dowód ( ) Aksjomat + przechodniość ( ) Indukcja na wielkość Y i sumowanie.

Zależności funkcyjne Zgodność systemu Armstronga Adekwatność Definicja Reguła r w L dep (A) jest adekwatna, jeśli Π = A δ dla Π, δ r

Zależności funkcyjne Zgodność systemu Armstronga Twierdzenie Formuły r ext i r trans są adekwatne. Dowód. r ext R = A X Y R = A XZ YZ? k XZ = l XZ k X = l X k Z = l Z k Y = l Y k Z = l Z k YZ = k Y k Z = l Y l Z = l YZ k YZ = l YZ R = A XZ YZ

Zależności funkcyjne Zgodność systemu Armstronga Dowód. r trans R = A X Y, Y Z R = A X Z? k X = l X k Y = l Y k Z = l Z R = A X Z

Zależności funkcyjne Zgodność systemu Armstronga Twierdzenie o zgodności Twierdzenie (Zgodność) S f S = f Dowód. [indukcja względem długości dowodu]

Zależności funkcyjne Pełność systemu Armstronga Twierdzenie o pełności Twierdzenie (pełność) S = f S f

Zależności funkcyjne Pełność systemu Armstronga Domknięcie zbioru atrybutów Definicja [X] + S = { x A : S X { x } }

Zależności funkcyjne Pełność systemu Armstronga Twierdzenie S X Y Y [X] + S Dowód. zwrotność i sumowanie

Zależności funkcyjne Pełność systemu Armstronga Dowód twierdzenia o pełności Dowód twierdzenia o pełności Niech S = A, F i załóżmy, że S X Y. Wówczas Y [X] + S. Niech d x 0, x [X] + k(x) = d x S 0, x A oraz l(x) = d x 1, x A \ [X] + S i niech dalej Wówczas R = F, ale R = [ k, l ]. R = X Y.

Zależności funkcyjne Reprezentacja boolowska Reprezentacja boolowska zależności funkcyjnych Definicja P A = { p x : x A } (X Y) df == { px : x X } { py : y Y } F df == { f : f F }

Zależności funkcyjne Reprezentacja boolowska Wynikanie logiczne formuł zdaniowych Przypomnienie Niech Φ będzie zbiorem formuł zdaniowych, a ϕ formułą zdaniową. Φ = ϕ h:p { 0,1 } (h Φ { 1 } h(ϕ) = 1)

Zależności funkcyjne Reprezentacja boolowska Definicja Niech h : P A { 0, 1 }. Definiujemy R h = [ k h, l h ], gdzie k h (x) = d x 0, x A oraz l h (x) = d x 1 h(p x), x A

Zależności funkcyjne Reprezentacja boolowska Lemat Niech W A. ( Mamy: ) h { pw : w W } = 1 k h W = l h W Dowód. h ( { pw : w W }) = 1 w W (h(p w )) = 1) w W (k h (w) = d w 0 = d w 1 h(p = w) lh (w) k h W = l h W

Zależności funkcyjne Reprezentacja boolowska Lemat Niech W, V A. ( Wówczas: h (U V) ) = 1 R h = U V Dowód. ) h ((U V) = 1 ( k h U = l h U k h V = l h V ) ( h( p u ) = 1 h( ) p v ) = 1 u v R h = U V

Zależności funkcyjne Reprezentacja boolowska Twierdzenie o reprezentacji Twierdzenie F A f F = f

Zależności funkcyjne Reprezentacja boolowska dowód. Niech f = X Y. ( ) Załóżmy, że F A f i niech h F { 1 } ) Niech dalej U V F. Wówczas h ((U V) = 1, skąd R h = U V. Czyli R h = F, a co za tym idzie, R h = X Y. ) Wobec tego h ((X Y) = 1, czyli F = f.

Zależności funkcyjne Reprezentacja boolowska ( ) Załóżmy, że F = f i niech h : P A { 0, 1 } dane będzie wzorem: h(p x ) = 1 x [X] + A,F, x A Niech teraz U V F i niech h( p u ) = 1. Wówczas U [X] + A,F, u skąd także V [X] + A,F. Czyli h( p v ) = 1. v ) Tym samym wykazaliśmy, że h ((U V) = 1, dla zależności z F. Czyli, że h F { 1 }. Wobec ( tego h (X Y) ) = 1. Ponieważ X [X] + A,F, h( p x ) = 1, skąd h( p y ) = 1. Czyli Y [X] + A,F, a stąd F A X Y. x y

Zależności funkcyjne Reprezentacja boolowska Zastosowanie - nietwórczość atrybutów Uwaga Niech Atr(F) B A. Wówczas Jeśli X, Y B, to F A X Y F B X Y. Jeśli (XY) Atr(F) =, to F A X Y Y X

Zależności funkcyjne Wyznaczanie domknięć, kluczy i pokryć Wyznaczanie domknięcia Przykład N nauczyciel T termin S sala K klasa L lekcja P 1 df == { N, T, S, K, L }, { NT K, T S N, T K S, N L } P 2 df == { N, T, S, K, L }, { N L, T K N, T S N }

Zależności funkcyjne Wyznaczanie domknięć, kluczy i pokryć Uwaga X = (α β) X, α, β Cons

Zależności funkcyjne Wyznaczanie domknięć, kluczy i pokryć Zadanie Wyznacz domknięcie NT w P 1 Mamy F1 : 1. n + t + k 2. t + s + n 3. t + k + s 4. n + l Szukamy takiego maksymalnego zbioru { A 1,..., A n } { N, T, S, K, L }, że F 1 { n, t } { a 1 + + a n } jest sprzeczny.

Zależności funkcyjne Wyznaczanie domknięć, kluczy i pokryć Rozwiązanie Mamy: 1. n + t + k 2. t + s + n 3. t + k + s 4. n + l 5. n 6. t 7. k z 1,5,6 8. l z 4,5 9. s z 3,6,7 Widzimy, że dołożenie n + t + k + l + s usprzecznia zadanie. Czyli [NT ] + P 1 = NT KLS

Zależności funkcyjne Wyznaczanie domknięć, kluczy i pokryć Klucze Definicja Nadkluczem schematu S = A, D jest takie K A, że [K] + S = A. Klucz, to minimalny nadklucz.

Zależności funkcyjne Wyznaczanie domknięć, kluczy i pokryć Wyznaczanie kluczy Zadanie Znajdź klucze schematu P 2. Mamy: 1. n + l 2. t + k + n 3. t + s + l 4. n + t + k + l + s 5. n + t + k + s z 1,4 6. t + k + s z 2,5 Widzimy, że kluczem tutaj jest T KS.

Zależności funkcyjne Wyznaczanie domknięć, kluczy i pokryć Wyznaczanie (nad)kluczy Zadanie Znajdź klucze schematu P 1. Mamy: 1. n, t, k 2. t, s, n 3. t, k, s 4. n, l 5. n, t, k, l, s 6. n, t, l, s z 1,5 7. t, l, s z 2,5 8. t, k, l z 3,7 9. t, k, n z 4,8 Widzimy, że kluczemi tutaj są T LS, T KL i T KN.

Zależności funkcyjne Wyznaczanie domknięć, kluczy i pokryć Uwaga K jest nadkluczem wtw, gdy rezolwenta F, { p x : x A } zawiera { p x : x K }

Zależności funkcyjne Wyznaczanie domknięć, kluczy i pokryć Równoważność schematów Definicja Schematy S 1 = A, D 1 i S 2 = A, D 2 są równoważne, jeśli (Ozn. S 1 S 1 ) Rel(S 1 ) = Rel(S 2 )

Zależności funkcyjne Wyznaczanie domknięć, kluczy i pokryć Uwaga Schematy S 1 = A, D 1 i S 2 = A, D 2 są równoważne wtw, gdy D 1 = A D 2 oraz D 2 = A D 1 Dowód ( ) Niech { i, j } = { 0, 1 } R = D i R Rel(S i ) = Rel(S j ) R = D j Więc D i = A D j. ( ) To jest oczywiste.

Zależności funkcyjne Wyznaczanie domknięć, kluczy i pokryć Przykład P 1 P 2 bo P 2 NT K

Zależności funkcyjne Wyznaczanie domknięć, kluczy i pokryć Pokrycia nieredundantne Definicja Zależność X Y schematu S = A, D jest pełna, jeśli Y jest jednoelementowy oraz S Z Y dla Z X Zbiór zależności pełnych G jest pokryciem nieredundantnym schematu S, jeśli A, G S, ale A, G 1 S, dla G 1 G.

Zależności funkcyjne Wyznaczanie domknięć, kluczy i pokryć Wyznaczanie pokrycia Zadanie Wyznacz pokrycie ABCDEG, F, gdzie F = { AB C, C A, BC D, ACD B, D EG, BE C, CG BD, CE AG }

Zależności funkcyjne Anomalie Anomalie Skutki redundancji anomalie aktualizacji anomalie usuwania anomalie dopisywania

Zależności funkcyjne Anomalie R Nazwa (N) Adres (A) Towar (T) Cena (C) Ajax Akacjowa 15 Rower 1200 Bendix Źródlana 3 Skuter 800 Ajax Akacjowa 15 Lódka 3000 Bendix Źródlana 3 Rower 1100 Rymer Akacjowa 15 Maluch 500 Centor Polna 6 Lódka 2600 Leszcz Źródlana 16 Klucz: NT. N A, NT C

Zależności funkcyjne Anomalie R NA Nazwa Adres Ajax Akacjowa 15 Bendix Źródlana 3 Rymer Akacjowa 15 Centor Polna 6 Leszcz Źródlana 16 R NTC Nazwa Towar Cena Ajax Rower 1200 Bendix Skuter 800 Ajax Lódka 3000 Bendix Rower 1100 Rymer Maluch 500 Centor Lódka 2600 R (R NA ) (R NTC )

Zależności funkcyjne Anomalie Uwaga R NT A = N A

Zależności funkcyjne Anomalie Uwaga R = X Y R XY = X Y Dowód ( ) k, l R XY, k X = l X k1,l 1 R(k 1 XY = k, l 1 XY = l) k 1 X = l 1 X k Y = k 1 Y = l 1 Y = l Y ( ) k, l( R, ) k X = l X k XY, l XY R XY, k XY X = ( ) l XY X ( ) k XY Y = ( ) l XY Y k Y = k Y

Zależności funkcyjne Rozkładalność Rozkładalność Twierdzenie (Heath) Jeśli Σ X Y, to R (R XY ) (R XZ ), dla R Rel(Σ), gdzie Z = A \ XY.

Zależności funkcyjne Rozkładalność Dowód. ( ) Zachodzi zawsze. ( ) Niech k (R XY ) (R XZ ). Wówczas istnieją m, n R, że m XY = k XY i n XZ = k XZ Stąd, w szczególności, m X = k X = n X. Ponieważ R = X Y, m Y = n Y, Skąd k = k X k Y k Z = n X m Y n Z = n X n Y n Z = n R

Zależności funkcyjne Rozkładalność Twierdzenie Jeśli R (R XY ) (R XZ ), dla R Rel(Σ), gdzie Z = A \ XY, to Σ X Y lub Σ X Z

Zależności funkcyjne Rozkładalność Dowód. Niech R = [ k, l ], gdzie k(x) = d x 0, x A, zaś l(x) = d x 0, gdy x [X] + Σ oraz l(x) = d x 1, gdy x A \ [X] + Σ. Jak pamiętamy, R jest relacją schematu Σ, więc (R XY ) (R XZ ) R Ale l XY k XZ (R XY ) (R XZ ), więc l XY k XZ = k lub l XY k XZ = l. df Niech Y 0 == Y \ X. W pierszym wypadku l XY k XZ = k (l XY k XZ ) Y0 = k Y0 l Y0 = k Y0 skąd Y 0 [X] + Σ, a co za tym idzie, Σ X Y 0. Czyli także Σ X Y.

Zależności funkcyjne Rozkładalność W drugim przypadku, mamy: l XY k XZ = l (l XY k XZ ) Z = l Z k Z = l Z skąd Z [X] + Σ, a co za tym idzie, Σ X Z.

Zależności funkcyjne Rozkładalność Definicja Rozkładem odwracalnym schematu Σ jest zbiór A 1,..., A n A, dla którego R (R A1 )... (R An )

Zależności funkcyjne Rozkładalność Rozstrzyganie odwracalności Twierdzenie Istnieje algorytm rozstrzygający, czy A 1,..., A n A jest rozkładem odwracalnym schematu Σ.

Zależności funkcyjne Rozkładalność Przykład Zadanie Zbadać odwracalność rozkładu AB, AD, BE, CDE, AE schematu Σ = ABCDE, F, gdzie F == df { A C, B C, C D, CE A, DE C }

Zależności funkcyjne Rozkładalność Rozwiązanie k (R AB ) (R AD ) (R BE ) (R CDE ) (R AE ) k1,...,k 5 R k AB = k 1 AB k AD = k 2 AD k BE = k 3 BE k CDE = k 4 CDE k AE = k 5 AE

Zależności funkcyjne Rozkładalność A B C D E k 1 a b k 2 a d k 3 b e k 4 c d k 5 a e

Zależności funkcyjne Rozkładalność A B C D E a b 1 2 3 a 4 5 d 6 7 b 8 9 e 10 11 c d e a 12 13 14 e F : A C, B C, C D, CE A, DE C

Zależności funkcyjne Rozkładalność Rozwiązanie, cd. A B C D E a b 1 2 3 a 4 1 d 6 7 b 8 9 e 10 11 c d e a 12 1 14 e F : A C, B C, C D, CE A, DE C

Zależności funkcyjne Rozkładalność Rozwiązanie, cd. A B C D E a b 1 2 3 a 4 1 d 6 7 b 1 9 e 10 11 c d e a 12 1 14 e F : A C, B C, C D, CE A, DE C

Zależności funkcyjne Rozkładalność Rozwiązanie, cd. A B C D E a b 1 d 3 a 4 1 d 6 7 b 1 d e 10 11 c d e a 12 1 d e F : A C, B C, C D, CE A, DE C

Zależności funkcyjne Rozkładalność Rozwiązanie, cd. A B C D E a b c d 3 a 4 c d 6 7 b c d e 10 11 c d e a 12 c d e F : A C, B C, C D, CE A, DE C

Zależności funkcyjne Rozkładalność Rozwiązanie, cd. A B C D E a b c d 3 a 4 c d 6 a b c d e a 11 c d e a 12 c d e k = k 3 Rozkład jest odwracalny.

Zależności funkcyjne Zachowywanie zależności Rzut zbioru zależności Definicja Niech Σ = A, D będzie schematem. Rzutem schematu Σ na B A jest zbiór π B (Σ) df == { δ dep(b) : Σ = δ } Rozkład odwracalny A 1,..., A n zachowuje zależności D, jeśli π A1 (Σ)... π An (Σ) = D

Zależności funkcyjne Zachowywanie zależności Uwaga Niech B A, R Rel(Σ).Wówczas R B = π B (Σ)

Zależności funkcyjne Zachowywanie zależności Uwaga Jeśli C Atr(F) =, to π C (Σ) = Tryw(C) π Atr(F) (Σ) = Prv ΣArm (Atr(F))(F) Dowód Z reprezentacji boolowskiej i interpolacji Craiga. Z twierdzenia o nietwórczości.

Zależności funkcyjne Zachowywanie zależności Zachowywanie zależności Algorytm Dane: Σ { = A, F, A 1,..., A n, X Wynik: x A : } j π A j (Σ) = A X x = [X] + Program; begin repeat Z :=Z; until Z=Z ; return(x) end. Z:= n j=1 ( Aj [X A j ] + Σ) ;X:=X Z; j π A j (Σ)

Zależności funkcyjne Zachowywanie zależności Przykład Czy rozkład AB, BC, CD zachowuje zależności: F == df { A B, B C, C D, D A } Mamy: A B π AB (F), B C π BC (F), C D π CD (F)

Zależności funkcyjne Zachowywanie zależności Przykład Wyznaczamy [D] + π AB (F) π BC (F) π CD (F) D D (AB [AB D] + ) (BC [BC D] + ) (CD [CD D] + ) = D (CD [D] + ) = D (CD ABCD) = CD CD CD (AB [AB CD] + ) (BC [BC CD] + ) (CD [CD CD] + ) = CD (BC [C] + ) (CD [D] + ) = CD (BC ABCD) (CD ABCD) = BCD BCD BCD (AB [AB BCD] + ) (BC [BC BCD] + ) (CD [CD BCD] + BCD (AB [B] + ) (BC [BC] + ) (CD [CD] + ) = BCD (AB ABCD) (BC ABCD) (CD ABCD) = ABCD

Zależności funkcyjne Postacie normalne Atrybuty kluczowe Definicja Atrybut kluczowy (główny), to element pewnego klucza.

Zależności funkcyjne Postacie normalne Druga postać normalna Definicja Schemat jest w drugiej postaci normalnej, jeśli każdy atrybut niekluczowy jest w pełni zależny od każdego z kluczy. Ozn. Σ 2NF

Zależności funkcyjne Postacie normalne W tabeli a b c a 1 b 1 c 1 a 2 b 1 c 1 a 3 b 2 c 2 a 3 b 1 c 1 ab jest kluczem, c jest niekluczowy, a ab c nie jest pełna, bo R = b c.

Zależności funkcyjne Postacie normalne Zależności przechodnie Definicja Zależność X Y schematu Σ jest przechodnia, jeśli istnieje Z takie, że X Z, Z Y są nietrywialnymi zależnościami w Σ oraz, że Z X nie jest zależnością Σ. Zależność bezpośrednia, to zależność nie będąca przechodnią.

Zależności funkcyjne Postacie normalne R = a b c, R = b a k, l : k(b) = l(b) i k(a) l(a) k(c) = l(c) a b c a 1 b 1 c 1 a 2 b 1 c 1

Zależności funkcyjne Postacie normalne Trzecia postać normalna Definicja Schemat jest w trzeciej postaci normalnej, jeśli każdy atrybut niekluczowy jest w pełni bezpośrednio zależny od każdego z kluczy. Ozn. Σ 3NF

Zależności funkcyjne Postacie normalne Uwaga Schemat jest w trzeciej postaci normalnej, jeśli każda nietrywialna zależność atrybutu niekluczowego jest zależnością od nadklucza

Zależności funkcyjne Postacie normalne Dowód ( ) Niech Σ = X x będzie nietrywialną zależnością dla atrybutu niekluczowego x i niech K X będzie kluczem. Wówczas K X x jest ciągiem zależności nietrywialnych. Ponieważ Σ 3NF, mamy Σ = X K. Czyli X jest nadkluczem.

Zależności funkcyjne Postacie normalne ( ) Załóżmy, że każda zależność nietrywialna atrybutu niekluczowego jest zależnością od nadklucza i niech Σ = X Y, Y x będą nietrywialne, gdzie x jest niekluczowy. Wówczas jednak Y jest nadkluczem, skąd Σ = Y X. Tym sposobem, Σ 3NF.

Zależności funkcyjne Postacie normalne Postać normalna Boyce a-codda-kenta Definicja Schemat jest w postaci normalnej Boyce a-codda-kenta, jeśli każda jego nietrywialna zależność jest zależnością od nadklucza. Ozn. Σ BCNF

Zależności funkcyjne Postacie normalne Przykład a b c 0 0 0 1 0 0 0 1 1 2 2 0 b c, ac b, c a, a c Klucze: ab, ac.

Zależności funkcyjne Synteza i rozkład Synteza i rozkład Pankowski, Podstawy Baz Danych, PWN 1992

Zależności wielowartościowe Definicje i własności Zależności wielowartościowe Przykład podręcznik przedmiot uczeń profesor Gleichgewicht algebra Paweł Mądrala Gleichgewicht algebra Wojtek Mądrala R Gleichgewicht algebra Józek Pogodny Gleichgewicht algebra Piotr Pogodny Mostowski algebra Paweł Mądrala Mostowski algebra Wojtek Mądrala Mostowski algebra Józek Pogodny Mostowski algebra Piotr Pogodny Gleichgewicht algebra Stefan Mądrala Mostowski algebra Stefan Mądrala Fichtenholz analiza Piotr Mądrala Fichtenholz analiza Wojtek Mądrala Fichtenholz analiza Paweł Pogodny Fichtenholz analiza Józek Pogodny [{ prz algebra, prof Mądrala, uczen Piotr }] podr = R[{ prz algebra, prof Mądrala }] podr = = R[{ prz algebra, prof Pogodny }] podr = = R[{ prz algebra }] podr = = { Gleichgewicht, Mostowski } R[{ uczen Paweł }] podr = = { Gleichgewicht, Mostowski, Fichtenholz } R[{ uczen Paweł, prz algebra }] podr = { Gleichgewicht, Mostowski } =

Zależności wielowartościowe Definicje i własności Zależności wielowartościowe Definicja Relacja R T(A) spełnia zależność X Y, jeśli R[r XZ ] Y R[r X ] Y, dla dowolnej r R, gdzie Z df == A \ XY. Ozn. R = X Y

Zależności wielowartościowe Definicje i własności Uwaga R = X Y R[r X ] Y R[r XY ] Y dowód XZ = X (X Y) = X (X Y ) = X Y

Zależności wielowartościowe Definicje i własności Uwaga R = X Y R[r X ] Y R[r XC ] Y, C Y

Zależności wielowartościowe Definicje i własności Dowód ( ) k R[r X ] Y k = l Y, l R[r X ] R[r XY ] l XY = r XY l XC = r XC l R[r XC ] k R[r XC ] Y ( ) k R[r XC ] Y k = l Y, l R[r XC ] l XC = r XC l X = r X l R[r X ] k R[r X ] Y

Zależności wielowartościowe Definicje i własności Uwaga R = X Y wtw., gdy dla dowolnych krotek k, l R spełniających k X = l X, istnieje krotka m R, dla której k XY = m XY i l XZ = m XZ, gdzie Z = A \ (XY).

Zależności wielowartościowe Definicje i własności Dowód. ( ) Niech k, l R, k X = l X Mamy k R[l X ] k Y R[l X ] Y R[l XZ ] Y Istnieje zatem ( ) m R[l XZ ] takie, że m Y = k Y. Z ( ) jednak mamy m XZ = l XZ, skąd m XY = k XY, m XZ = l XZ.

Zależności wielowartościowe Definicje i własności ( ) ( ) Niech k R[r XZ ]. Wówczas k XZ = r XZ. Niech m R, spełnia m XY = k XY, m XZ = r XZ. W szczególności m R[r X ] oraz k Y R[r X ] Y. ( ) Niech k R[r X ]. Wówczas k R oraz k X = r X. Wobec tego istnieje m R, dla którego m XY = k XY, m XZ = r XZ. Wówczas m R[r XZ ] oraz k Y R[r XZ ] Y.

Zależności wielowartościowe Definicje i własności Rozkładalność Twierdzenie R = X Y R (R XY ) (R XZ )

Zależności wielowartościowe Definicje i własności Dowód. ( ) Niech n (R XY ) (R XZ ). Istnieją takie k, l R, że n XY = k XY oraz n XZ = l XZ. Istnieje m R, dla którego m XY = k XY i m XZ = l XZ Wtedy n = n XY n Z = k XY l Z = m XY m Z = m R

Zależności wielowartościowe Definicje i własności ( ) Niech k, l R i niech k X = l X. Wówczas k XY l XZ (R XY ) (R XZ ) R. Czyli m == df k XY l XZ jest szukaną krotką.

Zależności wielowartościowe Definicje i własności Wniosek gdzie Z = A \ (XY). R = X Y R = X Z,

Zależności wielowartościowe Definicje i własności Dowód. Mamy R = X Z R (R XZ ) (R X(XZ) ) = (R XZ ) (R XY ) = (R XY ) (R XZ ) R = X Y

Zależności wielowartościowe Definicje i własności Uwaga Zależność X Y jest trywialna wtw, gdy X Y = A lub Y X

Zależności wielowartościowe Definicje i własności Dowód. ( ) Niech Z df == A \ XY. Jeśli X Y = A, to Z =. Wtedy (R XY ) (R XZ ) = R (R X ) R Jeśli Y X, to X Z = A.Wtedy (R XY ) (R XZ ) = (R X ) R R

Zależności wielowartościowe Definicje i własności Dowód. ( ) Załóżmy, że X Y jest trywialna. Niech Z == df A \ XY i niech k(x) = d x 0, x A oraz niech l(x) = d x 0, x X, i l(x) = d x 1, x A \ X. Wówczas n == df k XY l XZ (R XY ) (R XZ ) R == df [ k, l ]. Jeśli n = k, to k Z = n Z = (k XY l XZ ) Z = l Z, skąd Z =, a co za tym idzie X Y = A. Jeśli zaś n = l, to l Y\X = n Y\X = (k XY l XZ ) Y\X = k Y\X, skąd Y \ X =, a co za tym idzie Y X.

Zależności wielowartościowe Definicje i własności Definicja D, δ zależności funkcyjne i wielowartościowe: D = A δ R (R = D R = δ)

Aksjomatyka dla zależności wielowartościowych Reguły systemu S MVD (A) Twierdzenie Następujące reguły są niezawodne: (Dopełnianie) r A compl : (Rozszerzanie MVD) r A mvext : (Przechodniość MVD) X Y X Z r A mvtrans :, Z = A \ XY X Y, W V XW YV X Y, Y Z X Z \ Y

Aksjomatyka dla zależności wielowartościowych Reguły systemu S MVD (A) Twierdzenie, cd. Następujące reguły są niezawodne: r mvfunc,1 : X Y X Y r mvfunc,2 : X Y, W Z X Z, Z Y, W Y =

Aksjomatyka dla zależności wielowartościowych Reguły systemu S MVD (A) dowód dopełnianie Mamy R = X Y R (R XY ) (R XZ ) R (R XZ ) (R XY ) R = X Z

Aksjomatyka dla zależności wielowartościowych Reguły systemu S MVD (A) dowód rozszerzanie Załóżmy, że R = X Y, U V. Niech dalej k, l R spełniają k XU = l XU. Stąd w szczególności k V = l V. Ponieważ także k X = l X, istnieje m R, spełniający m XY = k XY i m XY = l XY Mamy m XUYV = m XY m (UV) (XY) = k XY m (UV) X Y = = k XY l (UV) X Y = k XY k (UV) X Y = = k XUYV.

Aksjomatyka dla zależności wielowartościowych Reguły systemu S MVD (A) dowód rozszerzanie, cd. Dalej m XU(YV) = m (XU)Y V = m Y V m (XU) (Y V ) = = l Y V m (XU) (YV) = = l Y V m X (YV) m U X (YV) = = l Y V l X (YV) m U X Y m U X V Y = = l Y V l X (YV) k U X Y l U X V Y = = l Y V l X (YV) l U X Y l U X V Y = = l XU(YV). Czyli R = XU YV.

Aksjomatyka dla zależności wielowartościowych Reguły systemu S MVD (A) dowód przechodniość Niech R = X Y, Y Z i niech k, l R spełniają k X = l X. Istnieją zatem m, n R, że m XY = l XY i m XY = k XY oraz n YZ = m YZ i n YZ = l YZ Mamy n X(Z\Y) = n X n Z Y = k Z Y n X Z n X Z = = k Z Y n X Z l X Z = k Z Y n X Z k X Z = = k (Z Y )(X Z ) n X Z = k (Z Y )(X Z ) m X Z = = k (Z Y )(X Z ) k X Z = k X(Z\Y)

Aksjomatyka dla zależności wielowartościowych Reguły systemu S MVD (A) dowód przechodniość (m XY = l XY, m XY = k XY, n YZ = m YZ, n YZ = l YZ ) Mamy n X(Z\Y) = n XZ Y = n X Z n YZ = n X Z l YZ = = m X Z l YZ = l X Z l YZ = l X(Z\Y)

Aksjomatyka dla zależności wielowartościowych Reguły systemu S MVD (A) dowód r mvfunc,1 Było: R = X Y R (R XY ) (R XZ ) R = X Y

Aksjomatyka dla zależności wielowartościowych Reguły systemu S MVD (A) dowód r mvfunc,2 Niech Z Y i niech W Y =. Niech także R = X Y, W Z oraz niech k, l R spełniają k X = l X. Istnieje m R, dla którego m XY = k XY i m XY = l XY Ponieważ W Y, także m W = l W, skąd m Z = l Z. Skoro Z Y, mamy k Z = m Z = l Z

Aksjomatyka dla zależności wielowartościowych System formalny S MVD (A) System formalny S MVD (A) Definicja S MVD (A) df == MVD(A) Func(A), { r A ext, r A trans, r A compl, r A mvext, r A mvtrans, r A mvfunc,1, ra mvfunc,2, }, Tryw MVD (A) Niech Σ = A, D, D MVD(A) Func(A) Σ d, D A d d Prv SMVD (A)(D)

Aksjomatyka dla zależności wielowartościowych Twierdzenie o zgodności dla S MVD (A) Twierdzenie o zgodności dla S MVD (A) Twierdzenie Σ δ Σ = δ Dowód. indukcja na długość wywodu

Aksjomatyka dla zależności wielowartościowych Baza zależności Twierdzenie Następujące reguły są wyprowadzalne w S MVD (A): 1 X Y X Y 2 X Y, X Z X YZ 3 X Y, X Z X (Y Z)

Aksjomatyka dla zależności wielowartościowych Baza zależności Dowód. Ad. (1) 1. X Y założenie 2. Y A aksjomat 3. X A \ Y r mvtrans

Aksjomatyka dla zależności wielowartościowych Baza zależności Dowód. Ad. (2) 1. X Y założenie 2. X XY r mvext (1) 3. X Z założenie 4. X Z p. (1), 3 5. XY YZ r mvext (4) 6. X (YZ ) \ (XY) r mvtrans (2, 5) 7. X X Y Z (YZ ) \ (XY) = X Y Z 8. X X Y Z aksjomat 9. X Y Z r mvext (7, 8) 10. X YZ p. (1), 9

Aksjomatyka dla zależności wielowartościowych Baza zależności Uwaga Niech Σ = A, D i niech X, Y A. Σ X Y Σ X Y \ X Dowód. ( ) ( ) X Y, X X X Y \ X X Y \ X, X Y X X Y

Aksjomatyka dla zależności wielowartościowych Baza zależności Wniosek Niech Σ = A, D i niech X A. Zbiór B Σ (X) df == { Y A : Σ X Y } jest podalgebrą Boole a algebry (X).

Aksjomatyka dla zależności wielowartościowych Pełność systemu S MVD (A) Pełność systemu S MVD (A) Twierdzenie Niech Σ = A, D. Σ = δ Σ δ

Aksjomatyka dla zależności wielowartościowych Pełność systemu S MVD (A) Silne twierdzenie o pełności Uwaga Niech Σ = A, D. Istnieje relacja R, dla której R = δ Σ δ dla dowolnej zależności δ Func(A) MVD(A).

Aksjomatyka dla zależności wielowartościowych Reprezentacja boolowska Reprezentacja boolowska Definicja Niech X, Y A i niech (X Y) df == p x p y + x X y Y z Y p z

Aksjomatyka dla zależności wielowartościowych Reprezentacja boolowska Twierdzenie o reprezentacji boolowskiej Twierdzenie Niech Σ = A, D. D = A δ D = δ

Aksjomatyka dla zależności wielowartościowych Czwarta postać normalna Czwarta postać normalna Definicja Schemat S = A, D jest w czwartej postaci normalnej, jeśli każda nietrywialna zależność wielowartościowa jest zależnością od nadklucza.

Zależności złączeniowe Definicja Zależności złączeniowe Definicja Niech X 1... X n A. W R T(A) spełniona jest zależność X 1... X n jeśli (R X1 )... (R Xn ) (R X1...X n ) Ozn. R = X 1... X n

Zależności złączeniowe Definicja Eliminacja zależności wielowartościowych Twierdzenie R = X Y R = XY XY

Zależności złączeniowe Definicja Uwaga wtw, gdy ( k 1,...,k n R R = X 1... X n k i Xi X j = k j Xi X j (k X1 = k 1 X1,..., k Xn = k n Xn ) i,j n k R )

Zależności złączeniowe Definicja Dowód ( ) Niech k i Xi X j = k j Xi X j, i, j = 1,..., n. Wówczas k 1 X1... k n Xn (R X1 )... (R Xn ) R X1...X n skąd istnieje takie k R, że k 1 X1... k n Xn = k X1...X n, czyli też k X1 = k 1 X1,..., k Xn = k n Xn.

Zależności złączeniowe Definicja ( ) Niech m (R X1 )... (R Xn ). Istnieją k 1,..., k n R, że m X1 = k 1 X1,..., m Xn = k n Xn Oczywiście k i Xi X j = k j Xi X j, i, j = 1,..., n. Istnieje zatem k R, dla którego k X1 = k 1 X1,..., k Xn = k n Xn. Wtedy jednak, m X1...X n = k X1...X n, skąd m R X1...X n.

Zależności złączeniowe Definicja Uwaga Zależność X 1... X n jest trywialna wtw, gdy X j = n i=1 X i dla pewnego j = 1,..., n.

Zależności złączeniowe Definicja Dowód ( ) Niech k (R X1 )... (R Xn ). Istnieją l 1,..., l n R, dla których k X1 = l 1 X1,..., k Xn = l n Xn Ponieważ X 1,..., X n X j, l i Xi = l j Xi, dla i = 1,..., n. Mamy k X1...X n = i (k Xi ) = i (l i Xi ) = i (l j Xi ) = l j X1...X n R X1...X n

Zależności złączeniowe Definicja ( ) Niech k j (x) df == { d x 0, x X j d x 1, x A \ X j Oczywiście k i Xi X j = k j Xi X j, i, j = 1, 2,..., n. Ponieważ X 1... X n jest spełniona w [ k 1,..., k n ], istnieje takie j = 1,..., n, że k j X1 = k 1 X1,..., k j Xn = k n Xn Ustalmy i = 1, 2,..., n. Skoro k j Xi = k i Xi, mamy też k j Xi\X j = k i Xi\X j, co oznacza, że X i \ X j jest puste, skąd X i X j, dla wszystkich i = 1, 2,..., n

KONIEC