Diplomarbeit. Experimentelle Untersuchung von String B-Trees bezüglich ihrer Anwendbarkeit in Genom-Datenbanken und im Information Retrieval

Größe: px
Ab Seite anzeigen:

Download "Diplomarbeit. Experimentelle Untersuchung von String B-Trees bezüglich ihrer Anwendbarkeit in Genom-Datenbanken und im Information Retrieval"

Transkript

1 Diplomreit Experimentelle Untersuhung von String B-Trees ezüglih ihrer Anwendrkeit in Genom-Dtennken und im Informtion Retrievl Mnuel Sholz Betreuer: Prof. Dr. H. Shweppe, Prof. Dr. J. Stoye, Z. Knev Institut für Informtik Freie Universität Berlin

2 Inhltsverzeihnis 1. Einleitung Motivtion Zielsetzung Die String B-Tree Dtenstruktur Definitionen Ds Grundmodell des String B-Trees Ptrii Tries Ds erweiterte Modell des String B-Trees Opertionen uf String B-Trees Zusmmenfssung Implementierung Ziel der Implementierung Verwendete Algorithmen Der Prototyp: stree Wihtige Aspekte der Implementierung Erstellen eines eindeutigen Endmrkers Binärodierung der Worte Splitting-Opertion Ching Hintergrundspeiherzugriffe Plnung der Untersuhungen Einflussgrößen Messgrößen Opertionen Untersuhungen m B-Bum Experimentelle Untersuhungen Voremerkungen Zeitufwnd der Experimente Methodik der Untersuhungen Üerprüfung der theoretishen Aussgen

3 5.3 Tehnishe Untersuhungen Auswirkungen der Ches Verhältnisse der Messgrößen Optimler Knotengrd Ein- und Mehrworttextuntersuhungen Auswirkungen der Suhmusterlänge Untersuhungen der Alphetgröße Untersuhungen vershiedener Texte Voremerkungen Untersuhungsergenisse und Anlyse Vergleih mit der Suffix Tree Dtenstruktur Voremerkungen Suffix Trees (wotd) Untersuhungsergenisse und Anlyse Zusmmenfssung und Auslik Auslik Ashlussdiskussion Anhng Litertur

4 1. Einleitung 1. Einleitung 1.1 Motivtion Shon in den Anfängen des Computerzeitlters wurde die Eigenshft von Computern, große Dtenmengen effizient zu verwlten, erknnt und vielseitig genutzt. Im Lufe der Jhrzehnte und esonders in den letzten Jhren ht die omputergestützte Dtenverwltung stetig und so strk zugenommen, dss sie heutzutge prktish in llen Leensereihen Verwendung findet. Niht nur viele der großen Firmen esitzen Dtennken riesigen Ausmßes, uh in der Forshung und der Informtionsverwltung im Internet git es eine unüershure Menge n digitlen Informtionen. Zwei in diesem Zusmmenhng esonders ktuelle Geiete sind die Genforshung und ds Informtion Retrievl. Durh die in den letzten Jhren strk vorngeshrittene Sequenzierung einer Vielzhl von untershiedlihen Orgnismen existieren im Bereih der Gendtennken riesige Mengen n DNA-, Protein- und Beshreiungsdten, welhe ständig ktulisiert und durhsuht werden müssen. Auh im Informtion Retrievl git es viele Bereihe (Zeitungsrhive, Wörterüher, Enzyklopädien, Telefonüher, usw.), die gerde durh ds Internet mit einer täglih whsenden Zhl von Informtionen konfrontiert werden. Trotz des stetigen Tehnologiefortshrittes, welher shnellere und größere Speiher umfssende Computer hervorringt, ist eine effiziente Verwltung der Dten ktueller ls je zuvor. Aufgrund der immensen Größe der zu verwltenden Dtenmengen reihen selst die Huptspeihergrößen von großen Computern oft niht us, um die Dten komplett zu einhlten. D eine Änderung dieses Verhältnisses uh in Zukunft niht zusehen ist, git es esonders uf dem Geiet der persistenten Indexstrukturen für große Textorpor einen großen Bedrf n effizienten Algorithmen und Dtenstrukturen. Die isher in diesem Bereih häufig diskutierten Dtenstrukturen sind Suffix Trees [13,16] und Suffix Arrys [12], zwei typishe Dtenstrukturen, die für die Mustersuhe in großen Textorpor konzipiert sind und einige Vritionen der klssishen B-Bum Struktur, wie z.b. der Präfix B-Bum [2], welher zum Teil uh Verwendung in Dtennksystemen findet. In der Areit "The String B-Tree: A New Dt Struture for String Serh in Externl Memory nd Its Applitions" von P. Ferrgin und R. Grossi (1999) wird eine neurtige persistente Indexstruktur, der String B-Tree 1 vorgestellt. Aufgrund seiner Struktur, die eine Verindung von B-Bäumen und Ptrii-Tries [10] ist, esitzt der String B-Tree vielversprehende Eigenshften. Im Gegenstz zum Suffix Tree knn der String B-Tree durh seine B-Bum Struktur niht entrten. Er ht somit ds gleihe Worst Cse 1 Im Folgenden wird immer die englishe Form des Nmens verwendet, d eine Teilüersetzung niht sinnvoll ersheint. 4

5 1. Einleitung Verhlten wie ein B-Bum, knn dei jedoh Strings mit elieiger Länge verwlten, ws mit einem B-Bum niht möglih ist. Der String B-Tree ietet sih somit gut für die Mustersuhe in großen Textorpor n. Trotz dieser vielversprehenden Eigenshften der String B-Tree Dtenstruktur git es isher nur zwei unveröffentlihte Areiten [5,14], die experimentelle Untersuhungen n Implementierungen der String B-Tree Dtenstruktur durhgeführt hen. Die erste Areit ist eine experimentelle Untersuhung von den Autoren selst [5]. Sie führt einen Vergleih zwishen den Implementierungen von String B-Trees, Suffix Arrys und Präfix B-Bäumen durh. Dei wird nur die Anzhl der Festplttenzugriffe etrhtet, Ausführungszeiten werden dei niht erüksihtigt. Die Areit von K. R. Rose [14] etrhtet den Bereih der Dtennken und vergleiht die String B-Tree Implementierung mit dem Dtennksystem Sleepyt. Es ist jedoh isher keine Studie einer String B-Tree Implementierung ezüglih ihrer Anwendung in Genom-Dtennken und im Informtion Retrievl eknnt. Im Rhmen dieser Areit soll diese Studie nhnd experimenteller Untersuhungen der String B-Tree Dtenstruktur durhgeführt werden. 1.2 Zielsetzung Ziel der Diplomreit ist die experimentelle Untersuhung der String B-Tree Dtenstruktur speziell im Hinlik uf die Bereihe Genom-Dtennken und Informtion Retrievl. Diese Untersuhungen sollen n einer selsterstellten Implementierung des String B-Trees, die uf den in [6,5] erläuterten Algorithmen siert, durhgeführt werden. Als Eingedten erhält die Implementierung elieige Texte, us denen sie einen String B-Tree konstruiert, der die Gesmtheit ller Suffixe der Worte des Textes enthält. D die exkte Sustringsuhe in den zu untersuhenden Anwendungsereihen eine große Rolle spielt, liegt der Shwerpunkt dieser Areit uf der Betrhtung dieser Suhopertion. Die Ausge der gefundenen Elemente wird dei niht erüksihtigt, sondern nur üerprüft, o der gesuhte Sustring im Text enthltenen ist oder niht. Anhnd dieser Suhopertion sollen die Eigenshften der String B-Tree Dtenstruktur experimentell untersuht werden. Dei werden die Auswirkungen der Einflussgrößen der Dtenstruktur selst (Bumgröße, Knotengröße) ls uh die Einflussgrößen der verwendeten Textdten (Alphetgröße, Struktur des Textes) untersuht. Weiterhin wird ein erster Vergleih mit der Suffix Tree Dtenstruktur durhgeführt, die ereits ei der Mustersuhe in großen Textorpor in der Prxis Anwendung findet. In erster Linie werden in den Untersuhungen die Ergenisse der Gesmtzeiten etrhtet. Die Messungen der Festplttenzugriffe und der CPU-Zeit werden dei nur ls Hilfsgrößen für die Anlyse der Ergenisse verwendet. 5

6 1. Einleitung Bsierend uf den Ergenissen der experimentellen Untersuhungen soll eine Ashätzung üer die Eigenshften des String B-Trees in der prktishen Anwendung und dessen Eignung für die Anwendung in den Bereihen Genom-Dtennken und Informtion Retrievl getroffen werden. 6

7 2. Die String B-Tree Dtenstruktur 2. Die String B-Tree Dtenstruktur Der String B-Tree ist eine sehr ktuelle Dtenstruktur, die speziell für den Umgng mit großen, homogenen Dtenmengen, die sih im Hintergrundspeiher efinden, optimiert wurde. Insesondere für ds Speihern und Durhsuhen von großen Textdtennken (z.b. Zeitungsrhive, Gendtennken) sind die String B-Trees gut geeignet. Die zugrunde liegende Idee dieser Struktur ist, einen B + -Bum ähnlihen Aufu mit einer sehr kompkten und für die Stringsuhe optimierten Bumstruktur, dem Ptrii Trie [10], zu verknüpfen. Dei dient ersterer für die Anordnung der Knoten im Hintergrundspeiher und letztere für die Suhe innerhl der Knoten. Der folgende Text soll eine Einführung in die Dtenstruktur geen. Dei werden zunähst die Rndedingungen und die Definition festgelegt, dnh der grundlegende Aufu und die Anordnung der Dten in den Knoten erklärt und shließend die Funktion und ds Lufzeitverhlten der Suhopertion nlysiert. 2.1 Definitionen Um die Nottionen innerhl der gesmten Areit konsistent zu hlten, sollen n dieser Stelle die Rhmenedingungen und die Definitionen der häufig verwendeten Größen gegeen werden: Als Speihermodell wird die klssishe 2-Stufen-Hierrhie (wie in [4] vorgeshlgen) verwendet, die von einem egrenzten und shnellen Huptspeiher und einem lngsmen unegrenzten Hintergrundspeiher usgeht. Der Hintergrundspeiher ist in festgelegte Speiherereihe (Seiten) unterteilt. Die Seitengröße wird im Folgenden mit s ezeihnet. Sei eine endlihe und geordnete Menge, ds Alphet. Die Größe von sei m = und * sei die Menge ller Zeihenketten üer Sei Z eine endlihe Zeihenkette (Eingedten), so dss gilt: Z Die Länge von Z sei z = Z. Sei Z [q,r] ein Sustring (Teilzeihenkette) us Z, von der Stelle q is zur Stelle r mit 1 q r z und Z[q] ein Zeihen us Z n der Stelle q mit 1 q z. Sei Z [q,u], mit q u r ein Präfix, Z [t,r], mit q t r ein Suffix und Z [t,u], mit q t u r ein Sustring von Z [q,r]. Ein Suhmuster P der Länge p P ist in Z enthlten, wenn gilt: i \ { 0 }: Z [i,i+ P -1] = P. *. Die Zeihenkette Z enthält n n Stellen, mit n \ { 0 } ein estimmtes 7

8 Experimentelle Untersuhung von String B-Trees 2. Die String B-Tree Dtenstruktur Endmrkersymol, welhes die Zeihenkette in n einzelne Worte unterteilt, so dss für jedes Wort w = Z [x,y] gilt: Z x 1 $ x 1 Z y 1 $ $ Z x,y g sei der Knotengrd der String B-Tree Knoten und k v der Füllungsgrd (Anzhl der Elemente im Knoten) eines Knotens v. 2.2 Ds Grundmodell des String B-Trees Wie im Nmen der Dtenstruktur ereits zu erkennen ist, ht der String B-Tree von seiner Grundstruktur eine große Ähnlihkeit mit den B-Bäumen, genuer gesgt mit B + -Bäumen. Wie der B + -Bum speihert er mehrere Elemente 2 in einem Knoten, welhen er ei einem Zugriff jedesml us dem Hintergrundspeiher lädt. Der Grd g eines String B-Trees git n, wie viele Elemente in einem Knoten enthlten sein können. Dei gilt im gesmten Bum folgende Invrinz: g 1 e 2 g 1 (mit e = Anzhl der Elemente im Knoten). Die Elemente im Knoten sind der Größe nh geordnet und entsprehend dieser Ordnung git es mehrere (hängig vom Füllungsgrd des Knotens) Verweise uf Kinderknoten. Die Elemente in den inneren Knoten dienen (wie eim B + -Bum) nur zur korrekten Anordnung der Blätter, welhe dnn die eigentlihen Elemente (zw. Referenzen uf jene) enthlten. Ordnet mn lle Elemente der Blätter entsprehend derer (lexikogrphishen) Ordnung n, so erhält mn eine geordnete Liste ller Worte des Textes. Dies ist ein enormer Vorteil ei der Präfixsuhe, uf den später noh genuer eingegngen wird. Ein Untershied des vereinfhten Modells des String B-Trees zum B + -Bum esteht nun drin, dss die Elemente im Knoten niht die Worte selst, sondern nur Referenzen (Pointer) uf den Anfng der Worte sind. Die Anordnung der Pointer rihtet sih entsprehend nh der Ordnung der zugrunde liegenden Worte. Um lle diese Eigenshften esser zu verdeutlihen folgt eine Beispielildung (Aildung 1) und ihre Erklärung. Der untere Bildrnd zeigt die Dten, die in einer Dtei liegen und in diesem Fll mit den Zhlen 1 is 70 indiziert sind. Ds dunkle Kästhen nh jedem Wort ist der ereits erwähnte Endmrker. Im oeren Bereih sieht mn eine vereinfhte Form des String B- Trees. Die Zhlen in den Knoten geen die Verweise uf die Dtei n. Bei einem Verweis muss nur uf den Anfng des Wortes gezeigt werden, d ds Ende durh den Endmrker ngegeen ist. Die Elemente in den Knoten sind entsprehend ihren Verweisen geordnet, so dss z.b. der Inhlt des mittleren rehten Knotens (38, 23) die Ordnung der Worte klein und pyrmide drstellt. 2 In der gesmten Areit sind dmit usshließlih Strings gemeint. 8

