Ingo Rechenberg PowerPoint-Folien zur 5. Vorlesung Bionik II (Biosensorik /Bioinformatik) Das molekulare Schlüssel-Schloss-Prinzip Die universelle Technologie des Lebens Ein Schlüssel-Schloss-System spielt in der heutigen Technik (noch) eine geringe Rolle, es sei denn, man möchte an die amerikanischen Goldreserven in Fort Knox heran Schlüssel/Schloss in der Technik Verdauungsenzym Schloss Komplex aus 44 Aminosäuren Schlüssel >5! pH < Magensäure pH = 2 Pepsinogen Pepsin aktiv ! inaktiv zugeschlossen aufgeschlossen Schlüssel/Schloss in der Biologie Wie stellt die Natur ihre Werkstücke (Schlüssel-Schloss-Moleküle) her ? Konstruktionszeichnung – Gestern Realisation – Gestern 0100011011110010110 010111100101011... Autocad Konstruktionszeichnung – Heute AutoCad → STL-Datei Industrieroboter 3D-Drucker Vielleicht auch über Autocad konstruiert Realisation – Heute Desoxyribonukleinsäure (DNA-Doppelhelix) Protein (Aminosäurekette) Konstruktionszeichnung und Realisation in der Biologie Nukleotidbasen Aminosäuren Bausteine für die „Konstruktionszeichnung“ Bausteine für die Realisierung Adenin A Thymin T Guanin G Cytosin C Phenylalanin Leucin Isoleucin Methionin Valin Serin Prolin Threonin Alanin Tyrosin Histidin Glutamin Asparagin Lysin Asparaginsäure Glutaminsäure Cystein Tryptophan Arginin Glycin Statt der 2 Symbole 0 und 1 in Autocad Phe Leu Ile Met Val Ser Pro Thr Ala Tyr His Gln Asn Lys Asp Glu Cys Try Arg Gly TTT TTC CTT CTC ATT ATC ATA . . . Schlüssel-Schloss-Prinzip – Basenpaarung Der Genetische DNA-Code T G A=Adenin T=Thymin G=Guanin C=Cytosin 1. Nukleotidbase C A C A G TAT TTT TCT Tyr TGT Cys T Phe TTC TCC Ser TAC TGC C T TAA Stopp TGA Stopp A TTA Leu TCA TAG TTG TCG TGG Trp G T CTT CGT CCT CAT His CTC CGC Arg C Leu CCC Pro CAC C A CTA CGA CCA CAA Gln G CTG CGG CCG CAG T ATT ACT AAT AGT Asn Ser C ATC Ile ACC Thr AAC AGC A ATA ACA AAA AGA Arg A Lys Met ACG G ATG start AAG AGG T GGT GCT GAT GTT Asp GGC Gly C GCC Ala GAC GTC Val G A GCA GAA Glu GGA GTA G GGG GCG GAG GTG 3. Nukleotidbase 2. Nukleotidbase DNA Enzym 4 Ablesewerkzeug TCA t RNA Ser m RNA Thr Leu Ala Aminoacyl t-RNA Synthetase His Gly Val Arg TCA Ser Leu Thr Ribosom Bei der RNA ist Thymin durch Uracyl ersetzt Ser Leu Thr Montageplattform Realisierung der genetischen Information Akzeptor für Aminosäure A A G Phenylalanin t-RNA Va l Aminosäure und ATP docken an Val Aminosäure P P P P P A P A Aminoacyl t-RNA Synthetase ATP Der Prozess geschieht auch ohne die Synthetase, doch er ist extrem langsam (wichtig für die Entstehung des Lebens!) Enzym kehrt in den Originalzustand zurück P P A Val So wird die Aminosäure an die zugehörige t-RNA angedockt ATP gibt zwei Phosphatgruppen ab und verbindet sich mit der Aminosäure P Va l P A Val t-RNA dockt an AMP wird frei Beladene t-RNA wird freigegeben unbeladene t-RNA Hier passt nur ein Teil der t-RNA hinein, die Val binden soll Die Form und damit die Funktion der Aminoacyl t-RNA Synthetase entsteht durch die Aneinanderreihung der „richtigen“ Aminosäuren Die Form und damit die Funktion eines jeden Enzyms ! entsteht durch die Aneinanderreihung der „richtigen“ Aminosäuren Durch die Aneinanderreihung der „richtigen“ Längen und Winkel eines Polygonzuges entsteht ein Zahnrad. Technisches Formgebungsproblem „Zahnrad“ Nun kommt wieder der „Helmholtz“ Man stelle sich die 20 Aminosäuren als 20 verschiedene Winkelstücke vor, die zu einer Gelenkkette aneinandergekoppelt werden können. A20 A19 A8-A11-A17-A19-A19-A8-A18-A7-A15-A18-A18-A7-A14-A4-A16-A10-A20-A17-A9A5-A8-A2 Signalmolekül A19 A19 A20 Wozu der lange Rest ? Zur Feineinstellung ! Atomare Fernwirkungen ! Aufbau einer Gelenkkette mit Rechteckaussparung Zahnradfertigung Proteinfaltung Technisches Formgebungsproblem Lösung durch Ingenieurskunst und biologisches Formgebungsproblem Lösung durch Evolution Mit DNA Rechnen Der HAMILTON-Weg Vom Start zum Ziel darf jeder Knotendes Graphen nur einmal durchlaufen werden. William Rowan Hamilton (1805 - 1865) Start Ziel ADLEMANs Experiment mit seinem TT-100 100 Mikroliter TestTube Lenonard M. Adleman 3 4 2 1 5 Start Ziel 7 6 Die Lösung Strategie zur Konstruktion eines HAMILTONschen Weges Gegeben sei ein Graph mit n Knoten: 1. Erzeuge eine (große) Menge zufällig bestimmter Wege durch den Graphen. 2. Für alle Wege in dieser Menge: a) Überprüfe, ob der Weg mit dem Startknoten beginnt und mit dem Zielknoten endet. Falls nicht, entferne den Weg aus der Menge. b) Überprüfe, ob der Weg genau n Knoten enthält. Falls nicht, entferne den Weg aus der Menge. c) Überprüfe, ob außer Start- und Zielknoten auch jeder andere Knoten des Graphen im Weg enthalten ist. Falls nicht, entferne den Weg aus der Menge. 3. Wenn die Menge nicht leer ist melde, dass ein HAMILTON-Weg existiert; wenn sie leer ist melde, dass es keinen gibt ! Biochemische Grundoperationen für „DNA - Computing“ Allgemein 1. Kettenverlängerung 2. Kettenverkürzung 3. Kettenverbindung 4. Kettenauftrennung 5. Kettenreplikation 6. Basen-Substitution Speziell 1. Polymerase-Kettenreaktion 2. Gel-Elektrophorese 3. Affinitäts-Separation Aalen Celle Trier Start Basismoleküle Verbindungsmoleküle Gotha Städte-Code Ziel Trier Gotha Gotha Aalen Enzym Die Basis-DNA-Sequenzen kommen in das Reaktionsgefäß Kettenbildungen 1 2 3 4 ! 5 Zur Strategie DNA-Vermehrung durch ein flankierendes Oligonukleotid (Primer) Enzym Polymerase Erhitzen auf knapp 100° C Polymerase-Ketten-Reaktion Polymerase Chain Reaction (PCR) Zur Strategie DNA-Vermehrung durch zwei flankierende Oligonukleotide (Primer) Erhitzen auf knapp 100° C Polymerase-Ketten-Reaktion Polymerase Chain Reaction (PCR) DNA-Vermehrung durch zwei flankierende Oligonukleotide (Primer) Aalen Polymerase-Ketten-Reaktion Polymerase Chain Reaction (PCR) Zur Strategie DNA-Probe Gel-Elektrophorese Langes Fragment Kurzer Weg Gel Kathode Anode Kurzes Fragment Langer Weg Zur Strategie 4 5 Affinitätsselektion Zur Strategie Man fischt alle Stränge heraus, die „Celle“ enthalten. Aus dieser Menge fischt man alle Stränge heraus, die „Gotha“ enthalten. … Eisen 4 5 Affinitätssektion Zur Strategie ADLEMANs Experiment hat 7 Tage gedauert Zur Strategie Programmiersprache für DNA-Computing • Input input(tube t) Input definiert eine Eingabe, mit der im Folgenden gearbeitet werden kann. • Detect detect(tube t) Detect testet, ob in einer Lösung noch DNA-Moleküe vorhanden sind und liefert True bzw. False zurück. Damit entspricht Detect der kombinierten Anwendung von PCR und Elektrophorese. • Amplify amplify(tube t) to (tube t1) and (tube t2) Die Amplify Operation erzeugt zwei Kopien einer Lösung und entspricht damit reiner Anwendung der PCR. • Merge merge(tube t1, tube t2) Merge liefert die Vereinigung zweier Mengen zurück, entspricht damit dem Vermischen zweier Lösungen. • Seperate +(tube t, word w) Die normale Plus-Seperate Operation liefert all die Wörter aus der Menge t zurück, die den Teilstring w enthalten. Es entspricht dem Filtern einer Lösung mittels magnetischer Partikel. −(tube t, word w) Das Minus-Seperate arbeitet analog und liefert all die Wörter, die nicht den Teilstring w enthalten. L(tube t, int n) L-Seperate liefert alle Wörter zurück, die kürzer als der Parameter n sind. Das entspricht der Auftrennung nach Länge mittels Gelelektrophorese. B(tube t, word w) Das B liefert alle Wörter zurück, die mit w beginnen. E(tube t, word w) Analog liefert E alle Wörter zurück, die auf w enden. Beiden entspricht PCR mit den jeweiligen Primern. Quelle: Ralf Eggeling DNA computing www.marinero.de/bioinformatics/dnacomputing.pdf Programm-Beispiele Beispiel 1: (1) input(N) (2) N = +(N0,A0) (3) N = +(N0,G0) (4) detect(N) Beispiel 2: (1) input(N) (2) amplify(N) to N1 and N2 (3) NA = +(N01,A0) (4) NG = +(N02,G0) (5) N0A = −(NA,0 G0) (6) N0G = −(NG,0 A0) (7) N = merge(N0A ,N0G) Beispiel 3: (1) input(N) (2) N = B(N, s0) (3) N = E(N, s6) (4) N = L(N, 140) (5) for(i = 1; i < 6; i++) { N = +(N, si) } (6) detect(N) Das einfache Beispiel 1 liefert all die Wörter aus der Eingabemenge zurück, die sowohl A als auch G enthalten. Der Algorithmus in Beispiel 2 realisiert ein ausschließendes Oder. Er liefert alle Wörter zurück, die entweder ein A oder aber ein G enthalten, aber nicht beides . Beispiel 3 ist eine formale Schreibweise von Adlemans Experiment. Quelle: Ralf Eggeling DNA computing x y z 1 0 0 0 0 0 1 0 1 0 0 0 1 1 0 1 1 0 1 1 1 0 1 1 1 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 extrahiere x=0 Beispiel für eine „tube separation“ extrahiere z=1 1 0 1 1 1 1 SAT-Problem Erfüllbarkeitsproblem kombiniere x=0 z=1 1 0 0 0 0 0 1 0 1 0 0 1 1 1 0 1 1 1 1 (Satisfiability Problem) extrahiere x=1 Statt mit den 4 Erbbuchstaben G A T C arbeiten wir nur mit den 2 Computerzeichen 0 und 1 2 0 0 0 0 1 0 1 0 0 1 1 extrahiere y=0 1 0 1 0 0 0 1 1 1 0 0 1 kombiniere x=1 y=0 Für welche Werte x, y, z ist die Aussage wahr ? 1 0 3 2 1 0 1 1 1 1 0 0 0 0 0 1 extrahiere y=1 1 0 1 0 0 0 0 0 1 1 1 1 Lösung extrahiere z=0 0 kombiniere y=1 z=0 1 1 1 0 0 0 3 0 0 Logische Funktion b 0 1 0 1 „oder“ avb 0 1 1 1 a 0 0 1 1 b 0 1 0 1 „und“ a v a 0 0 1 1 0 0 0 1 b a 0 1 ¬a 1 0 „nicht“ Für welche Werte x, y, z ist die Aussage wahr (=1) ? Erfüllbarkeitsproblem x y z 1 0 0 0 0 0 1 0 1 0 0 0 1 1 0 1 1 0 1 1 1 0 1 1 1 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 extrahiere x=0 Beispiel für eine „tube separation“ extrahiere z=1 1 0 1 1 1 1 SAT-Problem Erfüllbarkeitsproblem kombiniere x=0 z=1 1 0 0 0 0 0 1 0 1 0 0 1 1 1 0 1 1 1 1 (Satisfiability Problem) extrahiere x=1 0 0 0 0 0 1 0 1 0 0 1 1 extrahiere y=0 1 0 1 0 0 0 1 1 1 0 0 1 kombiniere x=1 y=0 Für welche Werte x, y, z ist die Aussage wahr ? 1 2 3 2 1 0 1 1 1 1 0 0 0 0 0 1 extrahiere y=1 1 0 1 0 0 0 0 0 1 1 1 1 Lösung extrahiere z=0 0 kombiniere y=1 z=0 1 1 1 0 0 0 3 0 0 Elektrische Impulse Informationsverarbeitung Elektrische Impulse Im Jahr 2002 haben Wissenschaftler des Weizmann-Institut für Wissenschaften in Rehovot, Israel, einen programmierbaren molekularen Computer gebaut, bestehend aus Enzymen und DNA-Molekülen anstatt Silicon-Chips. Am 28. April 2004 haben Ehud Shapiro, Yaakov Benenson, Binyamin Gil, Uri Ben-Dor und Rivka Adar vom Weizmann-Institut in der Fachzeitschrift Nature bekannt gegeben, dass sie einen DNA-Computer gekoppelt mit einem In- und Outputmodul gebaut haben, welcher in der Lage sein sollte, Krebsaktivitäten in einer Zelle aufzuspüren und bei Auftreten dieser ein Medikament abzugeben. Im Januar 2013 ist es Wissenschaftlern gelungen 750 Kilobytes auf DNA-Basis zu speichern. Gespeichert wurden eine JPEG-Datei, ein paar ShakespeareSonette und eine Audiodatei mit Martin Luther Kings Rede „I have a Dream”. Elektronische Informationsverarbeitung MolekülStrukturen Eine Vision aus dem Internet Die Aufgabe ist schwierig. Eine echt harte Nuss. Eine Primfaktorzerlegung einer solch großen Zahl, das kann doch kein Mensch im Kopf rechnen! Also schnell das Reagenzglas gegriffen, ein paar Tropfen aus der roten und der gelben Pipette mit der klaren Flüssigkeit gemischt und das Ganze auf den Gelfilm geträufelt. Ah! Eine Primzahl, na da hätte man ja lange suchen können. So könnte es sich in Zukunft zutragen, wenn schnell mal... Informationsverarbeitung MolekülStrukturen Molekulare Informationsverarbeitung Warum DNA-Computing ? Geschwindigkeit 9 PC (1GHz): 10 Operationen/sec Super-PC: 1012 Operationen/sec DNA: 10 Effizienz 7 10 10 20 Operationen/sec Die Organisation und Komplexität aller Lebewesen basiert auf einer Codierung mit vier verschiedenen Basen im DNA-Molekül. Dadurch stellt die DNA ein Medium dar, welches für die Datenverarbeitung perfekt geeignet ist. Nach verschiedenen Berechnungen würde ein DNA-Computer mit einer Flüssigkeitsmenge von einem Liter und darin enthaltenen sechs Gramm DNA eine theoretische Speicherkapazität von 3072 Exabyte ergeben. Auch die theoretisch erreichbare Geschwindigkeit wegen der massiven Parallelität der Berechnungen wäre enorm. Pro Sekunde ergeben sich etwa 1 Million Tera-Operationen, während die leistungsfähigsten Computer heute gerade mal eine Tera-Operation pro Sekunde erreichen. Kilobyte (kB) 103 Byte = 1.000 Byte Megabyte (MB) 106 Byte = 1.000.000 Byte Gigabyte (GB) 109 Byte = 1.000.000.000 Byte Terabyte (TB) 1012 Byte = 1.000.000.000.000 Byte Petabyte (PB) 1015 Byte = 1.000.000.000.000.000 Byte Exabyte (EB) 1018 Byte = 1.000.000.000.000.000.000 Byte Zettabyte (ZB) 1021 Byte = 1.000.000.000.000.000.000.000 Byte Yottabyte (YB) 1024 Byte = 1.000.000.000.000.000.000.000.000 Byte 1 Byte (Oktett) = 8 bit ≈ 3 Zettabyte = Datenmenge, die die Menschheit bisher angesammelt hat Prinzip „Biochip“ Schlüssel-Schloss-Array Markierte Positiv-Moleküle Werden diese von einer der verschiedenen Gruppen gleicher Moleküle erkannt ? Bis zu 100 000 verschiedene Gruppen von Negativ-Molekülen auf Unterlage fixiert. Schlüssel Je 10 Mill. Moleküle Schlösser Der DNA Chip 1 Glas-Objektträger mit Mikroarray: Messpunkte (Spots) mit individuellen einzelsträngigen DNA-Stücken (cDNA) bekannter Sequenz DNA-Chip auf Oligonukleotid-Basis (4 - 10 Nukleotidbasen) Man interessiert sich für die Unterschiede rot / grün 2 Hybridisierung: Unbekannte DNA-Probe Kontroll-DNA DNA-Chip auf Oligonukleotid-Basis Fluoreszenzmarkierung Angekoppelte Fluorophore (4 - 10 Nukleotidbasen) 3 Waschen: Falsch gepaarte DNA-Stränge werden herausgewaschen DNA-Chip auf Oligonukleotid-Basis 4 Laserkamera: Orange Mischfarbe, wenn Kontroll- und Probe-DNA identisch, sonst rote oder grüne Spots DNA-Chip auf Oligonukleotid-Basis (4 - 10 Nukleotidbasen) 5 Auswertung: Auswertung der Spotfarben mit Hilfe eines Computers DNA-Chip auf Oligonukleotid-Basis (4 - 10 Nukleotidbasen) Auslesen eines DNA-Chips Das Schlüssel-Schloss-Prinzip in komplexer Form Die einzelnen Felder des Microarray sind mit einzelsträngigen DNA-Stücken beschichtet. Durch Zugabe der mit einem roten und grünen Fluoreszenzfarbstoff markierten Untersuchungsproben binden diese bei komplementärer Basenabfolge an die DNA im Chip. Die Position, Intensität und Wellenlänge der entstehenden Mischfarbe werden mit einer hochauflösenden Laserkamera detektiert und liefern Informationen über Unterschiede in der Expression der Gene zwischen den beiden Proben, z. B. in verschiedenen Organbereichen. (Genexpression = Umsetzung der Information eines Gens) Ende www.bionik.tu-berlin.de Strategie zur Konstruktion eines HAMILTONschen Weges Gegeben sei ein Graph mit n Knoten: 1. Erzeuge eine Menge zufällig bestimmter Wege durch den Graphen. 2. Für alle Wege in dieser Menge: a) Überprüfe, ob der Weg mit dem Startknoten beginnt und mit dem Zielknoten endet. Falls nicht, entferne den Weg aus der Menge. b) Überprüfe, ob der Weg genau n Knoten enthält. Falls nicht, entferne den Weg aus der Menge. c) Überprüfe, ob außer Start- und Zielknoten auch jeder andere Knoten des Graphen im Weg enthalten ist. Falls nicht, entferne den Weg aus der Menge. 3. Wenn die Menge nicht leer ist melde, dass ein HAMILTON-Weg existiert; wenn sie leer ist melde, dass es keinen gibt ! Strategie zur Konstruktion eines HAMILTONschen Weges Gegeben sei ein Graph mit n Knoten: 1. Erzeuge eine Menge zufällig bestimmter Wege durch den Graphen. 2. Für alle Wege in dieser Menge: a) Überprüfe, ob der Weg mit dem Startknoten beginnt und mit dem Zielknoten endet. Falls nicht, entferne den Weg aus der Menge. b) Überprüfe, ob der Weg genau n Knoten enthält. Falls nicht, entferne den Weg aus der Menge. c) Überprüfe, ob außer Start- und Zielknoten auch jeder andere Knoten des Graphen im Weg enthalten ist. Falls nicht, entferne den Weg aus der Menge. 3. Wenn die Menge nicht leer ist melde, dass ein HAMILTON-Weg existiert; wenn sie leer ist melde, dass es keinen gibt ! Strategie zur Konstruktion eines HAMILTONschen Weges Gegeben sei ein Graph mit n Knoten: 1. Erzeuge eine Menge zufällig bestimmter Wege durch den Graphen. 2. Für alle Wege in dieser Menge: a) Überprüfe, ob der Weg mit dem Startknoten beginnt und mit dem Zielknoten endet. Falls nicht, entferne den Weg aus der Menge. b) Überprüfe, ob der Weg genau n Knoten enthält. Falls nicht, entferne den Weg aus der Menge. c) Überprüfe, ob außer Start- und Zielknoten auch jeder andere Knoten des Graphen im Weg enthalten ist. Falls nicht, entferne den Weg aus der Menge. 3. Wenn die Menge nicht leer ist melde, dass ein HAMILTON-Weg existiert; wenn sie leer ist melde, dass es keinen gibt ! Strategie zur Konstruktion eines HAMILTONschen Weges Gegeben sei ein Graph mit n Knoten: 1. Erzeuge eine Menge zufällig bestimmter Wege durch den Graphen. 2. Für alle Wege in dieser Menge: a) Überprüfe, ob der Weg mit dem Startknoten beginnt und mit dem Zielknoten endet. Falls nicht, entferne den Weg aus der Menge. b) Überprüfe, ob der Weg genau n Knoten enthält. Falls nicht, entferne den Weg aus der Menge. c) Überprüfe, ob außer Start- und Zielknoten auch jeder andere Knoten des Graphen im Weg enthalten ist. Falls nicht, entferne den Weg aus der Menge. 3. Wenn die Menge nicht leer ist melde, dass ein HAMILTON-Weg existiert; wenn sie leer ist melde, dass es keinen gibt ! Strategie zur Konstruktion eines HAMILTONschen Weges Gegeben sei ein Graph mit n Knoten: 1. Erzeuge eine Menge zufällig bestimmter Wege durch den Graphen. 2. Für alle Wege in dieser Menge: a) Überprüfe, ob der Weg mit dem Startknoten beginnt und mit dem Zielknoten endet. Falls nicht, entferne den Weg aus der Menge. b) Überprüfe, ob der Weg genau n Knoten enthält. Falls nicht, entferne den Weg aus der Menge. c) Überprüfe, ob außer Start- und Zielknoten auch jeder andere Knoten des Graphen im Weg enthalten ist. Falls nicht, entferne den Weg aus der Menge. 3. Wenn die Menge nicht leer ist melde, dass ein HAMILTON-Weg existiert; wenn sie leer ist melde, dass es keinen gibt ! Strategie zur Konstruktion eines HAMILTONschen Weges Gegeben sei ein Graph mit n Knoten: 1. Erzeuge eine Menge zufällig bestimmter Wege durch den Graphen. 2. Für alle Wege in dieser Menge: a) Überprüfe, ob der Weg mit dem Startknoten beginnt und mit dem Zielknoten endet. Falls nicht, entferne den Weg aus der Menge. b) Überprüfe, ob der Weg genau n Knoten enthält. Falls nicht, entferne den Weg aus der Menge. c) Überprüfe, ob außer Start- und Zielknoten auch jeder andere Knoten des Graphen im Weg enthalten ist. Falls nicht, entferne den Weg aus der Menge. 3. Wenn die Menge nicht leer ist melde, dass ein HAMILTON-Weg existiert; wenn sie leer ist melde, dass es keinen gibt ! Strategie zur Konstruktion eines HAMILTONschen Weges Gegeben sei ein Graph mit n Knoten: 1. Erzeuge eine Menge zufällig bestimmter Wege durch den Graphen. 2. Für alle Wege in dieser Menge: a) Überprüfe, ob der Weg mit dem Startknoten beginnt und mit dem Zielknoten endet. Falls nicht, entferne den Weg aus der Menge. b) Überprüfe, ob der Weg genau n Knoten enthält. Falls nicht, entferne den Weg aus der Menge. c) Überprüfe, ob außer Start- und Zielknoten auch jeder andere Knoten des Graphen im Weg enthalten ist. Falls nicht, entferne den Weg aus der Menge. 3. Wenn die Menge nicht leer ist melde, dass ein HAMILTON-Weg existiert; wenn sie leer ist melde, dass es keinen gibt ! Strategie zur Konstruktion eines HAMILTONschen Weges Gegeben sei ein Graph mit n Knoten: 1. Erzeuge eine Menge zufällig bestimmter Wege durch den Graphen. 2. Für alle Wege in dieser Menge: a) Überprüfe, ob der Weg mit dem Startknoten beginnt und mit dem Zielknoten endet. Falls nicht, entferne den Weg aus der Menge. b) Überprüfe, ob der Weg genau n Knoten enthält. Falls nicht, entferne den Weg aus der Menge. c) Überprüfe, ob außer Start- und Zielknoten auch jeder andere Knoten des Graphen im Weg enthalten ist. Falls nicht, entferne den Weg aus der Menge. 3. Wenn die Menge nicht leer ist melde, dass ein HAMILTON-Weg existiert; wenn sie leer ist melde, dass es keinen gibt !