Refine
Year of publication
Document Type
- Diploma Thesis (114) (remove)
Language
- German (114) (remove)
Has Fulltext
- yes (114)
Is part of the Bibliography
- no (114) (remove)
Keywords
- Agentieller Realismus (1)
- Akteur-Netzwerk-Theorie (1)
- Algebra (1)
- Algebraische Gleichung (1)
- Analyse von Algorithmen (1)
- Atom (1)
- BMRT (1)
- BRDF (1)
- BTF (1)
- Barad, Karen (1)
Institute
- Informatik (46)
- Physik (30)
- Biowissenschaften (10)
- Geowissenschaften (8)
- Mathematik (7)
- Gesellschaftswissenschaften (3)
- Biochemie und Chemie (2)
- Erziehungswissenschaften (2)
- Psychologie (2)
- Wirtschaftswissenschaften (2)
Die Implementation der Striktheits-Analyse, die im Zuge dieser Arbeit vorgenommen wurde, stellt eine effiziente Approximation der abstrakten Reduktion mit Pfadanalyse dar. Durch die G#-Maschine, ein neues, auf der G-Maschine basierendes Maschinenmodell, wurde die verwendete Methode systematisch dargelegt. Die große Ähnlichkeit mit der G-Maschin, die in unserer Implementation beibehalten werden konnte, zeigt, wie natürlich die verwendete Methode der Reduktion in funktionalen Programmiersprachen entspricht. Obwohl die Umsetzung mehr Wert auf Nachvollziehbarkeit, als auf Effizienz legt, zeigt sie, daß die Methode der abstrakten Reduktion mit Pfadanalyse auch in einer funktionalen Implementierung durchaus alltagstauglich ist und Striktheits-Information findet, die Umsetzungen anderer Methoden nicht finden. Es bestehen Möglichkeiten zur Optimierung u. a. von Programmteilen, die für jede simulierte G#-Maschinen-Anweisung ausgeführt werden. Bei vorsichtiger Einschätzung erscheint eine Halbierung der Laufzeit mit vertretbarem Aufwand erreichbar.
Gegenstand der Arbeit ist ein Gleichheitskalkül für den Kern einer nicht-strikten funktionalen Programmiersprache. Funktionale Programmiersprachen unterstützen bestens die Prinzipien Abstraktion, Einkapselung, Hierarchiesierung und Modularisierung, die gemeinhin als Grundelemente des Software-Engineering betrachtet werden. Darüber hinaus bieten funktionale Programmiersprachen aufgrund ihrer Entwicklung aus dem Lambda-Kalkül eine große Nähe zu mathematischen Modellen. Daher besitzen sie im Bereich der Programmverifikation ausgeprägte Vorteile gegenüber imperativen oder objekt-orientierten Programmiersprachen. In der Arbeit wird nun ein Gleichheitsbegriff für Ausdrücke in funktionalen Programmiersprachen entwickelt und dessen Praktikabilität durch die Implementierung eines Beweisers untermauert. Dieser Gleichheitsbegriff ist die kontextuelle Gleichheit, die Ausdrücke aufgrund ihres Terminierungsverhaltens als Unterprogramme in allen möglichen Kontexten einordnet. Kontextuelle Gleichheit wird in Kapitel 2 vorgestellt, nachdem der klassische und der sogenannte "lazy" Lambda-Kalkül eingeführt wurden. Kapitel 3 enthält einen Überblick über die funktionale Programmierung, da auch die Implementierung des o.g. Beweisers in einer funktionalen Programmiersprache, nämlich Haskell, durchgeführt wird. In Kapitel 4 wird die funktionale Kernsprache, die Gegenstand der Untersuchung sein wird, beschrieben. Sie enthält alle wesentlichen Elemente wie z.B. Funktionsdefinition und -anwendung sowie Datentypen. Im selben Kapitel wird auch der Gleichheitsbegriff für diese Kernsprache definiert. Kapitel 5 schließlich entwickelt auf Basis der zuvor erfolgten Definitionen einen Kalkül für den Gleichheitsbeweis. Außerdem wird in diesem Kapitel auch die Umsetzung dieses Gleichheitskalküls präsentiert. Aus der Dissertation von Marko Schütz werden hierbei Erkenntnisse über die Kontextanalyse verwendet, um erfüllende Belegungen von freien Variablen zu berechnen. Die Arbeit schließt mit Beispielanalysen und Meßwerten sowie einer Diskussion der Ergebnisse und möglicher Erweiterungen.
In Abschnitt 4.1 wurden Algebren auf Mengen und Relationen vorgestellt. Desweitern wurde in Abschnitt 4.2 eine zu ALC erweiterte terminologische Wissensrepräsentationssprache ALCX definiert und gezeigt, daß die in Abschnitt 4.1 vorgestellten Algebren zur Festlegung der odell-theoretischen Semantik der Sprache ALCX benutzt werden können. Als Ergebnis einer derartigen Festlegung kann jeder terminologische Ausdruck direkt mit einem algebraischen Term assoziiert werden. Desweitern können alle in den Algebren aufgeführten universellen Identitäten in semantisch äquivalente terminologische Identitäten überführt werden. Eine mittels ALCX repräsentierte Wissensbasis ist in meinem Programm mit Hilfe der in der funktionalen Programmiersprache Gofer (Version 2.28) gegebenen Möglichkeiten formuliert. Mein Programm bietet durch Simplifizierung von Anfrageausdrücken eine optimierte Lösung des aus dem Bereich der Wissensrepräsentation bekannten Retrieval-Problems. Die Simplifizierung von Anfrageausdrücken wird in meinem Programm erzielt, indem in den oben genannten Algebren erfüllte universelle Identitäten als Simplifikationshilfsmittel benutzt werden. Die in den Algebren aufgeführten universellen Identitäten bestehen stets aus zwei äquivalenten Termen, für die eine unterschiedliche Anzahl von Reduktionsschritten zur Evaluierung benötigt werden. Es existieren universelle Identitäten, bei denen unabhängig von den Instanzen der Argumentterme ein Term gegenüber einem anderen Term effizienter auswertbar ist. Bei diesen universellen Identitäten kann eine Simplifikation von einem Term zu einem anderen Term immer unproblematisch realisiert werden. Es gibt jedoch auch universelle Identitäten, bei denen die Unabhängigkeit von den Instanzen der Argumentterme nicht gegeben ist. In diesen Fällen wird ein von der Wissensbasis abhängiges Komplexitätsabschätzungsverfahren eingesetzt, um den effizienter auswertbaren Term von zwei an einer universellen Identität beteiligten Termen zu ermitteln. Daß die Simplifikation eines Anfrageausdrucks große Einsparungen bei dessen Auswertung nach sich ziehen kann, wurde an verschiedenen Beispielen in Abschnitt 5.4.4 gezeigt. Über eine weitere Möglichkeit, die zum Simplifizieren von Anfrageausdrucken verwendet werden kann, wurde in Abschnitt 5.4.5 berichtet. Die Genauigkeit der Komplexitätsabschätzung kann erhöht werden, indem das Komplexitätsabschätzungsverfahren erweitert wird. So kann beispielsweise die Komplexität der Funktion "oder" genauer abgeschätzt werden, indem für zu vereinigende Mengen überprüft wird, ob Teilmengenbeziehungen vorhanden sind. Durch eine genauere Abschätzung der Mächtigkeit entstehender Vereinigungsmengen wird die Komplexitätsabschätzung insgesamt in ihrer Genauigkeit gesteigert. Eine Änderung der Instanzen meiner terminologischen Datenbank erfordert eine Änderung des Skripts meines Programms. Indem die Instanzen-Daten in einer veränderlichen Datenbank festgehalten würden, könnte hier Abhilfe geschaffen werden. Dies könnte im Rahmen der Erstellung einer benutzterfreundlichen Ein- und Ausgabe-Schnittstelle realisiert werden.
Ziel dieser Arbeit war es, ein System zu entwickeln, mit dem Sätze von Reduktionsdiagrammen auf ihre Vollständigkeit überprüft werden können. Das System sollte in der puren, funktionalen Programmiersprache Haskell realisiert werden und speziell auf einen nichtdeterministischen Kalkül mit Konstruktoren, einem case-Konstrukt und einem rekursiven let- Ausdruck (letrec) ausgerichtet sein. Dazu wurde in Kapitel 2 der lambda-Kalkül und funktionale Programmiersprachen eingeführt, um die Entwicklung der Kalküle lambda-nd und lambda-nd,rec zu motivieren. Die Basis-Kalküle lambda-nd und lamda-nd,rec wurden in Kapitel 3 bezüglich ihrer Sprachdefinition und Reduktionsregeln vorgestellt. Die Implementierung der beiden Kalküle und der Parser für die verwendete Kernsprache wurden ebenso angegeben wie die Mechanismen zur Markierung und Reduktion der Terme. Die Unterscheidung eines reduzierbaren Terms in NO- und internen Redex, sowie deren Erkennung wurde in diesem Kapitel besonders herausgestellt, da sie die Grundlage für die zu validierenden Reduktionsdiagramme darstellt. Damit ist der Grundstock für diese Arbeit gelegt worden. In Kapitel 4 haben wir kurz Methoden vorgestellt, die lamda-Kalkülen und deren Derivate eine Bedeutung zuzumessen versuchen, um Programme oder Terme miteinander vergleichen zu können. Also nicht nur ihre Termstruktur, sondern ihr Verhalten zu vergleichen. Dabei ist festgestellt worden, daß für nichtdeterministische Kalküle nur eine Methode verfügbar ist, und zwar die der kontextuellen Äquivalenz. Da wir gängige Programmtransformationen dahingehend überprüfen wollten, ob sie der kontextuellen Äquivalenz genügen, also nicht die Auswertung oder das Ergebnis derselben verändern, haben wir ein Kontext-Lemma vorgestellt. Mit Hilfe des Kontext-Lemmas ist es uns möglich gewesen, die Gültigkeit von Beweisen in Reduktionskontexten auf beliebige Kontexte auszudehnen. Für die eigentlichen Beweise werden Reduktionsdiagramme benötigt, die Reduktionsfolgen in verschiedener Weise umstellen. Wir haben die Reduktionsdiagramme ebenfalls in Kapitel 4 definiert. Die Reduktionsdiagramme müssen an jeder Stelle einer Reduktionsfolge anwendbar sein, da sonst die Äquivalenz-Beweise nicht möglich sind. D. h. es müßte bewiesen werden, daß mindestens ein Reduktionsdiagramm einer definierten Menge von Reduktionsdiagrammen für jeden Term und jede seiner Reduktionsfolgen anwendbar ist. Der naive Weg wäre, alle Terme und seine Reduktionsfolgen dahingehend zu überprüfen. Da dies jedoch nicht möglich ist, haben wir uns dazu entschlossen so viele Terme wie möglich zu untersuchen, nicht um die Vollständigkeit der Diagramme zu beweisen, sondern um zu zeigen, daß auf viele verschiedenartige Terme Reduktionsdiagramme erfolgreich angewendet werden können. Die Generierung der Terme haben wir in Kapitel 5 ausführlich dargestellt. In Kapitel 6 haben wir die Sprache zur Darstellung von Reduktionsdiagrammen und die Implementierung der Diagramm-Validierung beschrieben. Weiterhin haben wir ein Verfahren vorgestellt, mit dem wir fehlende Diagramme für Terme suchen und meist auch finden können. Das gesamte System haben wir so aufgebaut, daß eine große Menge an Termen generiert wird, für die Diagramme anwendbar sein müssen. Wenn keines der Diagramme auf einen Term anwendbar ist, also nicht validiert werden kann, dann wird ein passendes Diagramm gesucht. Mit Hilfe des entwickelten Systems Jonah sind in Kapitel 7 verschiedene Programmtransformationen dahingehend überprüft worden, ob die angegebenen Reduktionsdiagramme für große Mengen von Termen gültig sind. Dabei ist als Ergebnis herausgekommen, daß ein vollständiger Satz an Reduktionsdiagrammen für die (cp)-Reduktion nur sehr schwer zu finden ist. Selbst neu hinzugefügte Transformationen, die dabei helfen sollten, die Schwierigkeiten zu umgehen, konnten nicht verwendet werden, da es uns ebenfalls nicht möglich gewesen ist, für sie vollständige Diagrammsätze zu finden. Daraufhin haben wir den Basis-Kalkül zweimal erweitert, um die Schwierigkeiten der (cp)-Diagramme in den Griff zu bekommen. Aber auch diese Ansätze haben kein zufriedenstellendes Ergebnis geliefert. Als positives Ergebnis dieser Arbeit kann aber festgestellt werden, daß das System Jonah bei der Entwicklung nichtdeterministischer Kalküle auf Basis von lambda-Kalkülen eine sehr gute Hilfestellung sein kann, auch wenn es nicht zum vollständigen Beweis der Gültigkeit von Reduktionsdiagrammen dienen kann.
Die Konvergenz von Medien, Telekommunikation sowie Informationstechnologie führt zu einer gesteigerten Interaktion zwischen den Computergeräten dieser drei Wirtschaftssektoren. Zugleich steigt die Anzahl mutierender Würmer, Viren und Trojanische Pferde, wie z.B. Varianten der Bagle- und Sober-Würmer oder der Netsky- und MyDoom-Viren, im Tagesrhythmus und bedrohen die Sicherheit von Computerplattformen. Die Daten der Systeme sind daher potenziellen Risiken ausgesetzt. Um dieser steigenden Bedrohung zu entgegnen, entwickelt die industrielle Initiative „Trusted Computing Group“ (TCG), ehemals „Trusted Computing Platform Alliance“ (TCPA), einen Standard, welcher die Sicherheit der verschiedenen Gerätetypen verbessern soll. Abbildung 1 dokumentiert dabei die Sicherheitsmängel, welche durch die verschiedenen Typen der Attacken oder den entdeckten Missbrauch veranschaulicht werden. Speziell Viren und der Missbrauch der Netzwerkzugänge innerhalb des Unternehmens können aus der Abbildung 1 als häufigste Ursache entnommen werden. Verlust des Laptops, nicht autorisierte Zugriffe durch Insider und Denial of Service Angriffe folgen auf den weiteren Plätzen. Die Gesamtkosten der Computerkriminalität sind zwar unter das Niveau vom Jahre 2000 gefallen, speziell von 2002 auf 2003 haben sich diese mehr als halbiert, obwohl seit 1999 besonders die Urheberrechtsverletzungen proprietärer Informationen stetig angestiegen sind. Der Verlust proprietärer Informationen steht mit 21 Prozent nicht direkt im Vordergrund der obigen Abbildung. Allerdings schlägt der Diebstahl von proprietären Informationen mit 35 Prozent der Gesamtkosten der Computerkriminalität zu buche und führt damit die geschätzten Verluste aus Abbildung 2 an. Auf Platz zwei folgen Denial of Service Angriffe, die Kosten von ca. 65,6 Millionen Dollar verursachen. Viren, Missbrauch des Netzes durch Insider sowie finanzieller Betrug folgen auf weiteren Plätzen. In der Studie vom Computer Security Institute werden die Bestrebungen der TCG, vertrauenswürdige Plattformen herzustellen, als mögliche Lösung des Problems des Diebstahls von proprietären Informationen betrachtet. Deren Effekte werden sich voraussichtlich in fünf bis zehn Jahren auf die Computersicherheit bemerkbar machen. Auch das „Federal Bureau of Investigation“ (FBI) hat mittlerweile eine Initiative zusammen mit der Entertainment- und Softwareindustrie gegen den Diebstahl von urheberrechtlich geschütztem Material abgeschlossen, da die Verluste in der Summe mehrere Billionen Dollar verursachen. Die beiden ersten Abbildungen in Verbindung mit dem dazugehörigen Zahlenmaterial belegen die Diskrepanz der TCG. Dazu stützt sich die TCG auf die steigende Anzahl an Attacken und Missbräuche, ohne die geschätzten Verluste der einzelnen Attacken zu berücksichtigen. Gerade die enorme wirtschaftliche Bedeutung von Information und deren Missbrauch offenbart allerdings einen möglichen Antrieb, die Sicherheit bestehender Rechnersysteme zu verbessern. Diese Erkenntnis ist jedoch nicht übereinstimmend mit der Triebkraft der TCG, die ihre Initiative auf die steigende Anzahl an Schwachstellen stützt, um vermutlich ihre eigentlichen Beweggründe zu verschleiern. Ziel dieser Arbeit ist zum einen den technischen Standard der TCG sowie mögliche Umsetzungen vorzustellen und zum anderen die Standardisierung unter ökonomischen Ansichten zu untersuchen, um sie anschließend zu bewerten. Dazu wird im zweiten Kapitel ein erster Einblick über das Standardisierungsgremium, deren Beweggründe sowie den historischen Kontext zwischen TCPA und TCG gegeben. Das dritte Kapitel dient als Grundlage und Einführung in die Informationsökonomie, um die Komplexität und Zusammenhänge hinsichtlich der Standardisierung und abschließenden Bewertung in den folgenden Kapiteln besser zu erfassen. Neben der Technologie und Information spielt die Auswahl der Erlöse in Verbindung mit der Preisdiskriminierung eine wichtige Rolle. Bezüglich der Standardisierung und Bewertung haben Lock-in sowie Wechselkosten erhebliche Auswirkungen auf die Kon-sumenten. Das gilt ebenfalls für die Größenvorteile, vor allem auf die Netzwerkexternalitäten. Die Standardisierung der TCG wird im vierten Kapitel ausführlicher behandelt, wobei Standards definiert, abgegrenzt und klassifiziert werden. Zudem wird die koope-rative Standardisierung in Form einer Allianz sowie die daraus folgende Problematik des Umgangs mit geistigem Eigentum eingegangen. Das fünfte Kapitel geht direkt auf die technischen Spezifikationen der TCG ein, erklärt das Grundkonzept vertrauenswürdiger Plattformen und behandelt als Schwerpunkt die Komponente des „Trusted Platform Modules“ (TPM) sowie dessen Implementierung in einen Computer. Im Anschluss daran werden im sechsten Abschnitt technischen Umsetzungen auf praktische Anwendungen und Szenarien vorgestellt. Dazu werden als Erstes verfügbare Umsetzungen sowie die Hardwarearchitektur am Beispiel von Intel LaGrande dargestellt, worauf die anschließenden Softwareanwendungen unter den beiden Betriebssystemen Windows und Linux aufbauen. Das siebte Kapitel behandelt die Bewertung der kooperativen Standardisierung und zeigt die Zusammenhänge zwischen Hardwarekompatibilität und Netzwerkexternalitäten auf. Darüber hinaus wird die Adoption dieser neuen Technologie unter statischen und dynamischen Ansätzen berechnet und abschließend die Schwächen und Risiken dieser neuen Technologie erläutert.
In dieser Diplomarbeit wurde zunächst eine Einführung in das Gebiet der Unifikationstheorie gegeben, um dann zum Teilgebiet des Kontextmatchings zu kommen. Dieses wurde in das Gesamtgebiet der Unifikation eingeordnet. In Anlehnung an [Schm2003] wurde die Komplexität einiger Einschränkungen des Kontextmatchings betrachtet. Insbesondere wurde ein Algorithmus zur Lösung linearer Kontextmatchingprobleme in polynomieller Zeit vorgestellt. Es folgte die Einführung des Transformationsalgorithmus aus [Schm2003] zur Lösung allgemeiner Kontextmatchingprobleme, wobei nach und nach verbesserte Transformationsregeln für einzelne spezielle Problemsituationen vorgestellt wurden. Über [Schm2003] hinausgehend wurden die Regeln Split: Korrespondierende Lochpfade und Konstantenelimination vorgestellt. Im Rahmen der Diplomarbeit wurden die genannten Algorithmen in der funktionalen Programmiersprache Haskell implementiert, wobei auf eine einfache Erweiterbarkeit um neue Transformationsregeln sowie alternative Heuristiken zur Auswahl der in einem Schritt anzuwendenden Transformationsregel geachtet wurde. Die Implementierung (und damit auch die in ihr implementierten Algorithmen) wurde mit Hilfe von zufällig erzeugten Termen auf ihre Leistungsfähigkeit getestet. Hauptaugenmerk lag dabei darauf, inwiefern sich Regeln, die über die Basisregeln aus Tabelle 3.4.1 hinausgehen, positiv auf die Anzahl der Transformationsschritte auswirken. Das Ergebnis ist beeindruckend: durch die Einführung komplexerer Transformationsregeln ließen sich in unseren Testfällen bis zu 87% der Transformationsschritte einsparen, im Durchschnitt immerhin noch 83%. Speziell komplexere Kontextmatchingprobleme mit einer größeren Anzahl an Kontextvariablen profitieren hiervon. Insbesondere die Erkennung korrespondierender Positionen in Verbindung mit der Regel Split führte zu erheblichen Verbesserungen. Die implementierten Algorithmen zur Erkennung korrespondierender Positionen stellen teilweise nur ein notwendiges Kriterium für die Existenz korrespondierender Löcher dar. Dies kann zu fehlerhaften Erkennungen solcher Positionen führen. Wie sich in unseren Tests zeigte, scheint das jedoch kein gravierendes Problem zu sein, da die entsprechenden Split- Transformationen ohnehin äußerst sparsam eingesetzt werden.
Wir haben ein Softwaresystem entwickelt, das in der Lage ist, Beschreibungen von Termersetzungssystemen höherer Ordnung, deren Reduktionsregeln auf einer strukturellen operationalen Semantik basieren, einzulesen und zu interpretieren. Das System ist dabei fähig, Reduktionskontexte für die Redexsuche zu benutzen, die entweder vom Benutzer definiert werden können oder automatisch anhand der strikten Positionen berechnet werden. Außerdem dürfen Kontexte und spezielle Definitionen für Term-Mengen, die wir Domains nennen, in den Reduktionsregeln verwendet werden. Mit dem resultierenden Reduktionssystem-Format können wir somit nicht nur den „lazy“ Lambda-Kalkül, den Call-by-Value Lambda-Kalkül und verwandte, um Konstruktoren und Fallunterscheidungen erweiterte Kalküle, wie die in Kapitel 4 vorgestellten Kernsprachen KFP und PCF, darstellen, sondern auch den (in Abschnitt 4.3 vorgestellten) Call-by-Need Lambda-Kalkül, welcher sich durch die Verwendung von Kontexten innerhalb der Regeln deutlich von den anderen Kalkülen abhebt. Allerdings hält sich der Call-by-Need Lambda-Kalkül damit nicht an das in Kapitel 5 vorgestellte GDSOS-Format, das u.a. sicherstellt, dass Bisimulation eine Kongruenz ist. Wir haben dabei in Abschnitt 5.3.3 bewiesen, dass sich ein GDSOS-Reduktionssystem in ein äquivalentes strukturiertes Auswertungssystem nach Howe übersetzen lässt. Unser System ist in der Lage, die GDSOS-Bedingungen zu prüfen und gibt eine Warnung aus, falls eine der nötigen Bedingungen nicht erfüllt ist (wobei aus dieser auch gleich der Grund des Verstoßes hervorgeht). Wie wir gesehen haben, ist unser System nicht nur befähigt, die einzelnen Reduktionsschritte für kleinere Bespiele ordnungsgemäß auszuführen, sondern es ist durchaus in der Lage, auch aufwendigere KFP-Ausdrücke, wie in unserem Quicksort- Beispiel, auszuwerten.
In der vorliegenden Diplom-Arbeit wurde das in [19] vorgeschlagene Modell zur Partitionierung hybrider Systeme diskutiert und die Anwendbarkeit verschiedener verschiedener Optimierungsverfahren auf das Problem untersucht.
Hierbei wurde der Systemgraph um die Ein-/Ausgabe-Blöcke erweitert, damit der Systemgraph eine eine konsistente Erweiterung des des Graphen-Modells darstellt. Weiterhin wurden die Probleme und Einschränkungen aufgezeigt, die sich bei der Abbildung eines hybriden Systems auf den Systemgraphen ergeben.
In dieser Arbeit wurde eine Geometrieuntersuchung am FABP-Molekülmodell durchgeführt. Um 3J-Kopplungsinformation für die Diederwinkelanalyse zu bestimmen, wurden J-modulierte [15N,1H]-COSY-Experimente durchgeführt. Mit Hilfe numerischer Anpassungsroutinen wurden die Signalintensitäten quantitativ ausgewertet, um sehr genaue 3JHN,H-alpha-Kopplungskonstanten zu erhalten. Diese Kopplungskonstanten wurden in Kraftfeldrechnungen als experimentelle Randbedingungen für die Phi-Diederwinkel des Proteinrückgrates berücksichtigt. Dadurch ist eine Aussage über die Winkelverteilung und über die zeitlich gemittelten Kopplungseffekte im Proteinmodell möglich. Die aus der Molekulardynamiksimulation bestimmten 3JHN,H-alpha-Kopplungskonstanten wurden mit den experimentellen verglichen. Die Analyse ergab, daß die den beta-Faltblättern zugewandten Ränder der alpha-Helixbereiche sowie zwei der zehn beta-Faltblattbereiche sehr flexible Teilabschnitte aufweisen. Diese Arbeit konnte somit die Überlegungen stützen, die vor allem den flexiblen Teilabschnitt zwischen der alpha-II-Helix und dem beta-B-Faltblattbereich für die Funktion des Proteins verantwortlich machen.