9 2. Die String B-Tree Dtenstruktur k l u s i l o k t z e r m p y r m i d e k l e i n k e l s e i l k e k s e i m e r s e n f v o g e l Aildung 1: Vereinfhte Drstellung eines String B-Trees Die Verweise uf die Kinderknoten unterliegen der gleihen Ordnung, so dss ds Element rehts von einem Verweis jeweils eine Oergrenze für lle Elemente des drunter liegenden Teilumes drstellt. Geht mn im Beispiel von der linken Knte des oersten Knotens us, so weiß mn, dss lle untergeordneten Elemente uf Worte verweisen, welhe lexikogrphish kleiner ls ktze sind. Wie weiter oen shon erwähnt efindet sih die Gesmtheit ller Worte eines String B- Trees geordnet in seinen Blättern, so dss ei diesem Beispiel die fünf Blätter von links nh rehts trversiert, die Verweise uf lle Worte in geordneter Reihenfolge (von rm is vogel) enthlten. Wie gesgt ist ds momentn verwendete Modell nur eine vereinfhte Version des String B-Trees und in dieser Form ntürlih niht ruhr, d es durh die Verweise in den Knoten zu viel Hintergrundspeiherzugriffe enötigen würde. Bemerkung Ds hier eshrieene (und in dieser Form llgemein eknnte) B + -Bum Modell weiht von dem in [6] vorgeshlgenen Modell leiht. Dieses esitzt für jeden Verweis uf einen Kinderknoten niht nur ein zugehöriges Element (ls Oergrenze), sondern jeweils ein Pr von Elementen, ds die Oer- und die Untergrenze der Elemente des drunter liegenden Teilumes repräsentiert. Der dort eshrieene Vorteil der geringeren Komplexität wr niht nhvollziehr, ws zu dem Entshluss führte, ds llgemein ülihe Modell zu verwenden. 2.3 Ptrii Tries Die Huptidee, welhe die String B-Trees mit ihren Eigenshften so interessnt werden lässt, ist die Einindung von Ptrii Tries in deren Knoten. Wrum ds so vorteilhft ist, 9

10 2. Die String B-Tree Dtenstruktur und wodurh dies erreiht wird, soll in diesem Ashnitt erklärt werden. Ptrii Tries sind eine ezüglih Speiherpltzeffizienz optimierte Art der sogennnten Tries (trie von Retrievl). Aufgrund des verwndten Aufus werden zuerst zwei ähnlihe (er einfhere) Trie-Strukturen erläutert und druf sierend der Ptrii Trie erklärt. Tries Tries wurden ls Dtenstruktur entwikelt, um in ihnen grosse Textmengen (estehend us vielen einzelnen Strings) zu speihern, nh denen dnn im Trie möglihst optiml gesuht werden soll. Um dies zu erreihen, mhen sih die Tries die gemeinsmen Präfixe der Strings zunutze. Suht mn lso nh einem Wort "", so etrhtet mn dei nfngs uh lle Worte, welhe einen gleihen Präfix (wie z.b. "") esitzen. Dmit solhe unnötigen Betrhtungen vermieden werden, speihert der Trie diese Informtionen nur einml. Zusmmengefsst lutet die Definition dieser Bumstruktur wie folgt: Ein Trie ist eine m- äre Bumstruktur, welhe die in ihr gespeiherten Strings von der Wurzel n uhstenweise in den Knten speihert. Somit ergit die Konktention der Buhsten ller Knten von jedem Weg der Wurzel zu einem Bltt die im Trie enthltene Wortmenge. Am esten lssen sih ll die gennnten Eigenshften n einem Beispiel eshreien, ds in Aildung 2 gegeen ist. Aildung 2: Einfher Trie Der in diesem Beispiel gezeigte Trie einhltet folgende Strings: ",,,, ". Strtet mn nun n der Wurzel und folgt den Knten is zu einem Bltt, so läuft mn eines der fünf enthltenen Worte. Wie oen ereits erklärt, sieht mn hier, dss die gemeinsmen Präfixe der Strings nur einml im Bum vorkommen, ws Pltz und somit (ei der Suhe) uh Zeit sprt. Erst ei voneinnder weihenden Strings 10

11 2. Die String B-Tree Dtenstruktur verzweigt der Trie. Compted Tries Bei dem isherigen Modell wurde pro Knte immer nur ein Buhste (Symol) gespeihert, ws für grosse Textmengen ein erheliher Pltzverruh ist. Der Compted Trie verringert diesen deutlih, in dem er die im Bum enthltenen Ketten zusmmenzieht. Durh die Ttshe, dss ei einer Kette von Knten immer nur eine Möglihkeit der Trversierung esteht, ist es möglih die Informtionen ller Knten dieses Weges uf einer Knte zusmmenzufssen. Drus folgt, dss die Knten uh mehrere Buhsten einhlten können. Ds Resultt ist der sogennnte Compted Trie; es folgt ein Beispielum in Aildung 3, welher die gleihen Strings wie der ereits gezeigte Trie enthält. Aildung 3: Beispiel für einen Compted Trie Ptrii Tries Der letzte Shritt der Komprimierung (der uf dem Compted Trie ufut) wird in den Ptrii Tries durhgeführt und ist in diesem Fll verlustehftet, ws edeutet, dss ein Teil der ursprünglihen Informtionen verloren geht. Später wird jedoh gezeigt, dss trotz der geringen Informtionsmenge weiterhin eine eindeutige Suhe in diesem Trie möglih ist. Der Untershied zwishen Compted und Ptrii Tries esteht drin, dss eim letzteren nur noh der erste Buhste jeder Knte erhlten leit, nämlih genu der Buhste, der für die Verzweigung der Knten verntwortlih ist. Somit esitzt ein Ptrii Trie zwr genuso viele Knten wie ein Compted Trie, er enthält er pro Knte nur einen Buhsten (den sogennnten Brnhing Chrter). 11

12 2. Die String B-Tree Dtenstruktur Im Gegenstz zu den isher vorgestellten Tries muss der Ptrii Trie jedoh zusätzlih die ktuelle Länge des Teilstrings in jedem Knoten speihern, wodurh der Ptrii Trie insgesmt trotzdem pltzeffizienter ls der Compted Trie ist. Speziell eim Ptrii Trie im String B-Tree git es den Untershied, dss in jedem Bltt niht ds Wort selst, sondern nur eine Referenz druf enthlten ist. Es folgt Aildung 4, die noh einml die Untershiede zwishen den eiden Tries deutlih mht Aildung 4: Untershied zwishen einem Compted und einem Ptrii Trie Suhe in Ptrii Tries Aufgrund der sehr kompkten und verlustehfteten Speiherung der Strings im Ptrii Trie stellt sih die Frge, wie mn in dieser Dtenstruktur möglihst effizient suhen knn. Dei geht es um die Positionssuhe des Suhmusters im Ptrii Trie, d dies für die Suhe im String B-Tree notwendig ist. Druf soll er erst in den Folgeshnitten genuer eingegngen werden. Diese etws kompliziertere Suhe uf einem Ptrii Trie lässt sih grundsätzlih in zwei Phsen unterteilen: Die erste Phse der Suhe (Blind Serh) führt nur einen ungenuen Vergleih durh, dessen Ziel es ist, ein Wort mit dem longest ommon prefix (lp-wort) zu finden. Dzu wird ds Suhmuster nur mit den Brnhing Chrters im Ptrii Trie verglihen. Je nh Vergleih wird dnn die entsprehende Knte gewählt und der Bum so lnge trversiert, is ein Bltt zw. ds Ende des Suhmusters erreiht ist. Endet die Suhe in einem Bltt, so muss ds Wort im Bltt den lp esitzen. Dei ist zu ehten, dss enhrte Worte (welhe den gleihen Vterknoten esitzen) eenflls den gleihen lp esitzen können, wenn ds Suhmuster z.b. shon eine Eene höher von llen Folgeelementen vershieden ist. Diese Ttshe mht mn sih zunutze, wenn die Suhe mitten im Bum endet (wenn ds Suhmuster zu kurz ist). Mn weiß nun, dss lle drunter liegenden Kinder einen 12

13 2. Die String B-Tree Dtenstruktur gemeinsmen lp esitzen. Folglih wird us den drunter liegenden Worten ein elieiges usgewählt. Ein Beispiel für eine im Bltt endende Suhe ist in Aildung 5 uf der linken Seite gegeen. In der zweiten Phse (Verifiktion) wird ds gefundene Wort nun enutzt, um die korrekte Position des Suhmusters zu estimmen. Dzu werden eide Worte verglihen und die erste Stelle estimmt, n der die eiden Worte niht mehr üereinstimmen (Fehlstelle). Mit Hilfe des Buhstens n der Fehlstelle estimmt mn den entsprehenden Nhfolgeknoten. Von diesem us knn nun die korrekte Position des Suhstrings (eenflls durh Vergleih mit dem weihenden Buhsten) estimmt werden. In der folgenden Beispielildung (Aildung 5, rehts) git es nur einen Nhfolgeknoten. Die korrekte Position des Suhmusters ist vor dem kleinsten Nhfolgeltt, d der Buhste n der Fehlstelle kleiner ist ls lle nderen. Fehlstelle Fehlstelle 3 0 W = Vergleihe } W = 4 Nhfolgeknoten Korrekte Position von W Korrekte Position von W }gemeinsmer Präfix Aildung 5: Suhe in einem Ptrii Trie (1. und 2. Phse) 2.4 Ds erweiterte Modell des String B-Trees Nhdem in den isherigen Ashnitten uf die einzelnen Teile des String B-Trees eingegngen wurde, soll nun deren Zusmmenwirken, lso der String B-Tree ls gnzes etrhtet werden. Dei wird niht nur dessen Funktion, sondern uh dessen Komplexität nlysiert. Betrhtet mn die in Ashnitt 2.2 eingeführte B + -Bum Struktur, so sieht mn shnell, dss die Effizienz (wie eim B-Bum) erhelih von der Größe der Knoten zw. deren Grd hängt. Je mehr Elemente nun in einen Knoten pssen, desto größer ist der Verzweigungsgrd des Bumes und desto geringer seine Höhe und dmit uh die Zhl der Zugriffe uf den Hintergrundspeiher. Durh die große Zhl n Elementen innerhl des Knotens werden jedoh im Knoten mehr Vergleihe und somit uh mehr Hintergrundspeiherzugriffe enötigt. Ds liegt drn, dss im Knoten niht die eigentlihen Elemente, sondern nur deren Verweise stehen, so muss ei jedem Vergleih im Knoten uf den Hintergrundspeiher zugegriffen werden. Selst wenn mn im Knoten 13

14 2. Die String B-Tree Dtenstruktur niht sequentiell (O(k) Zugriffe 3 ), sondern mit Hilfe eines inären Bumes suht, so eträgt die Zhl der Hintergrundspeiherzugriffe immer noh O(lo g k). Um in der B- Bum Struktur von der Knotengröße zu profitieren, ohne dei zu viele Zugriffe im Knoten selst zu hen, ruht mn eine von der Größe unhängige Verwltung der Elemente im Knoten. Diese Anforderung erfüllt der Ptrii Trie, d er sehr kompkt ufgeut ist und ei einer Suhe nur einen Zugriff uf den Hintergrundspeiher (Textdtei) enötigt. Dies ist leiht m Suhlgorithmus zu erkennen: Ds Ergenis der ersten Suhphse ist ds lp-wort, welhes in der zweiten Phse mit dem Suhmuster verglihen wird. Dieser Zugriff ist der einzige in der Suhe, der enötigt wird, um die korrekte Position des Suhmusters zu estimmen. Die Vergleihsuhsten (Brnhing Chrters) uf den Knten sind lle im Ptrii Trie selst enthlten. Durh die Verknüpfung von B + -Bum Struktur und Ptrii Tries (für die Verwltung der Eemente in den Knoten) ergeen sih für den String B-Tree pro Suhnfrge O p / s log g n 1 Zugriffe uf den Hintergrundspeiher. Dei ist zu ehten, dss durh die kompkte Dtenhltung in den Ptrii Tries sehr viele Elemente in einem String B-Tree Knoten gespeihert werden können und somit uh g im llgemeinen reltiv groß ist. Ashließend folgt die Aildung (Nr. 6) eines String B-Tree Modells, welhes noh einml die Verknüpfung von B + -Bum Struktur und Ptrii Trie verdeutliht. Im Gegenstz zum ersten Modell sind niht nur die Worte selst, sondern uh deren Suffixe in den Bum eingefügt worden. Dies ist notwendig für eine exkte Sustringsuhe, die im nähsten Ashnitt im Detil erklärt wird. Die Ptrii Tries in den Knoten der Aildung sind nur symolhft und stimmen niht mit der ttsählihen Struktur üerein. Nhdem gezeigt wurde, wie der String B-Tree ufgeut ist, und welhe Eigenshften sih drus ergeen, soll shließend uf die Opertionen des String B-Trees eingegngen werden. 3 Wenn es niht nders ngegeen wird, so ist im Folgenden die O-Nottion im Text immer uf die Zhl der Hintergrundspeiherzugriffe und niht uf die der Rehenopertionen ezogen. 14

