Diskussion:Synthesealgorithmus

Letzter Kommentar: vor 2 Jahren von 2A02:908:A20:FB20:4C1F:D544:A181:8528 in Abschnitt Synthesealgorithmus Linksreduktion

ACHTUNG - Das gehört bei einem Artikel mit "Anleitungen" und "Beispielen" nach oben: Die gezeigten Methoden und Beispiele sind FALSCH! Näheres weiter unten!

...wenn keine Hinweise auf grobe Fehler in den Artikel sollen, dann sollten die betroffenen Abschnitte entfernt werden. Macht das keiner, übernehme ich das in den nächsten Tagen. (nicht signierter Beitrag von 137.226.56.150 (Diskussion) 18:00, 30. Nov. 2011 (CET)) Beantworten

Zusätzlich zu den Mathematischen formeln, sollte es noch eine Erklärung in Textform geben, damit auch nicht-Mathematiker etwas damit anfangen können.


Was war die Ausgangssituation der funktionalen Abhängigkeiten im Beispiel?
War das?
{A}->{B,C}
{A,D}->{B}
{B,D}->{E}
{A,D}->{E}
Wann ist bei der Links- bzw. bei der Rechtsreduktion ein Attribut überflüssig?
Findet man das mit den Armstrong Axiomen raus?
Ist das Dekompositionsverfahren = der Synthesealgorithmus?


ich finde es fehlen die erklärenden Links für die math. Zeichen (für nicht-mathematiker) sowas? http://www.matheboard.de/mathe-tipp-zeigen,Mathematische_Zeichen.htm


Mark: Wie kann man hier diskutieren? einfach was anhängen?

Achtung: Der Artikel beschreibt doch nur die Kanonische Überdeckung das ist ein schritt von vieren zur Synthese.

Kann man solche Artikel nicht als unfertig markieren?

Der Einleitungstext liest sich auch etwas merkwürdig. Schließlich ist der "Zerlegungs-Algorithmus" keine Alternative, denn er liefert nicht die dritte Normalform.


das beispiel mit links- und rechtsreduktion ist doch falsch !! wer schliesst denn das ...
Relation(A,B,C,D,E)
{A} -> {B,C} # (bleibt) ;; B fällt weg. Attributhülle mit {A}->{C},{A}->{B} beinhalted C
{A} -> {B} # D fällt weg (Linksreduktion)  ;; jep
{B,D} -> {E} # bleibt
{A,D} -> {} # (E fällt weg (Rechtsreduktion)) ;; Attributhülle von {A,D} wäre dann {A,D} und hat kein E, also nicht weg

Dies hier vorgestellte ist nicht der Synthesealgorithmus zur Zerlegung in ein Relationsschema in 3NF! Sieht eher nach dem Algorithmus zur Berechnung der Basis einer Menge von funktionalen Abhängigkeiten aus!

--BigCrunsh 22:52, 28. Nov. 2006 (CET)Beantworten

Inkonsistenz der Bezeichner Bearbeiten

Leider haben bezeichnete Typen (Mengen, Attribute) nicht immer konsistent dieselben Bezeichner. Eine einheitliche Bezeichnung wäre wünschenswert (z.B. kleine griechische Buchstaben für die Mengen, große lateinische für Attribute). Die damit induzierte Verwechslung führt auch zum Fehler bei der Linksreduktion, wo es heißt: klein Gamma Teilmenge der Hülle, richtiger müsste es aber heißen, dass Gamma Element der Hülle sein muss. --Xasx 11:04, 17. Nov. 2008 (CET)Beantworten

Falscher Test für Linksreduktion? Bearbeiten

Beim Vergleich mit anderen Literaturstellen ist uns aufgefallen, dass der hier verwandte Test für die Linksreduktion von der sonst üblichen Forderung abweicht und zu streng ist, d.h. dass mit dem Test aus der Literatur mehr Reduktionen möglich sind als mit dem hier verwandten Test.

Hier wird verwendet:

  • Wenn   , dann kann   aus   entfernt werden.

Die Literatur (z.B. das deutsche Standardwerk von Kemper) verwendet:

  • Wenn   , dann kann   aus   entfernt werden.

