Dependența multivalorică (de asemenea MZZ ) este o generalizare a conceptului de dependență funcțională , utilizată pe scară largă în teoria bazelor de date . În conceptul de forme normale , este introdus pentru a defini formal a patra formă normală
Să existe o relație cu schema , precum și două subseturi arbitrare de atribute . Lasă .
În acest caz, depinde de , dacă și numai dacă setul de valori ale atributelor corespunzătoare perechii de relații date depinde și nu de .
Exprimată simbolic prin scriere
.
Oficial
O dependență cu mai multe valori este numită trivială dacă cel puțin una dintre următoarele condiții este adevărată:
Să presupunem că avem o relație care include o listă de discipline academice, literatura recomandată și numele lectorilor care predau cursurile corespunzătoare:
Disciplina | Carte | Lector |
---|---|---|
MatAn | Kudryavtsev | Ivanov A. |
MatAn | Fikhtengolts | Petrov B. |
MatAn | Kudryavtsev | Petrov B. |
MatAn | Fikhtengolts | Ivanov A. |
MatAn | Kudryavtsev | Smirnov V. |
MatAn | Fikhtengolts | Smirnov V. |
VM | Kudryavtsev | Ivanov A. |
VM | Kudryavtsev | Petrov B. |
Întrucât lectorii care citesc subiectul și cărțile recomandate pe subiect nu depind unul de celălalt, această relație conține o dependență multivalorică. Această atitudine are o serie de anomalii. Una dintre ele este că dacă vrem să recomandăm o carte nouă într-un curs MatAn, va trebui să adăugăm atâtea intrări noi câte lectori sunt în MatAn și invers.
Formal, există două MZZ-uri: {Disciplina} {Carte}|{Lector} .
În primul rând, este redundant. Și în al doilea rând, pentru o astfel de relație, este necesar să se dezvolte un mecanism suplimentar de control al integrității. Soluția optimă a problemei ar fi să descompunem relația în două cu titlurile {Disciplina, Carte} și {Disciplina, Lector} . O astfel de descompunere ar fi în 4NF . Admisibilitatea descompunerii este stabilită de teorema lui Fagin (vezi mai jos).
Fagin a arătat că dependențele cu mai multe valori formează perechi conectate (în notație de definiție):
.Prin urmare, ele sunt adesea reprezentate împreună în notație simbolică:
Orice dependență funcțională este multivalorică. Cu alte cuvinte, o dependență funcțională este o dependență cu mai multe valori în care setul de valori dependente corespunzătoare unei valori date a determinantului are întotdeauna puterea unitară .
În 1977, Bury, Fagin și Howard au descoperit că regulile de inferență ale lui Armstrong pot fi generalizate și extinse atât la dependențe funcționale, cât și la dependențe multivalorice.
Să presupunem că avem o relație și un set de atribute . Pentru a scurta înregistrarea, vom scrie în schimb simplu .
Grupa 1: reguli de bază.
Grupa 2: Sunt derivate mai multe reguli suplimentare pentru a simplifica sarcina de a deduce dependențe cu mai multe valori.
Grupa 3: Se stabilește o legătură între dependențele funcționale și cu mai multe valori.
Grupa 4: pentru dependențe funcționale, derivate din regulile de mai sus.
Regulile de inferență ale lui Armstrong, împreună cu regulile grupurilor 1 și 3 prezentate aici, formează o formă completă (folosindu-le, se pot deriva toate celelalte dependențe multi-valori implicate de setul lor dat) și de încredere („dependențe multi-valori suplimentare” nu pot fi dedusă; dependența multivalorică derivată este valabilă oriunde este un set de dependențe multivalorice din care a fost derivată) un set de reguli pentru deducerea dependențelor cu mai multe valori.
Să fie dat raportul . O relație va fi egală cu uniunea proiecțiilor sale dacă și numai dacă relația satisface o dependență multivalorică netrivială .
Această teoremă este o versiune mai strictă a teoremei lui Heath .