15 2. Die String B-Tree Dtenstruktur k l u s i l o k t z e r m p y r m i d e Aildung 6: String B-Tree (detillierte Drstellung) 2.5 Opertionen uf String B-Trees In diesem Ashnitt werden nur die für diese Areit relevnten grundlegenden Opertionen (Suhen und Einfügen) uf String B-Trees ehndelt. Andere und komplexere Opertionen wie z.b. ds Löshen oder die Ähnlihkeitssuhe wurden weggelssen, d sie für die experimentellen Untersuhungen niht relevnt sind (vgl. Ashnitt 4.3). Suhe Die Suhopertion ähnelt wiederum strk der Suhe in herkömmlihen B-Bäumen. Es wird eim Wurzelknoten egonnen und dnn Shritt für Shritt die Bumstruktur trversiert. In jedem Knoten wird die Position des Suhelementes estimmt und dementsprehend der nähste Kinderknoten gewählt zw. die Suhe eendet, wenn ds Element ereits gefunden wurde. Als Rükge liefert die Suhopertion entweder den Fundknoten und die Fundposition in dem Knoten oder einen Wert, der den Misserfolg signlisiert. Präfix- und Sustringsuhe Gerde in der Anwendung in Gendtennken und im Informtion Retrievl ist es oft 15

16 2. Die String B-Tree Dtenstruktur niht von so großer Bedeutung, eine komplette Wortsuhe durhzuführen, sondern vielmehr den Präfix eines Wortes zw. einen Sustring in einem Wort oder Stz wiederzufinden. Im Folgenden soll die Vorgehensweise dieser eiden Suhnfrgen uf String B-Trees erklärt werden. Ziel der Präfixsuhe ist es, lle Worte eines Textes zu finden, die den gesuhten Präfix enthlten. Dei ist es niht notwendig, jedes einzelne Wort mit dem Präfix zu vergleihen, d mn sih die (lexikogrphishe) Ordnung der Worte zunutze mhen knn. Ein ehter Präfix ( Präfix < Wort ) eines Wortes ist entsprehend dieser Ordnung immer kleiner ls ds Wort selst. Betrhtet mn die lexikogrphish ufsteigend geordnete Menge ller Worte des Suhtextes, so stellt mn fest, dss sih ein eingeordneter Präfix von einem zw. mehreren Wort(en) genu n der Position vor diesen efinden würde. So z.b. der Präfix "mn" ei der geordneten Wortfolge: "..., mn, mnhml, Mndel, Mngel,...". Aufgrund dieser Ttshe ist für eine Präfixsuhe nur die Positionsestimmung innerhl der geordneten Bumstruktur notwendig. Diese Suhe entspriht genu der Verknüpfung der eiden Suhen uf B + -Bum und Ptrii Trie, die ereits eshrieen wurden. Ht mn diese Position gefunden, so muss mn den String B-Tree nur noh dieser Position in der Ordnungsreihenfolge so lnge trversieren (und die Worte usgeen), is mn uf ein Wort trifft, ds niht mehr den gesuhten Präfix esitzt. Wie shon in Ashnitt 2.2 eshrieen ist dies in der B + -Bum Struktur sehr einfh und in linerer Zeit möglih. Bei der exkten Sustringsuhe in einem String B-Tree greift genu der gleihe Suhlgorithmus wie ei der gerde eshrieenen Präfixsuhe. Der eigentlihe Untershied zur Präfixsuhe esteht in der zugrunde liegenden Menge der Strings. Für die Sustringsuhe wird die Menge der zu durhsuhenden Strings us den Suffixen ller Worte des Textes geildet, ds heißt für jedes Wort im Text werden seine l (mit l = Wortlänge) Suffixe der Menge der zu durhsuhenden Strings hinzugefügt. Durh eine Präfixsuhe uf diesen Suffixen ergit sih leiht ersihtlih eine Sustringsuhe uf der Menge der ursprünglihen Worte. Dies ht zur Folge, dss in den String B-Trees häufig die Menge ller Suffixe der gegeenen Worte in den Bum eingefügt wird, d ei vielen Anwendungen nur eine Sustringsuhe relevnt ist. Die in dieser Areit etrhtete Sustringsuhe git keine Ergenisse zurük, sondern üerprüft nur, o der Sustring enthlten ist oder niht. Im folgenden Teil der Areit soll mit der Suhe immer die soeen eshrieene exkte Sustringsuhe, lso die Präfixsuhe uf der Menge ller Suffixe gemeint sein. Folglih sind mit den Elementen des String B-Trees fortn immer die Suffixe der Worte (zw. des Wortes) der Eingedten (Texte) gemeint. Einfügen Auh die Einfügeopertion der String B-Trees ähnelt, wie lle nderen isher gennnten Opertionen und Eigenshften, der entsprehenden Opertion im B-Bum. Wenn die 16

17 Experimentelle Untersuhung von String B-Trees 2. Die String B-Tree Dtenstruktur Knoten, die ei der Suhe uf dem Weg zur Einfügestelle trversiert werden, lle einen usreihend kleinen Füllungsgrd hen, so wird ds etreffende Element einfh in die Liste der Elemente des entsprehenden Knotens eingefügt. Wird uf dem Weg zur Einfügestelle ein Knoten trversiert, der ereits den mximlen Füllungsgrd esitzt, so wird dieser Knoten gesplittet. Durh dieses Splitten, ds eenflls eim Wurzelknoten durhgeführt wird, ergit sih eine uslnierte Bumstruktur. D dies für B-Bäume ereits lnge eknnt und usführlih erklärt wurde (vgl. [3]), soll n dieser Stelle niht genuer uf ds Einfügen und ds dmit verundene Splitten eingegngen werden. 2.6 Zusmmenfssung Ashließend sollen in diesem Ashnitt lle wihtigen Eigenshften des String B-Trees und die drus resultierenden Folgerungen ngeführt werden. Dies ist eine Zusmmenfssung der wihtigsten Aussgen us [6], welhe zum Verständnis ngepsst wurden: Der String B-Tree ist eine externe Dtenstruktur, welhe die Struktur eines B + -Bumes mit Ptrii Tries verknüpft, in dem es diese für die Verwltung der Dten innerhl der Knoten verwendet. Um die korrekte Position des Suhmusters im Knoten festzustellen, enötigt der Ptrii Trie dei nur einen Zugriff uf die Textdtei. Im gesmten String B- Tree werden niht die eingefügten Worte selst, sondern nur deren Verweise verwendet. Aus diesen Eigenshften lssen sih folgende Aussgen leiten: Durh die Verwendung von Verweisen uf die Worte und der kompkten Dtenhltung in den Ptrii Trie ist es dem String B-Tree möglih, Worte elieiger Länge zu verwlten. Durh die Verwendung der B + -Bum Struktur sind String B-Trees eine usgeglihene Bumstruktur und hen somit ds gleihe Worst Cse Verhlten wie B-Bäume. Die exkte Sustringsuhe enötigt im Worst Cse O(p/s + l og g n ) Hintergrundspeiherzugriffe. Ds Einfügen eines Suffixes enötigt im Worst Cse O(q/s + l og g n ) Hintergrundspeiherzugriffe (mit q = Suffixlänge). 17

18 3. Implementierung 3. Implementierung Nhdem im letzten Ashnitt die Struktur und die Opertionen des String B-Trees erklärt wurden, soll in diesem Ashnitt uf die prktishe Umsetzung (Implementierung) des Modells eingegngen werden. Dei sollen verstärkt die Aweihungen und Besonderheiten der Implementierung im Vergleih zu dem in [6] vorgestellten Modell erüksihtigt werden. Bereits vorhndene Implementierungen Zum jetzigen Zeitpunkt ist keine vollständige zw. zugänglihe Implementierung, sondern nur die Existenz dreier Prototypen eknnt. Diese Aussge eruht uf eigener Reherhe und der Aussge von R. Grossi. Aus welhen Gründen keine Informtionen zu diesen Prototypen veröffentliht wurden und wrum nsheinend niht n ihnen weitergereitet wurde, ist mir niht eknnt. Es stellte sih lso niht die Frge, o für die im Rhmen dieser Areit geplnten Untersuhungen uf eine ereits vorhndene Implementierung zurükgegriffen werden soll, sondern es ist von vornherein vorgesehen, eine eigene Implementierung der String B- Tree Struktur zu relisieren. 3.1 Ziel der Implementierung Wie ereits in der Zielsetzung der Diplomreit zu erkennen, ist ds Huptziel der Implementierung eine däqute Umsetzung der String B-Trees für eine experimentelle Untersuhung deren Eigenshften. Aufgrund der Ttshe, dss dies die erste zugänglihe Implementierung ist, soll weiterhin uf eine erweiterre und gut dokumentierte Progrmmierung gehtet werden. Die Möglihkeit, die vorhndene Implementierung für prktishe Anwendungen zu erweitern, soll eenflls gegeen sein. Durh diese Zielsetzungen git es jedoh uh eine klre Agrenzung der Implementierung und einige Aspekte, die ewusst zurükgestellt wurden. D ei den experimentellen Untersuhungen die Auswirkungen vershiedenster Einflussgrößen uf ds Lufzeitverhlten des String B-Trees im Vordergrund stehen und der prktishe Vergleih mit nderen Dtenstrukturen nur exemplrish etrhtet wird, ist in erster Linie ds reltive Verhältnis der Ergenisse (und niht deren solute Werte) wihtig. Aus diesem Grund wurden ufwendige Optimierungen weitestgehend weggelssen. Ein weiteres Gegenrgument ist eine durh die Optimierungen wesentlih shwerer verständlihe Implementierung, ws im Gegenstz zu den oen gennnten Punkten (Erweiterrkeit, Dokumenttion) steht. Als letzter Punkt ist festzuhlten, dss in der Implementierung niht lle denkren Opertionen der String B-Trees umgesetzt worden sind, sondern nur die für die Untersuhung notwendigen Punkte implementiert wurden. Es wurde jedoh druf 18

19 3. Implementierung gehtet, dss ei einer weiterführenden Areit diese Opertionen ohne weiteres eingereitet werden können. Aufgrund dieser Eigenshften ist diese Implementierung eenflls ls ein Prototyp zu etrhten. 3.2 Verwendete Algorithmen In diesem Ashnitt soll kurz uf die in der Implementierung verwendeten Algorithmen und die sih drus ergeenen Proleme eingegngen werden. D die eiden Areiten von P. Ferrgin und R. Grossi [6,5] die einzigen eknnten Quellen sind, welhe den String B-Tree usreihend erklären, siert die Mehrheit der verwendeten Algorithmen druf. Durh ds hohe Astrktionsniveu des Pseudoodes der Algorithmen g es in vielen Bereihen eine Vielzhl von Implementierungsmöglihkeiten, welhe in den meisten Fällen gründlih nlysiert und usgewertet werden mussten ehe eine Auswhl für den Prototyp getroffen werden konnte. D die Algorithmen für die B-Bum Struktur niht ngegeen sind, wurden die B-Bum Algorithmen us [4] verwendet. Die Splittingopertion ei den Ptrii Tries wurde eenflls niht eshrieen. Es konnte uh keine Quelle gefunden werden, die einen Algorithmus für diese eshreit, so dss ein eigener Algorithmus für ds Splitting der Ptrii Tries entwikelt wurde, welher die in [6] eshrieenen Anforderungen erfüllt und später detillierter erklärt wird. Weitere Angen zum Prototyp finden sih im Anhng oder unter wo uh der Quellode des Prototyps zu finden ist. 3.3 Der Prototyp: stree Progrmmiersprhe Aufgrund der oen gennnten Ziele der Implementierung wurde diese in der Progrmmiersprhe C relisiert, die ufgrund ihrer Eigenshften m esten dfür geeignet ist. Betrhtet mn Implementierungen von nderen Dtenstrukturen, die in der Prxis Anwendung finden, so sieht mn, dss die große Mehrheit in C umgesetzt wurde. Ds ist in erster Linie uf die hohe Ausführungsgeshwindigkeit von C zurükzuführen. Weiterhin ist C eine sehr systemnhe Sprhe, ws eenflls für die Implementierung von Dtenstrukturen prktishe Vorteile ht, d viele Zugriffe (Hupt- und Hintergrundspeiher) sehr systemnh progrmmiert werden sollten, um eine estmöglihe Nutzung der Systemressouren zu erreihen. Ein weiterer wihtiger Vorteil von C ist dessen Portierrkeit, die gerde im Hinlik uf die Weiterverwendung meiner String B-Tree Implementierung ein wihtige Rolle spielt. Der Prototyp stree ist in ANSI C geshrieen und somit sowohl unter Solris und Linux (g) ls uh unter Windows (l) luffähig. 19