Beispiel: Es liegen die folgenden funktionalen Abhängigkeiten vor:

  •  
  •  
  •  

Zu untersuchen ist nur die erste funktionale Abhängigkeit.

Nach dem hiesigen Test ist keine Linksreduktion möglich, weil gilt   (und auch  ).

Nach Kemper ist eine Linksreduktion möglich, weil   und damit   aus der ersten funktionalen Abhängigkeit entfernt werden darf.

Umgangssprachlich verlangt Kemper, dass man ein Attribut X der linken Seite weglassen darf, wenn man aus den restlichen Attributen der linken Seite ohne Kenntnis von X die Attributbelegungen der rechten Seite schließen kann.

Hier wird verlangt, dass man von den Attributen der linken Seite ohne X auf X selbst schließen können muss (und dann könnte man mit Transitivität auch auf die rechte Seite folgern). Das Beispiel zeigt jedoch, dass es auch andere Wege (ohne X) zur rechten Seite geben kann.

Gibt es für die Notwendigkeit des strengeren hier verwandten Tests irgendeine Quelle (dann wäre die hier anzugeben - und in vielen Lehrbüchern ein Fehler) oder sollte die gebräuchliche weniger strenge Definition aus der Literatur hier beschrieben werden. (Nebenbei: beide Tests führen im Beispiel zum selben Ergebnis.)

Nachtrag: habe gerade gesehen, dass die Seiten vor 11.10.2009 noch richtig waren und das hinterher (ohne erkennbare zugehörige Diskussion) geändert wurde. Weiß dazu jemand etwas?

--JNI72 21:45, 6. Jan. 2011 (CET)Beantworten

Offensichtlich hat jemand die Version ins fehlerhafte abgeändert. Wieso macht jemand sowas? Ich verstehe das nicht. Die Definition aus dem Kemper sind definitiv richtig. Dein Beispiel ist auch korrekt und zeigt den Fehler der jetzigen Version. (nicht signierter Beitrag von 138.246.2.72 (Diskussion) 21:27, 18. Jan. 2012 (CET)) Beantworten

Linksreduktion angepasst Bearbeiten

Ich habe soeben die Linksreduktion angepasst. Die neue Version muss aber noch gesichtet werden. Der Fehler der alten Version (siehe Dikussion) wurde behoben. Die jetzige Version ist mit dem Buch "Datenbanksysteme" von Kemper konform. (nicht signierter Beitrag von 138.246.2.72 (Diskussion) 22:04, 20. Jan. 2012 (CET)) Beantworten

Synthesealgorithmus Linksreduktion Bearbeiten

Muss in der FD AE -> B,D E nicht stehen bleiben? Denn wenn man die anderen Abhängigkeiten auf A -> B,D hin überprüft, würde man nur A -> B,E finden und sonst keine transitive Abhängigkeit mehr, die uns auf D führt. In diesem Beispiel hätten wir vorausgesetzt, dass A -> B,D schon gilt, was wir aber zeigen sollen und nicht gilt. Also ist die Hülle von A={A,B,E}?

--77.180.207.219 20:08, 23. Mär. 2013 (CET)Beantworten

Neuer Kommentar:Stimme dir zu, mir ist dieser Fehler auch aufgefallen, aber ich weiß nich so recht wie man ihn korrigieren kann ohne gleich das restliche Beispiel um zu schreiben :( Jemand ne Idee? Grüße J (25.09.16) (nicht signierter Beitrag von Alfredalfons (Diskussion | Beiträge) 19:15, 25. Sep. 2016 (CEST))Beantworten

Ich glaube das ist inkorrekt: Wir wollen ja unnötige Attribute der linken Seite entfernen. Da A -> B,E schon gilt, brauchen wir das E in der zweiten Abhängigkeit nicht mehr, weil es durch das A und die erste Abhängigkeit ja schon festgelegt ist.
Anders ausgedrückt: Ich finde E in der Attributhülle von A schon, also gilt A -> E und AE -> BD, dann gilt nach Pseudotransitivität schon A -> BD. ( Siehe Funktionale Abhängigkeit#Axiome von Armstrong .) --2A02:908:A20:FB20:4C1F:D544:A181:8528 21:12, 1. Feb. 2022 (CET)Beantworten