20 Experimentelle Untersuhung von String B-Trees 3. Implementierung Progrmmstruktur des Prototyps Ds Progrmm ist in drei Module ufgeteilt: stree Ds Huptprogrmm, ds die Opertionen (Einfügen und Suhen) des String B-Trees und eine Testumgeung enthält. Weiterhin einhltet es untergeordnete Opertionen, wie z.b. Split-Node, welhe zum Einfügen in den String B-Tree enötigt werden. snode Dieses Progrmm enthält den Dtentyp und die Opertionen für einen String B-Tree Knoten. Solh ein Knoten esteht us einem Ptrii Trie, welher mit einem Feld, ds die Nhfolgerliste enthält, verknüpft ist. filepros, enwordpros, stkpros Die Hilfs- und Hintergrundroutinen sind in drei Bereihe ufgeteilt. Ein Progrmmteil (filepros) enthält sämtlihe Dteizugriffsroutinen, ein weiterer (enwordpros) lle Wortopertionen (Wortlänge, Binärodierung, usw.) und einer (stkpros) die Implementierung eines Stks. Weitere Informtionen zur genuen Struktur und zum Aufu des Prototyps sind in der Progrmmdokumenttion enthlten. 3.4 Wihtige Aspekte der Implementierung Auf eine Gesmteshreiung des Prototyps wird n dieser Stelle verzihtet. Jedoh sollen einzelne interessnte Aspekte der Implementierung erwähnt werden, d sie zum Teil sehr hilfreih für ds spätere Verständnis einiger Untersuhungsergenisse sind Erstellen eines eindeutigen Endmrkers Wie P. Ferrgin und R. Grossi in [5] vorshlgen, wird im Prototyp "stree" ein eindeutiger Endmrker hinter jedes Wort des Textes geshrieen, dmit für jedes eingefügte Wort die Eindeutigkeit gewährleistet sein knn. Der Endmrker wird ls Teil des Wortes ehndelt. Um die Eindeutigkeit des Endmrkers zu gewährleisten, werden diese zusätzlih fortlufend nummeriert. Dies geshieht durh eine Zhl, die sih hinter dem Endmrkersymol efindet. Es folgt eine Beispielildung. 20

21 3. Implementierung Wie mn in der Aildung erkennen knn, würde es ohne den eindeutigen Endmrker eim einfügen dieser Dten zwei gleihe Strings, nämlih den String dose geen, d er einml ls gnzes Wort und einml ls Suffix des Wortes zukerdose in den Bum eingefügt werden würde. Durh den Endmrker jedoh ergeen sih die eiden (ungleihen) Strings dose$1245 und dose$1247. Ds eigentlihe Prolem gleiher Worte und Präfixe von nderen Worten liegt in der Ptrii Trie Struktur, welhe ddurh komplexer (und somit uh weniger effizient) werden würde. Es knn ddurh niht mehr gewährleistet werden, dss in jedem Bltt des Ptrii Tries genu ein Element enthlten ist. Grundsätzlih ist die Implementierung einer solhen Vrinte möglih, diese wird jedoh us den ereits gennnten Gründen der shlehten Effizienz niht in Betrht gezogen. Betrhtet mn die prktishe Anwendung im Hinlik uf die Endmrker, so müssten die Eingedten noh einml vorverreitet werden. Dies ist er nur notwendig ei Texten mit mehreren Worten (z.b. Wörterühern), d Eingedten, die nur ein Wort enthlten, durh ihr Dteiende ereits mit einem eindeutigen Endmrker versehen sind Binärodierung der Worte Ein wihtiger Teil der String B-Tree Implementierung ist die Umsetzung der Ptrii Tries. D ds ereits eshrieene theoretishe Modell in jedem Knoten 0 is m (m = Alphetgröße) Knten zu den Kinderknoten zulässt, müssen lle Kntenlisten entweder ls weniger effiziente dynmishe Struktur umgesetzt werden oder sie verruhen ls sttishes Feld wesentlih mehr Speiherpltz. Aus der unregelmäßigen Zhl der Kinderknoten ergeen sih zusätzlih Proleme ei der Aildung uf den Hintergrundspeiher. Um diese Proleme zu vermeiden, shlgen P. Ferrgin und R. Grossi in [5] eine Binärodierung der Eingeworte vor. Die prktishen Vorteile, die sih drus ergeen, sind sofort ersihtlih, wenn mn ds Beispiel in Aildung 8 etrhtet. Durh die Codierung ht der Trie keine m-äre, sondern eine inäre Struktur, die wesentlih einfher und somit effizienter zu implementieren ist. D jeder Knoten (mit Ausnhme der Wurzel) genu zwei Kinder esitzt, können diese einfh in einem zweielementigen Feld gespeihert werden, ds einen wesentlih shnelleren Zugriff ermögliht. Zusätzlih ist eine kompkte Aildung uf den Hintergrundspeiher durh einen einfhen Preorder Wlk zu relisieren. 4 4 Die Aildung uf den Hintergrundspeiher ist in [5] usführlih eshrieen. 21

22 3. Implementierung = = = it Codierung Ein weiterer in [5] ngesprohener Vorteil ist die Unhängigkeit vom Eingelphet. Im "stree" Prototyp sind durh eine 8 Bit Codierung Alphetgrößen von (Ein Zeihen ist für den Anfng des Endmrkers reserviert) möglih. Es wurde eine sttishe Codierungsgröße von 8 Bit verwendet, weil der Dtenzugriff in Byterstern effizienter ist ls der Zugriff uf einzelne Bits. Außerdem entsteht durh die längeren Worte im Trie kein Nhteil, d diese dnn viele Stellen mit gleihen konstnten Werten esitzen, welhe im Ptrii Trie komprimiert werden. Der Ptrii Trie wird somit uh niht größer. Die Codierung der Bits entspriht der einfhen inären Umsetzung der Zhlenwerte des ASCII Codes der Zeihen. Ddurh ergit sih für die Ordnung im Bum keine lexikogrphishe, sonderen eine dem ASCII Wert zugrunde liegende Ordnung. Die Ordnung ist jedoh unerhelih, so lnge sie in der gesmten Implementierung konsistent leit. Die eigentlihe Codierung der Eingedten geshieht niht duerhft, sondern ist in den Opertionen des Ptrii Tries gekpselt. Diese Opertionen finden Verwendung, wenn der Bum trversiert wird oder zwei Worte miteinnder verglihen werden. Die Dten im Hintergrundspeiher werden dei niht verändert Splitting-Opertion Aildung 8: Beispielildung eines inären Ptrii Tries D der Splitting Algorithmus für inäre Ptrii Tries selst entwikelt wurde und somit keine Quelle dfür existiert, soll er n dieser Stelle genuer erläutert werden. Ist ein Knoten in einem String B-Tree voll (d.h. er enthält 2 Grd 1 Elemente), so muss er gesplittet werden. Im Gegenstz zu einem normlen B-Bum ist im Knoten kein Feld, sondern eine Bumstruktur, der Ptrii Trie, enthlten. Diese Bumstruktur muss nun 22

23 3. Implementierung eim Splitten durh einen senkrehten "Shnitt" in zwei Teile geteilt werden. Dei ist zu ehten, dss es sih in dem Prototypen niht um m-äre, sondern wie oen eshrieen um inäre Ptrii Tries hndelt. Die Ange einer Splitstelle ist eine reine Positionsnge und ezieht sih nur uf die Positionen der Blätter, d der restlihe Teil des Bumes nh ußen hin gekpselt (niht sihtr) ist. Ds Prolem dei ist, dss die "Nht" der Splitstelle durh die gesmte Bumstruktur verläuft und deswegen üerll erüksihtigt werden muss. Um lso üerll im Bum usreihend Informtionen üer die Splitnht zu esitzen, muss zumindest der Teilum, in dem die Nht verläuft, komplett durhlufen werden. Prktisherweise wird eim Lden eines Knotens ei der Umwndlung der persistenten Drstellung in die Huptspeiherpräsenttion einml der komplette Ptrii Trie durhlufen. Bei diesem Vorgng werden im Prototypen die zusätzlih notwendigen Informtionen in den Ptrii Trie Knoten gespeihert. Diese Informtion esteht im Grunde nur us der ktuellen Position des Knotens ezüglih der Blätterliste: Die korrekte Position in den Blättern entspriht einfh deren horizontle Anordnung und in den inneren Knoten entspriht diese der größten Position im linken Teilum. In Aildung 9 sind die Positionsngen die Zhlenwerte, die in den Knoten enthlten sind Split Splitstelle Splitstelle Aildung 9: Splitten eines inären Ptrii Tries (Die Zhlen in den Knoten repräsentieren die Position ezüglih der Blätterliste) Verfügt mn üer diese Angen, so ist es möglih in jedem Knoten festzustellen, o dieser sih rehts oder links von der Splitstelle efindet. Mit Hilfe dieser Informtion knn mn nun den Bum von der Wurzel us trversieren. Dei wird immer die Knte gewählt, die in die Rihtung der Splitnht geht. In der Aildung ist dieser Weg mit einer dikeren Linie hervorgehoen. Jedesml, wenn ei der Trversierung eine Rihtungsänderung uftritt, lso die Splitnht gekreuzt wurde, muss die een trversierte 5 Um die Aildung so klr wie möglih zu gestlten, wurden lle weiteren Inhlte des Ptrii Tries weggelssen. (Die Zhlen in den Knoten repräsentieren in diesem Shuild niht die Länge des gespeiherten Strings!) 23

24 3. Implementierung Knte neu usgerihtet werden, so dss sie niht mehr die Splitnht kreuzt und ddurh lle Invrinten im Bum erhlten leien. Ds ist gewährleistet, wenn die Knte uf den Knoten verweist, n dem die nähste Rihtungsänderung stttfindet. In der Aildung ist der Fll gezeigt, in dem zwr keine Rihtungsänderung stttfindet, jedoh genu die Splitstelle (Innerer Knoten mit Position 4) gefunden ist. Ist die gerde gennnte Aruhedingung (Splitstelle gefunden) erfüllt, so wird die unterste Knte neu usgerihtet und somit der Knoten n der Splitstelle gelösht. Ist ds eigentlihe Splitten der Bäume getn, so muss (je nh Splitstelle) für einen der eiden Bäume eine neue Wurzel gefunden werden, dmit die Eigenshften des Ptrii Tries erhlten leien Ching Ein sehr wihtiger Aspekt für die gesmte Speiherhierrhie eines Rehners und somit uh für den Zugriff uf den Hintergrundspeiher stellt ds Ching (Puffern) dr. Ziel des Chings ist es, so viele Zugriffe wie möglih uf den in der Hierrhie tieferen (und somit lngsmeren) Speiher zu vermeiden. Grundsätzlih ist die Verwendung eines progrmminternen Puffers ei String B-Trees von großem prktishen Nutzen, d ein intensiver Dtenustush zwishen Hupt- und Hintergrundspeiher stttfindet. Im Hinlik uf die Ziele dieser Areit ergeen sih us der Implementierung eines Puffers wenig nutzen, sondern eher Nhteile ei den Untersuhungen. D in den Untersuhungen die Eigenshften einer String B-Tree Implementierung etrhtet werden, ist eine möglihst klre Umsetzung der Struktur nötig, dmit deren Eigenshften deutliher erkennr sind. Durh Hinzufügen eines Puffers wird die Implementierung zwr veressert und ddurh shneller und effizienter (ws in der prktishen Anwendung uh notwendig ist), ei den Messergenissen ergit sih jedoh eine unerwünshte Verzerrung und somit ein unklres Bild der zugrunde liegenden Struktur. Ein weiterer Nhteil ergit sih us rein prktishen Üerlegungen. D der String B-Tree für große Textorpor konzipiert wurde, die um ein vielfhes größer ls der verwendete Huptspeiher sind, zeigen sih die zu untersuhenden Eigenshften des String B-Trees ntürlih uh erst ei diesen sehr großen Dtenmengen. Die verwendete Implementierung enutzt niht den gesmten Huptspeiher, sondern nur so viel, wie für einen String B-Tree Knoten und die eiden Dtenpuffer enötigt wird; es wird kein weiterer Knoten gepuffert. Ddurh zeigen sih die Eigenshften des String B- Trees shon ei verhältnismäßig kleinen Bumgrößen. Es knn lso unnötiger Aufwnd n Speiherpltz und Zeit vermieden werden, ohne dei die reltiven Ergenisse zu verfälshen. Aus een gennnten Gründen wurde in der Implementierung des Prototyps uf die Verwendung eines selst implementierten Puffers verzihtet. Speziell für den Vergleih mit nderen Dtenstrukturen und für die Anwendung ist ein Puffer ntürlih unverzihtr 24

25 3. Implementierung und einer der ersten Aspekte, der ei einer Weiterführung des Prototyps umgesetzt werden müsste Hintergrundspeiherzugriffe Durh den intensiven Geruh des Hintergrundspeihers ergit sih der Huptnteil n der Geshwindigkeit der Implementierung us der Effizienz der verwendeten Zugriffsmethoden. D für die experimentellen Untersuhungen nur ein uf den String B- Tree ezogener Vergleih notwendig ist, wurden für die Implementierung des Prototyps nur die Stndrd-Ein- und Ausgeroutinen (fred, fwrite) verwendet. Bei einer uf dem Prototyp ufuenden Implementierung, welhe für die prktishe Anwendung oder stärker für den Vergleih mit nderen Dtenstrukturen genutzt werden soll, ist die Verwendung von effektiveren Methoden (wie z.b. Memory Mpping 6 ) eine wihtige Vorussetzung. Auf solhe Veresserungen soll hier jedoh niht im Detil eingegngen werden, d diese mit der eigentlihen Implementierung nihts zu tun hen. 6 Dmit ist ds in UNIX C verwendete Memory Mpping (mmp) gemeint. 25

26 4. Plnung der Untersuhungen 4. Plnung der Untersuhungen Nhdem ds Modell des String B-Trees und im Anshluss die wihtigsten Eigenshften des implementierten Prototyps erklärt wurden, soll nun der zentrle Aspekt dieser Areit, die experimentellen Untersuhungen, ehndelt werden. In diesem Kpitel wird die Plnung und Vorereitung der Experimente erklärt. In dem dnh folgenden Kpitel werden dnn die einzelnen Untersuhungsergenisse vorgestellt. Wie ereits in der Einführung eshrieen, hndelt es sih ei den String B-Trees um eine sehr ktuelle Dtenstruktur, üer die es isher nur drei eknnte Areiten [6,5,14] git. Trotz dieser Ttshe sind ereits zwei experimentelle Untersuhungen der String B-Tree Dtenstruktur vorhnden. Die eine Areit [5] ist eenflls von P. Ferrgin und R. Grossi. In ihr wird ein Vergleih zwishen den Implementierungen des String B-Trees, des Suffix Arrys und des Präfix B-Bumes durhgeführt. Der Vergleih eshränkt sih jedoh nur uf die Anzhl der Festplttenzugriffe, die in der jeweiligen Implementierung gezählt wurden. Dei wurden die vershiedenen Ches von Festpltte und Betriesysstem ewusst niht erüksihtigt. Bis uf eine kurze Erwähnung eim Vergleih mit Präfix B- Bäumen wurden keine Lufzeiten gennnt. Aufgrund dieser eingeshränkten Betrhtung lssen sih diese Ergenisse niht für diese Areit verwenden und werden im Folgenden niht weiter erüksihtigt. Die Ergenisse der nderen experimentellen Areit von K. R. Rose [14], welhe eine String B-Tree Implementierung mit dem Dtennksystem Sleepyt vergleiht, ist eenflls für diese Areit unerhelih. Durh den Vergleih mit einem Dtennksystem sind die untersuhten Anwendungsfälle speziell uf diesen Kontext ezogen und für die in dieser Areit durhgeführten Untersuhungen ezüglih Genom-Dtennken und Informtion Retrievl prktish kum von Bedeutung. Als erster Shritt in der Vorereitung stellt sih die Frge, von welher Art und welhem Umfng die durhzuführenden Experimente sein sollen. Dei ergeen sih drei Bereihe:! Üerprüfung der theoretishen Aussgen Diese Untersuhung soll die in [6] gegeen theoretishen Aussgen für die enötigten Hintergrundspeiherzugriffe nhnd der Implementierung üerprüfen. Konkret werden dei die exkte Sustringsuhe, welhe O(p/s + l og g n ) und ds Einfügen, ds O(q/s + l og g n ) Zugriffe enötigt, untersuht. Dei soll etrhtet werden, inwieweit sih diese Aussgen in die prktishen Anwendungsfälle üertrgen lssen.! Untersuhung der Eigenshften des String B-Trees Dieser Bereih ildet den Shwerpunkt der gesmten Untersuhungen. In ihm sollen sowohl die Eigenshften des String B-Trees selst (Bum- und Knotengröße) ls uh sein Verhlten ezüglih vershiedener Dtenmengen mit untershiedliher Struktur (Alphetgröße, Zeihenverteilung, Repetitivität) nhnd von Experimenten untersuht werden. Aufgrund dieser Ergenisse soll festgestellt werden, für welhe Anwendungsfälle der String B-Tree gut zw. weniger gut geeignet ist. Bei dieser Bewertung sollen esonders die Suhopertion und die Bereihe Genom-Dtennken 26

27 4. Plnung der Untersuhungen und Informtion Retrievl erüksihtigt werden. " Vergleih mit einer nderen Dtenstruktur Der Vergleih mit einer nderen Dtenstruktur ist nur ein untergeordneter Teil, der eine erste Bewertung der Prxisrelevnz ermöglihen soll. Die zu vergleihende Dtenstruktur sollte deshl eine für Genom-Dtennken und Informtion Retrievl konzipierte Dtenstruktur sein. Auf einen usführlihen Vergleih mit einer zw. mehreren nderen Dtenstrukturen wird verzihtet, d dies den Rhmen dieser Areit sprengen würde und somit eher ein sinnvoller Anstz für weiterführende Areiten wäre. Aufgrund der Festlegung dieser Bereihe muss nun eine konkrete Betrhtung der für die Untersuhung notwendigen Einfluss- und Messgrößen durhgeführt werden. 4.1 Einflussgrößen Im Folgenden sollen sämtlihe Einflussprmeter ngegeen und im einzelnen eshrieen werden. " Prmeter der Dtenstruktur Diese Prmeter umfssen die veränderlihen Größen der Dtenstruktur und der Implementierung. " Größe des String B-Trees Die Größe des String B-Trees, die durh die Anzhl seiner Elemente gegeen ist, stellt eine entsheidende Einflussgröße dr, welhe in sämtlihen Untersuhungen erüksihtigt werden muss. Sie ist sehr vriel und wird durh die zugrunde liegende Textgröße z estimmt. " Grd der Knoten des String B-Trees Der Knotengrd und die drus resultierenden Knotengröße wirkt sih direkt uf die Höhe des Bumes us und ist esonders in Hinlik uf die Üerprüfung der theoretishen Aussgen eine relevnte Größe. In den tehnishen Untersuhungen wird der optimle Wert experimentell ermittelt und für lle Folgeuntersuhungen festgesetzt. " Der Dtenpuffer Die Größe des Dtenpuffers git n, wie viele Dten ei einem Festplttenzugriff 7 in den Huptspeiher gelden werden. " Dtenprmeter Mit der Bezeihnung Dtenprmeter sind lle veränderren Einflussgrößen ezüglih der zugrunde liegenden Eingedten (Textorpor, Genomdten, et.) gemeint. Alle ufgeführten Dtenprmeter werden in den experimentellen Untersuhungen erüksihtigt und zum Teil isoliert etrhtet. 7 Dmit ist ein Festplttenzugriff im Dtenmodell gemeint, welhes im Folgeshnitt Messgrößen eshrieen wird. 27

Algorithmen auf Sequenzen Volltext-Indexdatenstrukturen: Suffixbäume

Algorithmen auf Sequenzen Volltext-Indexdatenstrukturen: Suffixbäume Algorithmen uf Sequenzen Volltext-Indexdtenstrukturen: Suffixäume Sven Rhmnn Genominformtik Universitätsklinikum Essen Universität Duisurg-Essen Universitätsllinz Ruhr Motivtion Bei wiederholten Suhen

Mehr

Übungen zur Vorlesung Modellierung WS 2003/2004 Blatt 11 Musterlösungen

Übungen zur Vorlesung Modellierung WS 2003/2004 Blatt 11 Musterlösungen Dr. Theo Lettmnn Pderorn, den 9. Jnur 24 Age 9. Jnur 24 A x, A 2 x, Üungen zur Vorlesung Modellierung WS 23/24 Bltt Musterlösungen AUFGABE 7 : Es sei der folgende prtielle deterministishe endlihe Automt

Mehr

Ober- und Untersummen, Riemann Integrale

Ober- und Untersummen, Riemann Integrale Oer- und Untersummen, Riemnn Integrle 1. Ds Prolem des Fläheninhlts Ausgngspunkt für die Entwiklung des Integrlegriffs wren vershiedene Frgestellungen, u.. ds Prolem der Messung des Fläheninhltes eines

Mehr

Algorithmentheorie. 15 Suchen in Texten (1)

Algorithmentheorie. 15 Suchen in Texten (1) Algorithmentheorie 15 Suhen in Texten (1) Prof. Dr. S. Alers Suhe in Texten Vershiedene Szenrien: Sttishe Texte Literturdtennken Biliothekssysteme Gen-Dtennken WWW-Verzeihnisse Dynmishe Texte Texteditoren

Mehr

Suche in Texten. Naiver Algorithmus. Knuth-Morris-Pratt-Algorithmus. Karp-Rabin-Algorithmus

Suche in Texten. Naiver Algorithmus. Knuth-Morris-Pratt-Algorithmus. Karp-Rabin-Algorithmus Suhe in Texten Niver Algorithmus Knuth-Morris-Prtt-Algorithmus Krp-Rin-Algorithmus M.O.Frnz; Jnur 2008 Algorithmen und Dtenstrukturen - Textsuhe 2-1 Suhe in Texten Niver Algorithmus Knuth-Morris-Prtt-Algorithmus

Mehr

Warum Bäume? Teil 1: Suchen. Bäume: Begriffe und Eigenschaften (2) Bäume: Begriffe und Eigenschaften (1)

Warum Bäume? Teil 1: Suchen. Bäume: Begriffe und Eigenschaften (2) Bäume: Begriffe und Eigenschaften (1) Wrum Bäume? Teil : Suhen Prolemstellung Elementre Suhverfhren Hshverfhren Binäre Suhäume (Wiederholung us Prog ) Bäume: Begriffe, Eigenshften und Trversierung Binäre Suhäume Gefädelte Suhäume Ausgeglihene

Mehr

Suche in Texten: Suffix-Bäume

Suche in Texten: Suffix-Bäume Suhe in Texten: Suffix-Bäume Prof. Dr. S. Alers Prof. Dr. Th. Ottmnn 1 Suhe in Texten Vershiedene Szenrios: Dynmishe Texte Texteditoren Symolmnipultoren Sttishe Texte Literturdtennken Biliothekssysteme

Mehr

Automaten und formale Sprachen Notizen zu den Folien

Automaten und formale Sprachen Notizen zu den Folien 5 Ds Pumping Lemm Shufhprinzip (Folie 137) Automten und formle Sprhen Notizen zu den Folien Im Blok Ds Shufhprinzip für endlihe Automten steht m n (sttt m > n), weil die Länge eines Pfdes die Anzhl von

Mehr

Mathematische Probleme, SS 2018 Dienstag 5.6. $Id: dreieck.tex,v /06/05 15:41:51 hk Exp $ 2.1 Dreiecksberechnung mit Seiten und Winkeln

Mathematische Probleme, SS 2018 Dienstag 5.6. $Id: dreieck.tex,v /06/05 15:41:51 hk Exp $ 2.1 Dreiecksberechnung mit Seiten und Winkeln Mthemtishe Proleme, SS 2018 Dienstg 5.6 $Id: dreiek.tex,v 1.43 2018/06/05 15:41:51 hk Exp $ 2 Dreieke 2.1 Dreiekserehnung mit Seiten und Winkeln Am Ende der letzten Sitzung htten wir den sogennnten Kongruenzstz

Mehr

Mathematische Probleme, SS 2013 Montag $Id: dreieck.tex,v /04/15 09:12:15 hk Exp hk $ 1.4 Dreiecksberechnung mit Seiten und Winkeln

Mathematische Probleme, SS 2013 Montag $Id: dreieck.tex,v /04/15 09:12:15 hk Exp hk $ 1.4 Dreiecksberechnung mit Seiten und Winkeln Mthemtishe Proleme, SS 2013 Montg 15.4 $Id: dreiek.tex,v 1.5 2013/04/15 09:12:15 hk Exp hk $ 1 Dreieke 1.4 Dreiekserehnung mit Seiten und Winkeln In der letzten Sitzung htten wir egonnen die vershiedenen

Mehr

Der Begriff der Stammfunktion

Der Begriff der Stammfunktion Lernunterlgen Integrlrehnung Der Begriff der Stmmfunktion Wir gehen von folgender Frgestellung us: welhe Funktion F x liefert ls Aleitung eine gegeene Funktion f x. Wir suhen lso eine Umkehrung der Aleitung

Mehr

Aufgabe 1. Die Zahl 6 wird aus 3 gleichen Ziffern mit Hilfe der folgenden mathematischen

Aufgabe 1. Die Zahl 6 wird aus 3 gleichen Ziffern mit Hilfe der folgenden mathematischen Deprtment Mthemtik Tg der Mthemtik 5. Juli 008 Klssenstufen 9, 10 Aufge 1. Die Zhl 6 wird us 3 gleihen Ziffern mit Hilfe der folgenden mthemtishen Symole drgestellt: + Addition Sutrktion Multipliktion

Mehr

R. Brinkmann http://brinkmann-du.de Seite 1 17.11.2010

R. Brinkmann http://brinkmann-du.de Seite 1 17.11.2010 R. rinkmnn http://rinkmnn-du.de Seite 7..2 Grundegriffe der Vektorrehnung Vektor und Sklr Ein Teil der in Nturwissenshft und Tehnik uftretenden Größen ist ei festgelegter Mßeinheit durh die nge einer Mßzhl

Mehr

VORKURS: MATHEMATIK RECHENFERTIGKEITEN, LÖSUNGEN. Dienstag

VORKURS: MATHEMATIK RECHENFERTIGKEITEN, LÖSUNGEN. Dienstag Lösungen Dienstg -- VORKURS: MATHEMATIK RECHENFERTIGKEITEN, LÖSUNGEN Dienstg Blok.. - 4 3y 6 3-6y 3-3 y -. - 3y 4 - y 9 - y -93. y 0,,y Sämtlihe Lösungsmethoden liefern hier whre Aussgen. Z. Bsp. «0 0».

Mehr

Die Satzgruppe des Pythagoras

Die Satzgruppe des Pythagoras 7 Die Stzgruppe des Pythgors In Klssenstufe 7 hen wir uns ei den Inhlten zur Geometrie insesondere mit Dreieken und ihren Eigenshften eshäftigt. In diesem Kpitel wirst du erkennen, dss es ei rehtwinkligen

Mehr

Wurzel b bedeutet: Suche die Zahl, die mit sich selbst multipliziert gerade die Zahl ergibt, die unter der Wurzel steht.

Wurzel b bedeutet: Suche die Zahl, die mit sich selbst multipliziert gerade die Zahl ergibt, die unter der Wurzel steht. /0 Areitsltt Wurzel edeutet: Suhe die Zhl, die mit sih selst multipliziert gerde die Zhl ergit, die unter der Wurzel steht. Also: - suhe eine Zhl, die mit sih selst multipliziert, genu ergit. Die Lösung

Mehr

solche mit Textzeichen (z.b. A, a, B, b,!) solche mit binären Zeichen (0, 1)

solche mit Textzeichen (z.b. A, a, B, b,!) solche mit binären Zeichen (0, 1) teilung Informtik, Fh Progrmmieren 1 Einführung Dten liegen oft ls niht einfh serier- und identifizierre Dtensätze vor. Stttdessen reräsentieren sie lnge Zeihenketten, z.b. Text-, Bild-, Tondten. Mn untersheidet

Mehr

2. Landeswettbewerb Mathematik Bayern 2. Runde 1999/2000

2. Landeswettbewerb Mathematik Bayern 2. Runde 1999/2000 Lndeswettewer Mthemtik Bern Runde 999/000 Aufge Ein Würfel wird durh je einen Shnitt rllel zur order-, Seiten und Dekflähe in ht Quder zerlegt (siehe Skizze) Können sih die Ruminhlte dieser Quder wie :

Mehr

gehört ebenfalls zu einem Paar. Da 5 eine Primzahl und kein anderes Quadervolumen ein Vielfaches von 5 V o

gehört ebenfalls zu einem Paar. Da 5 eine Primzahl und kein anderes Quadervolumen ein Vielfaches von 5 V o Lndeswettewer Mthemtik Bden-Württemerg 999 Runde ufge Ein Würfel wird durh je einen Shnitt rllel zur order-, Seiten und Dekflähe in ht Quder zerlegt (siehe Skizze) Können sih die Ruminhlte dieser Quder

Mehr

SS 2018 Torsten Schreiber

SS 2018 Torsten Schreiber SS 08 orsten Shreier 8 Beim inneren Produkt ) wird komponentenweise multipliziert und die entstehenden Produkte nshließend. Somit hndelt es sih um keine d nur eine Zhl Sklr) ls Lösung heruskommt. Ds Sklrprodukt

Mehr

ISAC. Computer Algebra für Brüche --- angepasst an Ausbildungszwecke

ISAC. Computer Algebra für Brüche --- angepasst an Ausbildungszwecke ISAC Computer Alger für Brühe --- ngepsst n Ausildungszweke Stefn Krnel skrnel@ist.tugrz.t Institut für Mthemtik TU Grz Österreih July 0 00 Astrt Rehnen mit Brühen ist ein grundlegender Teil des Mthemtikunterrihts.

Mehr

Hans U. Simon Bochum, den Annette Ilgen. Beispiele zur Vorlesung. Theoretische Informatik. WS 08/09

Hans U. Simon Bochum, den Annette Ilgen. Beispiele zur Vorlesung. Theoretische Informatik. WS 08/09 Hns U. Simon Bohum, den 7..28 Annette Ilgen Beispiele zur Vorlesung Theoretishe Informtik WS 8/9 Voremerkung: Hier findet sih eine Smmlung von Beispielen und Motivtionen zur Vorlesung Theoretishe Informtik.

Mehr

Inhaltsverzeichnis. c 1 / 5

Inhaltsverzeichnis. c 1 / 5 Tehnishe Informtion - t- und t-tempertur für Betriebsgeräte 03.2018 de Inhltsverzeihnis Einleitung......................................................................... 2 Definitionen für t und t............................................................

Mehr

Konstruktion des regulären Fünfecks mit dem rostigen Zirkel (rusty compass)

Konstruktion des regulären Fünfecks mit dem rostigen Zirkel (rusty compass) onstruktion des regulären Fünfeks mit dem rostigen Zirkel (rusty ompss) Vrinte 1 Oliver ieri ie hier vorliegende Methode zur onstruktion eines regulären Fünfeks unter Zuhilfenhme eines rostigen Zirkels

Mehr

1 GeschäftsdiaGramme. Abbildung 1.1: Übersicht zu unterschiedlichen Grafi ktypen. 2.1.4 Unify objects: graphs e.g. org graphs, networks, and maps

1 GeschäftsdiaGramme. Abbildung 1.1: Übersicht zu unterschiedlichen Grafi ktypen. 2.1.4 Unify objects: graphs e.g. org graphs, networks, and maps 1 GeshäftsdiGrmme Wenn mn eine deutshe Üersetzung des Begriffes usiness hrts suht, so ist mn mit dem Wort Geshäftsdigrmme gnz gut edient. Wir verstehen unter einem Geshäftsdigrmm die Visulisierung von

Mehr

7.4. Teilverhältnisse

7.4. Teilverhältnisse 7... erehnung von Teilverhältnissen ufgen zu Teilverhältnissen Nr. 7.. Teilverhältnisse Die Shwerpunkte von Figuren und Körpern lssen sih mit Hilfe von Teilverhältnissen usdrüken und erehnen. Definition

Mehr

Übungsblatt Nr. 2. Lösungsvorschlag

Übungsblatt Nr. 2. Lösungsvorschlag Institut für Kryptogrphie und Siherheit Prof. Dr. Jörn Müller-Qude Dirk Ahenh Tois Nilges Vorlesung Theoretishe Grundlgen der Informtik Üungsltt Nr. 2 svorshlg Aufge 1: Doktor Met in Gefhr (K) (4 Punkte)

Mehr

Mathematik für Studierende der Biologie und des Lehramtes Chemie

Mathematik für Studierende der Biologie und des Lehramtes Chemie Verfhren Mthemtik für Studierende der Biologie und des Lehrmtes Chemie Dominik Shillo Universität des Srlndes 6. Vorlesung, 4..7 (Stnd: 4..7, 4:5 Uhr) Shreibe,,n.......... n, n,n Führe den Guÿlgorithmus

Mehr

Mathematische Probleme, SS 2015 Montag $Id: dreieck.tex,v /04/20 08:57:49 hk Exp $ 1.4 Dreiecksberechnung mit Seiten und Winkeln

Mathematische Probleme, SS 2015 Montag $Id: dreieck.tex,v /04/20 08:57:49 hk Exp $ 1.4 Dreiecksberechnung mit Seiten und Winkeln Mthemtishe Proleme, SS 2015 Montg 20.4 $Id: dreiek.tex,v 1.15 2015/04/20 08:57:49 hk Exp $ 1 Dreieke 1.4 Dreiekserehnung mit Seiten und Winkeln In der letzten Sitzung htten wir egonnen die vershiedenen

Mehr

Lösungshinweise/-vorschläge zum Übungsblatt 2: Software-Entwicklung 1 (WS 2015/16)

Lösungshinweise/-vorschläge zum Übungsblatt 2: Software-Entwicklung 1 (WS 2015/16) Dr. Annette Bienius Mthis Weer, M.. Peter Zeller, M.. T Kiserslutern Fhereih Informtik AG oftwretehnik Lösungshinweise/-vorshläge zum Üungsltt 2: oftwre-entwiklung 1 (W 2015/16) Die Hinweise und orshläge

Mehr

Wir haben ein Koordinatensystem mit der x-achse und der y-achse. Nun wird ein Kreis gebildet mit dem Radius r=1.

Wir haben ein Koordinatensystem mit der x-achse und der y-achse. Nun wird ein Kreis gebildet mit dem Radius r=1. Trigonometrie In diesem Themenereih wenden wir uns den Winkeln im rehtekigen Dreiek zu. Du hst uf deinem Tshenrehner siher shon die Tsten sin, os und tn gesehen. Doh ws edeuten sie? Ds wollen wir herusfinden.

Mehr

Mathematik Trigonometrie Einführung

Mathematik Trigonometrie Einführung Mthemtik Trigonometrie Einführung Ws edeutet ds Wort Trigonometrie und mit ws eshäftigt sih die Trigonometrie? Eine kleine Wortkunde: tri edeutet 'drei' Beispiel: Trithlon,... gon edeutet 'Winkel'/'Ek'

Mehr

Formale Systeme, Automaten, Prozesse SS 2010 Musterlösung - Übung 2 M. Brockschmidt, F. Emmes, C. Fuhs, C. Otto, T. Ströder

Formale Systeme, Automaten, Prozesse SS 2010 Musterlösung - Übung 2 M. Brockschmidt, F. Emmes, C. Fuhs, C. Otto, T. Ströder Prof Dr J Giesl Formle Systeme, Automten, Prozesse SS 2010 Musterlösung - Üung 2 M Brockschmidt, F Emmes, C Fuhs, C Otto, T Ströder Hinweise: Die Husufgen sollen in Gruppen von je 2 Studierenden us dem

Mehr

Bezeichnungen. Arten von String-Matching-Problemen

Bezeichnungen. Arten von String-Matching-Problemen 4. Textlgorithmen String Mthing 4. Textlgorithmen Die Suhe von einem Muster in einem Text wird uh ls String Mthing oder Pttern Mthing ezeihnet. Generell esteht die Aufge drin, einen String (ds Muster,

Mehr

Funktionen und Mächtigkeiten

Funktionen und Mächtigkeiten Vorlesung Funktionen und Mähtigkeiten. Etws Mengenlehre In der Folge reiten wir intuitiv mit Mengen. Eine Menge ist eine Zusmmenfssung von Elementen. Zum Beispiel ist A = {,,,,5} eine endlihe Menge mit

Mehr

ping karlsruhe Mining Software Call Graphs Frank Eichinger

ping karlsruhe Mining Software Call Graphs Frank Eichinger ping krlsruhe Motivtion Softwre Mining Cll-Grphen Grph Mining Trnsformtionen Auslik Mining Softwre Cll Grphs Frnk Eihinger Lehrstuhl Prof. Böhm Institut für Progrmmstrukturen und Dtenorgnistion (IPD) Universität

Mehr

Erkundungen. Terme vergleichen. Rechteck Fläche als Produkt der Seitenlängen Fläche als Summe der Teilflächen A B

Erkundungen. Terme vergleichen. Rechteck Fläche als Produkt der Seitenlängen Fläche als Summe der Teilflächen A B Erkundungen Terme vergleihen Forshungsuftrg : Fläheninhlte von Rehteken uf vershiedene Arten erehnen Die Terme () is (6) eshreien jeweils den Fläheninhlt von einem der drei Rehteke. Ordnet die Terme den

Mehr

Gruppe A Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit.

Gruppe A Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit. Gruppe A Bitte trgen Sie SOFORT und LESERLICH Nmen und Mtrikelnr. ein, und legen Sie Ihren Studentenusweis ereit. 1. Leistungsüerprüfung AUS DATENMODELLIERUNG (184.685) GRUE A 16.04.2013 Mtrikelnr. Fmiliennme

Mehr

Polynominterpolation (Varianten)

Polynominterpolation (Varianten) HTL Slfelden Polynominterpoltion Seite von Wilfried Rohm Polynominterpoltion (Vrinten) Mthemtishe / Fhlihe Inhlte in Stihworten: Lösen von Gleihungssysteme, Mtrizenrehnung, Mthd-Progrmm Kurzzusmmenfssung

Mehr

Verwenden der Strassstein-Funktion. Verwenden des Bearbeitungsbildschirms

Verwenden der Strassstein-Funktion. Verwenden des Bearbeitungsbildschirms Verwenden der Strssstein-Funktion Mit der Shneidmshine können spektkuläre Strssstein-Dekortionen erstellt werden. Informtionen zur grundlegenden Bedienung von finden Sie in der Hilfe. Kliken Sie zur Anzeige

Mehr

Erstellen einer DLL-Datei zur Verwendung in LabView 8.2 mittels Microsoft Visual C Express Edition

Erstellen einer DLL-Datei zur Verwendung in LabView 8.2 mittels Microsoft Visual C Express Edition Seite: 1 von 5 Erstellen einer DLL-Dtei zur Verwendung in LView 8.2 mittels Mirosoft Visul C++ 2005 Express Edition Im Auftrg von Dieses Dokument ist in keiner Weise urheerrehtlih geshützt und drf von

Mehr

Algorithmen II Vorlesung am

Algorithmen II Vorlesung am Algorithmen II Vorlesung m 29.11.2012 Algorithmishe Geometrie: Shnitte von Streken Sweep-Line INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Lndes Bden-Württemberg und

Mehr

Beispiellösungen zu Blatt 24

Beispiellösungen zu Blatt 24 µthemtischer κorrespondenz- zirkel Mthemtisches Institut Georg-August-Universität Göttingen Aufge Beispiellösungen zu Bltt Mn eweise, dss mn ein Qudrt für jede Zhl n 6 in genu n kleinere Qudrte zerlegen

Mehr

Seminarstunden S-Std. (45 min) Nr. Modul Theorie Übungen. 13 Bruchrechnung 1 5

Seminarstunden S-Std. (45 min) Nr. Modul Theorie Übungen. 13 Bruchrechnung 1 5 Mthemtik Grundlgen Mthemtik Grundlgen für Industriemeister Seminrstunden S-Std. ( min) Nr. Modul Theorie Üungen Inhlt.... Allgemeines..... Ehte Brühe..... Unehte Brühe.... Erweitern und Kürzen von Brühen....

Mehr

Relationen: Äquivalenzrelationen, Ordnungsrelationen

Relationen: Äquivalenzrelationen, Ordnungsrelationen TH Mittelhessen, Sommersemester 202 Lösungen zu Üungsltt 9 Fchereich MNI, Diskrete Mthemtik 2. Juni 202 Prof. Dr. Hns-Rudolf Metz Reltionen: Äquivlenzreltionen, Ordnungsreltionen Aufge. Welche der folgenden

Mehr

Lineare Gleichungssysteme mit 3 und mehr Variablen

Lineare Gleichungssysteme mit 3 und mehr Variablen Linere Gleihungssysteme mit un mehr rilen Beispiel 1 mit rilen: 11 Zunähst estimmt mn ie rile, ie mn ls Erste eliminieren will. In iesem Fll soll von hinten nh vorn vorgegngen weren,.h. zuerst soll rile

Mehr

Vorlesung Diskrete Strukturen Transportnetze

Vorlesung Diskrete Strukturen Transportnetze Vorlesung Diskrete Strukturen Trnsportnetze Bernhr Gnter WS 2009/10 Gerihtete Grphen Ein shlingenloser gerihteter Grph ist ein Pr (V, A), woei V eine elieige Menge ist, eren Elemente wir Eken nennen un

Mehr

Grundwissen Mathematik 8.Klasse Gymnasium SOB. Darstellung im Koordinatensystem: Der Kreisumfang ist direkt proportional zu seinem Radius.

Grundwissen Mathematik 8.Klasse Gymnasium SOB. Darstellung im Koordinatensystem: Der Kreisumfang ist direkt proportional zu seinem Radius. Gymso 1 Grundwissen Mthemtik 8.Klsse Gymnsium SOB 1.Funktionle Zusmmenhänge 1.1.Proportionlität Ändern sih ei einer Zuordnung die eiden Größen im gleihen Verhältnis, so spriht mn von einer direkten Proportionlität.

Mehr

Einführung in die Theoretische Informatik I/ Grundlagen der Theoretischen Informatik. SS 2007 Jun.-Prof. Dr. Bernhard Beckert Ulrich Koch.

Einführung in die Theoretische Informatik I/ Grundlagen der Theoretischen Informatik. SS 2007 Jun.-Prof. Dr. Bernhard Beckert Ulrich Koch. Einführung in die Theoretishe Informtik I/ Grundlgen der Theoretishen Informtik SS 2007 Jun.-Prof. Dr. Bernhrd Bekert Ulrih Koh Nhklusur 25. 09. 2007 Persönlihe Dten itte gut leserlih usfüllen! Vornme:...

Mehr

Gliederung. Kapitel 1: Endliche Automaten

Gliederung. Kapitel 1: Endliche Automaten Gliederung 0. Motivtion und Einordnung 1. Endliche Automten 2. Formle Sprchen 3. Berechnungstheorie 4. Komplexitätstheorie 1.1. 1.2. Minimierungslgorithmus 1.3. Grenzen endlicher Automten 1/1, S. 1 2017

Mehr

Einführung in die Mathematik des Operations Research

Einführung in die Mathematik des Operations Research Universität zu Köln Mthemtishes Institut Prof. Dr. F. Vllentin ufge ( + 7 = 0 Punkte) Einführung in die Mthemtik des Opertions Reserh Sommersemester 0 en zur Klusur (7. Juli 0). Es seien M = {,..., n },

Mehr

18. Algorithmus der Woche Der Euklidische Algorithmus

18. Algorithmus der Woche Der Euklidische Algorithmus 18. Algorithmus der Woche Der Euklidische Algorithmus Autor Friedrich Eisenrnd, Universität Dortmund Heute ehndeln wir den ältesten ereits us Aufzeichnungen us der Antike eknnten Algorithmus. Er wurde

Mehr

Minimierung von DFAs. Minimierung 21 / 98

Minimierung von DFAs. Minimierung 21 / 98 Minimierung von DFAs Minimierung 21 / 98 Ein Beispiel: Die reguläre Sprche L({, } ) Wie stellt mn fest, o ein Wort ds Suffix esitzt? Ein erster Anstz: Speichere im ktuellen Zustnd die eiden zuletzt gelesenen

Mehr

9 Vektorprodukt. Dieses Gleichungssystem muss man nun lösen! Das ist allerdings nicht ganz einfach. Die Lösung lautet:

9 Vektorprodukt. Dieses Gleichungssystem muss man nun lösen! Das ist allerdings nicht ganz einfach. Die Lösung lautet: 9 Vektorprodukt 9.1 Ds Vektorprodukt Gegeen seien zwei (komplnre) Vektoren und, die eine Eene ufspnnen. Suht mn einen Vektor n, der uf diese Eene senkreht steht, dnn muss n orthogonl zu und n orthogonl

Mehr

Aufgaben und Lösungen. Über Kommentare und Ergänzungen zu diesen Lösungsbeispielen freuen wir uns!

Aufgaben und Lösungen. Über Kommentare und Ergänzungen zu diesen Lösungsbeispielen freuen wir uns! ufgen und Lösungen 1. Runde 018 Üer Kommentre und Ergänzungen zu diesen n freuen wir uns!» KORREKTURKOMMISSION KRL FEGERT» BUNDESWETTBEWERB MTHEMTIK Kortrijer Strße 1, 53177 Bonn Postfh 0 0 01, 5313 Bonn

Mehr

Umwandlung von endlichen Automaten in reguläre Ausdrücke

Umwandlung von endlichen Automaten in reguläre Ausdrücke Umwndlung von endlichen Automten in reguläre Ausdrücke Wir werden sehen, wie mn us einem endlichen Automten M einen regulären Ausdruck γ konstruieren knn, der genu die von M kzeptierte Sprche erzeugt.

Mehr

5. Homotopie von Wegen

5. Homotopie von Wegen 28 Andres Gthmnn 5. Homotopie von Wegen In der Prxis wird der Cuchysche Integrlstz meistens in einer äquivlenten Umformulierung verwendet, die wir nun genuer ehndeln wollen. Anschulich esgt sie, dss Wegintegrle

Mehr

Automaten und formale Sprachen Notizen zu den Folien

Automaten und formale Sprachen Notizen zu den Folien Automten un formle Sprhen Notizen zu en Folien 1 Grunlgen un formle Beweise Venn-Digrmme (Folie 6) Im oeren Digrmm er Folie 6 sin zwei Mengen ngegeen: A un B. Es ist explizit ein Element von A ngegeen,

Mehr

Name... Matrikel-Nr... Studiengang...

Name... Matrikel-Nr... Studiengang... Proeklusur zum ersten Teil der Vorlesung Berechenrkeitstheorie WS 2015/16 30. Novemer 2015 Dr. Frnzisk Jhnke, Dr. Dniel Plcín Bereitungszeit: 80 Minuten Nme... Mtrikel-Nr.... Studiengng... 1. So oder so

Mehr

Kapitel 6 E-Mails schreiben und organisieren

Kapitel 6 E-Mails schreiben und organisieren Kpitel 6 E-Mils shreien und orgnisieren Die Kommuniktion vi E-Mil ist heute essenziell. Und Ihr M ist estens gerüstet für den Empfng, ds Verfssen und die Orgnistion von E-Mils. Wie Sie effektiv mit dem

Mehr

Motivation: Petrinetze. Vorlesung Modellierung nebenläufiger Systeme Sommersemester 2011 Universität Duisburg-Essen. Motivation: Petrinetze

Motivation: Petrinetze. Vorlesung Modellierung nebenläufiger Systeme Sommersemester 2011 Universität Duisburg-Essen. Motivation: Petrinetze Motivtion: Petrinetze Vorlesung Modellierung neenläufiger Systeme Sommersemester 2011 Universität uisurg-essen rr König Petrinetze sind ein Formlismus zur Modellierung von neenläufigen Systemen mit folgenden

Mehr

HA-Lösung TA-Lösung Diskrete Strukturen Tutoraufgabenblatt 2. Besprechung in KW44

HA-Lösung TA-Lösung Diskrete Strukturen Tutoraufgabenblatt 2. Besprechung in KW44 Technische Universität München Winter 08/9 Prof. J. Esprz / Dr. M. Luttenerger, C. Welzel 08//0 HA- TA- Diskrete Strukturen Tutorufgenltt Besprechung in KW Bechten Sie: Soweit nicht explizit ngegeen, sind

Mehr

4. Lineare Gleichungen mit einer Variablen

4. Lineare Gleichungen mit einer Variablen 4. Linere Gleichungen mit einer Vrilen 4. Einleitung Werden zwei Terme einnder gleichgesetzt, sprechen wir von einer Gleichung. Enthlten eide Terme nur Zhlen, so entsteht eine Aussge, die whr oder flsch

Mehr

a) Behauptung: Es gibt die folgenden drei stabilen Matchings:

a) Behauptung: Es gibt die folgenden drei stabilen Matchings: Musterlösung - ufgenltt 1 ufge 1 ) ehuptung: Es git ie folgenen rei stilen Mthings: ies knn mn ntürlih für ein so kleines eispiel urh etrhten ller möglihen 3! = 6 Mthings eweisen. Mn knn er uh strukturierter

Mehr

Bruchrechnung. W. Kippels 6. Dezember Inhaltsverzeichnis. 1 Vorwort 2. 2 Einleitung 3

Bruchrechnung. W. Kippels 6. Dezember Inhaltsverzeichnis. 1 Vorwort 2. 2 Einleitung 3 Bruchrechnung W. Kippels 6. Dezemer 08 Inhltsverzeichnis Vorwort Einleitung Die Bruchrechenregeln. Addition gleichnmiger Brüche........................ Addition ungleichnmiger Brüche.......................

Mehr

Datenstrukturen & Algorithmen Lösungen zu Blatt 2 FS 12

Datenstrukturen & Algorithmen Lösungen zu Blatt 2 FS 12 Eidgenössische Technische Hochschule Zürich Ecole polytechnique fédérle de Zurich Politecnico federle di Zurigo Federl Institute of Technology t Zurich Institut für Theoretische Informtik 29 Ferur 2012

Mehr

Einführung in die theoretische Informatik Sommersemester 2017 Übungsblatt Lösungsskizze 2

Einführung in die theoretische Informatik Sommersemester 2017 Übungsblatt Lösungsskizze 2 Prof. J. Esprz Tehnishe Universität Münhen S. Sikert, J. Krämer KEINE ABGABE Einführung in die theoretishe Informtik Sommersemester 2017 Üungsltt 2 Üungsltt Wir untersheiden zishen Üungs- und Agelättern.

Mehr

4 Prozessor-Datenpfad

4 Prozessor-Datenpfad 4. Vom zu lösenden Prolem hängige Schltung 75 4 Prozessor-Dtenpfd 4. Vom zu lösenden Prolem hängige Schltung Mit den isher kennengelernten Schltungen können ereits viele Prolemstellungen gelöst werden.

Mehr

a q 0 q 1 a M q 1 q 3 q 2

a q 0 q 1 a M q 1 q 3 q 2 Prof Dr J Giesl Formle Systeme, Automten, Prozesse SS 2010 Musterlösung - Üung 4 M Brockschmidt, F Emmes, C Fuhs, C Otto, T Ströder Hinweise: Die Husufgen sollen in Gruppen von je 2 Studierenden us dem

Mehr

Protokoll zur Vorlesung Theoretische Informatik I

Protokoll zur Vorlesung Theoretische Informatik I Protokoll zur Vorlesung Theoretishe Informtik I! " # $ % # & ' ( % ) * + & " & & &, " ' % + - + # + & '. / 0 1 # 0 & 2 & # & 3 4 & 5 # 0 + & 6 & ' + 7 7 3 8 4 & 7 + + + % ( % 6 # 9 & 5 # 0 + & 3 8. : &

Mehr

Datenmodell = Datenobjekte + Operatoren

Datenmodell = Datenobjekte + Operatoren Einleitung 4. eltionenlger Selektion und Projektion Mengenopertoren Vereinigung, Durhshnitt, Differenz krtesishes Produkt Verundopertionen (Join) Thet-Join ntürliher Verund Semi-Join äußerer Verund Division

Mehr

Mathematik: Mag. Schmid Wolfgang Arbeitsblatt Semester ARBEITSBLATT 14 MULTIPLIKATION EINES VEKTORS MIT EINEM SKALAR

Mathematik: Mag. Schmid Wolfgang Arbeitsblatt Semester ARBEITSBLATT 14 MULTIPLIKATION EINES VEKTORS MIT EINEM SKALAR Mthemtik: Mg. Schmid Wolfgng Areitsltt. Semester ARBEITSBLATT MULTIPLIKATION EINES VEKTORS MIT EINEM SKALAR Zunächst einml müssen wir den Begriff Sklr klären. Definition: Unter einem Sklr ersteht mn eine

Mehr

Ein Winkel zwischen 0 und 90 heißt spitzer Winkel, ein Winkel zwischen 90 und 180 heißt stumpfer Winkel.

Ein Winkel zwischen 0 und 90 heißt spitzer Winkel, ein Winkel zwischen 90 und 180 heißt stumpfer Winkel. Geometrie 1 3 Winkelsummen Der von zwei Nhrseiten eines Vieleks geildete Winkel heißt Innenwinkel. Die Summe der Innenwinkel eines Dreieks eträgt 180. + + = 180 Die Summe der Innenwinkel eines Viereks

Mehr

Frank Heitmann 2/71. 1 Betrachten wir Σ für ein Alphabet Σ, so ist Σ die Menge

Frank Heitmann 2/71. 1 Betrachten wir Σ für ein Alphabet Σ, so ist Σ die Menge Formle Grundlgen der Informtik Kpitel 2 und reguläre Sprchen Frnk Heitmnn heitmnn@informtik.uni-hmurg.de 7. April 24 Frnk Heitmnn heitmnn@informtik.uni-hmurg.de /7 Alphet und Wörter - Zusmmengefsst Die

Mehr

Mobile radiographische Untersuchung von Holz und Bäumen

Mobile radiographische Untersuchung von Holz und Bäumen Moile rdiogrphishe Untersuhung von Holz und Bäumen K. Osterloh, A. Hsenst, U. Ewert, M. Kruse, J. Goeels Bundesnstlt für Mterilforshung und -prüfung (BAM), Berlin Zusmmenfssung Sowohl im Buholz ls uh in

Mehr

Der Vektor lebt unabhängig vom Koordinatensystem: Bei einer Drehung des Koordinatensystems ändern zwar die Komponenten, der Vektor v aber bleibt.

Der Vektor lebt unabhängig vom Koordinatensystem: Bei einer Drehung des Koordinatensystems ändern zwar die Komponenten, der Vektor v aber bleibt. Vektorlger Vektorlger Vektoren sind Grössen, die einen Betrg sowie eine Rihtung im Rum hen. Im Gegenstz zu den Vektoren estehen Sklre nur us einer Grösse ls Zhl. In Bühern wird nsttt v oft v geshrieen.

Mehr

29 Uneigentliche Riemann-Integrale

29 Uneigentliche Riemann-Integrale 29 Uneigentlihe Riemnn-Integrle 29.2 Uneigentlihe Riemnn-Integrle bei einer kritishen Integrtionsgrenze 29.3 Zusmmenhng des uneigentlihen mit dem eigentlihen Riemnn-Integrl 29.5 Cuhy-Kriterium für uneigentlihe

Mehr

Die Näherung ist umso genauer, je kleiner die Zellen sind. Der Grenzwert ist

Die Näherung ist umso genauer, je kleiner die Zellen sind. Der Grenzwert ist Höhere Mthemtik Mehrfhintegrle sind Integrle üer eiete R n Zweifhintegrle treten B ei der Berehnung des Fläheninhltes und von Flähenträgheitsmomenten uf Dreifhintegrle kommen ei der Berehnung des Volumeninhltes

Mehr

Seminar zum anorganisch-chemischen Praktikum I. Quantitative Analyse. Prof. Dr. M. Scheer Patrick Schwarz

Seminar zum anorganisch-chemischen Praktikum I. Quantitative Analyse. Prof. Dr. M. Scheer Patrick Schwarz Seminr zum norgnish-hemishen Prktikum I Quntittive Anlyse Prof. Dr. M. Sheer Ptrik Shwrz itertur A. F. Hollemn, E. Wierg, ehruh der Anorgnishen Chemie, de Gruyter Verlg, Berlin, New York (Ahtung, neue

Mehr

Prüfungsteil Schriftliche Kommunikation (SK)

Prüfungsteil Schriftliche Kommunikation (SK) SK Üerlik und Anforderungen Üerlik und Anforderungen Prüfungsteil Shriftlihe Kommuniktion (SK) Üerlik und Anforderungen Worum geht es? In diesem Prüfungsteil sollst du einen Beitrg zu einem estimmten Them

Mehr

Hausaufgabe 2 (Induktionsbeweis):

Hausaufgabe 2 (Induktionsbeweis): Prof. Dr. J. Giesl Formle Sprhen, Automten, Prozesse SS 2010 Üung 3 (Age is 12.05.2010) M. Brokshmidt, F. Emmes, C. Fuhs, C. Otto, T. Ströder Hinweise: Die Husufgen sollen in Gruppen von je 2 Studierenden

Mehr

Automaten mit dot erstellen

Automaten mit dot erstellen Automten mit dot erstellen 1 Ws ist dot? dot ist ein Progrmm zum Kompilieren von dot-dteien in verschiedene Grfikformte, sowie der Nme einer Sprche, mit der mn Grphen spezifizieren knn. Unter Anderem können

Mehr

Durch die Umformung ergibt sich eine Schaltfunktion mit einer minimalen Anzahl von Verknüpfungsoperationen, nämlich 2.

Durch die Umformung ergibt sich eine Schaltfunktion mit einer minimalen Anzahl von Verknüpfungsoperationen, nämlich 2. 2 Die shltlgerishe Umformung von Shltfunktionen in Normlform soll m Beispiel er Umformung einer Mxterm-Normlform in eine Minterm-Normlform gezeigt weren. Beispiel: y = ) ( ) ( ) ( Es ietet sih ie Anwenung

Mehr

2.6 Reduktion endlicher Automaten

2.6 Reduktion endlicher Automaten Endliche Automten Jörg Roth 153 2.6 Reduktion endlicher Automten Motivtion: Wir sind n Automten interessiert, die mit möglichst wenigen Zuständen uskommen. Automten, die eine Sprche mit einem Minimum n

Mehr

HM I Tutorium 13. Lucas Kunz. 2. Februar 2017

HM I Tutorium 13. Lucas Kunz. 2. Februar 2017 HM I Tutorium 3 Lucs Kunz. Ferur 07 Inhltsverzeichnis Theorie. Differentilgleichungen erster Ordnung..................... Linere DGL zweiter Ordnung..........................3 Uneigentliche Integrle.............................

Mehr

2 Die Bildsprache Der relevante Winkel im grünen Dreieck ist stumpf; die gleichschenkligen Dreiecke haben den Basiswinkel 180 :

2 Die Bildsprache Der relevante Winkel im grünen Dreieck ist stumpf; die gleichschenkligen Dreiecke haben den Basiswinkel 180 : Hns Wlser, [20080409] Eine Visulisierung des Kosinusstzes 1 Worum es geht Es wird eine zum Pythgors-Piktogrmm nloge Figur für niht rehtwinklige Dreieke esprohen. Dei werden ähnlihe gleihshenklige Dreieke

Mehr

Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester 2011

Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester 2011 Automten und Formle Sprchen lis Theoretische Informtik Sommersemester 011 Dr. Snder Bruggink Üungsleitung: Jn Stückrth Snder Bruggink Automten und Formle Sprchen 1 Reguläre Sprchen Wir eschäftigen uns

Mehr

Verknüpfen von Konten

Verknüpfen von Konten Verknüpfen von Konten In diesem Leitfden wird erläutert, wie Sie Ihre Morgn Stnley-Konten verknüpfen können, dmit Sie sih nur einml nmelden müssen, um online uf Ihre Aktien und Ihr Brgeld zuzugreifen.

Mehr

6 Weitere nichtparametrische Tests

6 Weitere nichtparametrische Tests 6 Weitere nihtprmetrishe Tests d e 6.1 Nihtprmetrish heisst Vieles Ds Adjektiv nihtprmetrish wurde in der Sttistik uf viele Arten verwendet, um eine Methodik von der prmetrishen Sttistik zugrenzen. Diese

Mehr

/LQHDUH*OHLFKXQJVV\VWHPH

/LQHDUH*OHLFKXQJVV\VWHPH /LQHDUH*OHLFKXQJVV\VWHPH (für Grund- und Leistungskurse Mthemtik) 6W55DLQHU0DUWLQ(KUHQE UJ*\PQDVLXP)RUFKKHLP Nch dem Studium dieses Skripts sollten folgende Begriffe eknnt sein: Linere Gleichung; homogene

Mehr

01 Proportion Verhältnis Maßstab

01 Proportion Verhältnis Maßstab 5 Ähnlihkeit und Strhlensätze LS 01.M1 01 Proportion Verhältnis Mßst 1 Lies die folgende Informtion sorgfältig. Mrkiere wihtige egriffe und Formeln. ) Proportionle Zuordnung ei einer proportionlen Zuordnung

Mehr

Unterrichtsmaterialien in digitaler und in gedruckter Form. Auszug aus: Kohls Mathe-Tandem Geometrie - Partnerrechnen im

Unterrichtsmaterialien in digitaler und in gedruckter Form. Auszug aus: Kohls Mathe-Tandem Geometrie - Partnerrechnen im Unterrihtsmterilien in digitler und in gedrukter Form uszug us: Kohls Mthe-Tndem Geometrie - Prtnerrehnen im 9.-10. Shuljhr Ds komplette Mteril finden Sie hier: Shool-Sout.de Mthe-Tndem Geometrie für ds

Mehr

5.2 Quadratische Gleichungen

5.2 Quadratische Gleichungen Mthemtik mit Mthd MK..0 0_0_Qud_Gleih.xmd Einfhe qudrtishe Gleihungen. Qudrtishe Gleihungen ef.: Eine Gleihung, in der x höhstens qudrtish (in der zweiten Potenz) vorkommt, heißt qudrtishe Gleihung. Gewöhnlihe

Mehr

Mathematik: Mag. Schmid Wolfgang Arbeitsblatt 3 5. Semester ARBEITSBLATT 3 PARAMETERDARSTELLUNG EINER GERADEN

Mathematik: Mag. Schmid Wolfgang Arbeitsblatt 3 5. Semester ARBEITSBLATT 3 PARAMETERDARSTELLUNG EINER GERADEN Mthemtik: Mg. Schmid Wolfgng Areitsltt 3 5. Semester ARBEITSBLATT 3 PARAMETERDARSTELLUNG EINER GERADEN Wir wollen eine Gerde drstellen, welche durch die Punkte A(/) und B(5/) verläuft. Die Idee ist folgende:

Mehr

Folien-Beispiel: Maschinenzahlen a=(1.11) 2. * 2 1, b= - (1.10) 2. *2 1 und c=(1.10) 2. * 2 3 bei dreistelliger Mantisse.

Folien-Beispiel: Maschinenzahlen a=(1.11) 2. * 2 1, b= - (1.10) 2. *2 1 und c=(1.10) 2. * 2 3 bei dreistelliger Mantisse. Folien-Beispiel: Mshinenzhlen =(. *, = - (.0 * und =(.0 * 3 ei dreistelliger Mntisse. Addition: ~ y (.0 (. (.00 * * * 3 M M ( (.0 (.0 * 3 * M (.0 * 3 Dei tritt kein Fehler uf! Andere Reihenfolge? 4 yˆ

Mehr

Andere Möglichkeit, die Maschinengenaugkeit zu definieren: Größte positive Zahl y=2 -k, so dass. Beispiel t=2, = ¼ = (0.01) 2 ; (1.0 1) 2 (1.

Andere Möglichkeit, die Maschinengenaugkeit zu definieren: Größte positive Zahl y=2 -k, so dass. Beispiel t=2, = ¼ = (0.01) 2 ; (1.0 1) 2 (1. De.: Die oere Shrnke ür den reltiven Fehler, der ei der Rundung mit t-stelliger Mntisse utreten knn, heißt Mshinengenuigkeit, und ergit sih ls t Andere Möglihkeit, die Mshinengenugkeit zu deinieren: Größte

Mehr

Gleitpunktarithmetik Def. (Realisierung einer Maschinenoperation):

Gleitpunktarithmetik Def. (Realisierung einer Maschinenoperation): Gleitpunktrithmetik.. De. Relisierung einer Mshinenopertion: - Berehne ür Mshinenzhlen ds Ergenis der Opertion mit höherer Genuigkeit qusi ekt - Runde dieses Resultt wieder u Mshinenzhl. Ddurh ist der

Mehr

10 1 Grundlagen der Schulgeometrie. 1.3 Das Dreieck

10 1 Grundlagen der Schulgeometrie. 1.3 Das Dreieck 10 1 Grundlgen der Shulgeometrie 13 Ds Dreiek In diesem shnitt findet lles in der ffinen Stndrdeene 2 = R 2 sttt Drei Punkte, und, die niht uf einer Gerden liegen, ilden ein Dreiek Die Punkte,, nennt mn

Mehr