Date post: | 12-May-2015 |
Category: |
Technology |
Upload: | donschado |
View: | 231 times |
Download: | 0 times |
a taste of computer science
@DonSchado
cologne.rb | 20.11.2013
disclaimerThis presentation contains theoretical stuff from about 4 semesters and knowledge of different basic CS courses.
Don‘t feel stupid if you don‘t understand anything.
Nonetheless some details are simplified in interest of the audience.
Most of the (ugly) slides are in german, because I‘m reusing them.
Is this computer science?
No! CS means way more than just coding, so let's kick things off with something simple and have a look on graph theory.(Because many problems of computer science are either graph-theoretical problems or can be transferred to a graph.)
) besteht
Euler 1736: Gibt es einen Rundweg durch Königsberg, der jede der 7 Brücken genau einmal überquert?
Eulerweg, Eulerkreis
jede Kante nur ein malKnoten mehrmals
Es existiert ein Eulerweg, wenn die Zahl der Knoten mit ungeradem Grad 0 oder 2 ist
Eulerweg, Eulerkreis
jede Kante nur ein malKnoten mehrmals
Es existiert ein Eulerweg, wenn die Zahl der Knoten mit ungeradem Grad 0 oder 2 ist
Sir William Rowan Hamilton, who was Astronomer Royal of Ireland, invented the puzzle in 1857
TSP = Traveling Salesperson Problem
Gesucht: Die kürzeste Route durch alle Städte, wobei jede Stadt nur einmal besucht werden darf(kürzester Hamiltonkreis)
1,4 Oktilliarden
TSP = Traveling Salesperson Problem
Gesucht: Die kürzeste Route durch alle Städte, wobei jede Stadt nur einmal besucht werden darf(kürzester Hamiltonkreis)
Bei z.B. 42 Städten gäbe es 42! mögliche Routen. (worst-case)
1,4 Oktilliarden
TSP = Traveling Salesperson Problem
Gesucht: Die kürzeste Route durch alle Städte, wobei jede Stadt nur einmal besucht werden darf(kürzester Hamiltonkreis)
Bei z.B. 42 Städten gäbe es 42! mögliche Routen. (worst-case)
14050061177528798985431426062445115699363840000000001,4 Oktilliarden
P vs. NP ProblemWillkommen in der Komplexitätstheorieungelöstes Problem der Mathematik und theoretischen Informatik
P = NP würde unsere Welt verändernP != NP schwer/nicht zu beweisen
1 der 7 Millennium-Probleme welche im Jahr 2000 vom Clay Mathematics Institute mit einem Preisgeld von einer Million US-Dollar ausgelobt wurden.
P vs. NP ProblemWillkommen in der Komplexitätstheorieungelöstes Problem der Mathematik und theoretischen Informatik
P = NP würde unsere Welt verändernP != NP schwer/nicht zu beweisen
1 der 7 Millennium-Probleme welche im Jahr 2000 vom Clay Mathematics Institute mit einem Preisgeld von einer Million US-Dollar ausgelobt wurden.
= c
ompu
tatio
nal d
ifficu
lty
$
Exp
R
...
P vs. NP ProblemWillkommen in der Komplexitätstheorieungelöstes Problem der Mathematik und theoretischen Informatik
P = NP würde unsere Welt verändernP != NP schwer/nicht zu beweisen
1 der 7 Millennium-Probleme welche im Jahr 2000 vom Clay Mathematics Institute mit einem Preisgeld von einer Million US-Dollar ausgelobt wurden.
= c
ompu
tatio
nal d
ifficu
lty
$
Exp
R
...
in polynomiellem Zeitaufwand lösbare ProblemeP
P vs. NP ProblemWillkommen in der Komplexitätstheorieungelöstes Problem der Mathematik und theoretischen Informatik
P = NP würde unsere Welt verändernP != NP schwer/nicht zu beweisen
1 der 7 Millennium-Probleme welche im Jahr 2000 vom Clay Mathematics Institute mit einem Preisgeld von einer Million US-Dollar ausgelobt wurden.
= c
ompu
tatio
nal d
ifficu
lty
$
Exp
R
...
in polynomiellem Zeitaufwand lösbare ProblemeP
NP in nichtdeterministisch polynomiellem Zeitaufwand lösbare Probleme
P vs. NP ProblemWillkommen in der Komplexitätstheorieungelöstes Problem der Mathematik und theoretischen Informatik
P = NP würde unsere Welt verändernP != NP schwer/nicht zu beweisen
1 der 7 Millennium-Probleme welche im Jahr 2000 vom Clay Mathematics Institute mit einem Preisgeld von einer Million US-Dollar ausgelobt wurden.
= c
ompu
tatio
nal d
ifficu
lty
$
Exp
R
...
in polynomiellem Zeitaufwand lösbare ProblemeP
NP in nichtdeterministisch polynomiellem Zeitaufwand lösbare Probleme
TSP ist NP-vollständig!schwerer als alle Probleme aus NP
P vs. NP ProblemWillkommen in der Komplexitätstheorieungelöstes Problem der Mathematik und theoretischen Informatik
P = NP würde unsere Welt verändernP != NP schwer/nicht zu beweisen
1 der 7 Millennium-Probleme welche im Jahr 2000 vom Clay Mathematics Institute mit einem Preisgeld von einer Million US-Dollar ausgelobt wurden.
= c
ompu
tatio
nal d
ifficu
lty
$
Exp
R
...
in polynomiellem Zeitaufwand lösbare ProblemeP
NP in nichtdeterministisch polynomiellem Zeitaufwand lösbare Probleme
TSP ist NP-vollständig!schwerer als alle Probleme aus NP
* Halteproblem !€ R
exponenzieller Zeitaufwand
in endlicher Zeit
NP-schwer
P vs. NP ProblemWillkommen in der Komplexitätstheorieungelöstes Problem der Mathematik und theoretischen Informatik
P = NP würde unsere Welt verändernP != NP schwer/nicht zu beweisen
1 der 7 Millennium-Probleme welche im Jahr 2000 vom Clay Mathematics Institute mit einem Preisgeld von einer Million US-Dollar ausgelobt wurden.
= c
ompu
tatio
nal d
ifficu
lty
$
Exp
R
...
in polynomiellem Zeitaufwand lösbare ProblemeP
NP in nichtdeterministisch polynomiellem Zeitaufwand lösbare Probleme
TSP ist NP-vollständig!schwerer als alle Probleme aus NP
* Halteproblem !€ R
exponenzieller Zeitaufwand
in endlicher Zeit
NP-schwer
Entscheidungsprobleme die in Polynomialzeit für deterministische Turingmaschinen lösbar sind. Diese Problemklasse wird allgemein als die Klasse der „praktisch lösbaren“ Probleme betrachtet.
P vs. NP ProblemWillkommen in der Komplexitätstheorieungelöstes Problem der Mathematik und theoretischen Informatik
P = NP würde unsere Welt verändernP != NP schwer/nicht zu beweisen
1 der 7 Millennium-Probleme welche im Jahr 2000 vom Clay Mathematics Institute mit einem Preisgeld von einer Million US-Dollar ausgelobt wurden.
= c
ompu
tatio
nal d
ifficu
lty
$
Exp
R
...
in polynomiellem Zeitaufwand lösbare ProblemeP
NP in nichtdeterministisch polynomiellem Zeitaufwand lösbare Probleme
TSP ist NP-vollständig!schwerer als alle Probleme aus NP
* Halteproblem !€ R
exponenzieller Zeitaufwand
in endlicher Zeit
NP-schwer
Entscheidungsprobleme die in Polynomialzeit für deterministische Turingmaschinen lösbar sind. Diese Problemklasse wird allgemein als die Klasse der „praktisch lösbaren“ Probleme betrachtet.
Antwort (ja|nein)
P vs. NP ProblemWillkommen in der Komplexitätstheorieungelöstes Problem der Mathematik und theoretischen Informatik
P = NP würde unsere Welt verändernP != NP schwer/nicht zu beweisen
1 der 7 Millennium-Probleme welche im Jahr 2000 vom Clay Mathematics Institute mit einem Preisgeld von einer Million US-Dollar ausgelobt wurden.
= c
ompu
tatio
nal d
ifficu
lty
$
Exp
R
...
in polynomiellem Zeitaufwand lösbare ProblemeP
NP in nichtdeterministisch polynomiellem Zeitaufwand lösbare Probleme
TSP ist NP-vollständig!schwerer als alle Probleme aus NP
* Halteproblem !€ R
exponenzieller Zeitaufwand
in endlicher Zeit
NP-schwer
Entscheidungsprobleme die in Polynomialzeit für deterministische Turingmaschinen lösbar sind. Diese Problemklasse wird allgemein als die Klasse der „praktisch lösbaren“ Probleme betrachtet.
Antwort (ja|nein) die benötigte Rechenzeit (m)nicht stärker als mit einer Polynomfunktion wächst.
P vs. NP ProblemWillkommen in der Komplexitätstheorieungelöstes Problem der Mathematik und theoretischen Informatik
P = NP würde unsere Welt verändernP != NP schwer/nicht zu beweisen
1 der 7 Millennium-Probleme welche im Jahr 2000 vom Clay Mathematics Institute mit einem Preisgeld von einer Million US-Dollar ausgelobt wurden.
= c
ompu
tatio
nal d
ifficu
lty
$
Exp
R
...
in polynomiellem Zeitaufwand lösbare ProblemeP
NP in nichtdeterministisch polynomiellem Zeitaufwand lösbare Probleme
TSP ist NP-vollständig!schwerer als alle Probleme aus NP
* Halteproblem !€ R
exponenzieller Zeitaufwand
in endlicher Zeit
NP-schwer
Entscheidungsprobleme die in Polynomialzeit für deterministische Turingmaschinen lösbar sind. Diese Problemklasse wird allgemein als die Klasse der „praktisch lösbaren“ Probleme betrachtet.
Antwort (ja|nein) die benötigte Rechenzeit (m)nicht stärker als mit einer Polynomfunktion wächst.
Alan Turing † 7. Juni 1954
P vs. NP ProblemWillkommen in der Komplexitätstheorieungelöstes Problem der Mathematik und theoretischen Informatik
P = NP würde unsere Welt verändernP != NP schwer/nicht zu beweisen
1 der 7 Millennium-Probleme welche im Jahr 2000 vom Clay Mathematics Institute mit einem Preisgeld von einer Million US-Dollar ausgelobt wurden.
= c
ompu
tatio
nal d
ifficu
lty
$
Exp
R
...
in polynomiellem Zeitaufwand lösbare ProblemeP
NP in nichtdeterministisch polynomiellem Zeitaufwand lösbare Probleme
TSP ist NP-vollständig!schwerer als alle Probleme aus NP
* Halteproblem !€ R
exponenzieller Zeitaufwand
in endlicher Zeit
NP-schwer
Entscheidungsprobleme die in Polynomialzeit für deterministische Turingmaschinen lösbar sind. Diese Problemklasse wird allgemein als die Klasse der „praktisch lösbaren“ Probleme betrachtet.
Antwort (ja|nein) die benötigte Rechenzeit (m)nicht stärker als mit einer Polynomfunktion wächst.
Alan Turing † 7. Juni 1954
Entscheidungsprobleme die mit nicht-deterministischen Turingmaschinen in Polynomialzeit lösbar sind.
P vs. NP ProblemWillkommen in der Komplexitätstheorieungelöstes Problem der Mathematik und theoretischen Informatik
P = NP würde unsere Welt verändernP != NP schwer/nicht zu beweisen
1 der 7 Millennium-Probleme welche im Jahr 2000 vom Clay Mathematics Institute mit einem Preisgeld von einer Million US-Dollar ausgelobt wurden.
= c
ompu
tatio
nal d
ifficu
lty
$
Exp
R
...
in polynomiellem Zeitaufwand lösbare ProblemeP
NP in nichtdeterministisch polynomiellem Zeitaufwand lösbare Probleme
TSP ist NP-vollständig!schwerer als alle Probleme aus NP
* Halteproblem !€ R
exponenzieller Zeitaufwand
in endlicher Zeit
NP-schwer
Entscheidungsprobleme die in Polynomialzeit für deterministische Turingmaschinen lösbar sind. Diese Problemklasse wird allgemein als die Klasse der „praktisch lösbaren“ Probleme betrachtet.
Antwort (ja|nein) die benötigte Rechenzeit (m)nicht stärker als mit einer Polynomfunktion wächst.
Alan Turing † 7. Juni 1954
Entscheidungsprobleme die mit nicht-deterministischen Turingmaschinen in Polynomialzeit lösbar sind.
(rein theoretisches Konstrukt)
magisches Orakel,immer die richtige Lösung(lucky-algorithm)
TSP, Clique, Rucksack, Sudoku, Tetris, Proteinfaltung,...
TSP, Clique, Rucksack, Sudoku, Tetris, Proteinfaltung,...
TSP, Clique, Rucksack, Sudoku, Tetris, Proteinfaltung,...
TSP, Clique, Rucksack, Sudoku, Tetris, Proteinfaltung,...
TSP, Clique, Rucksack, Sudoku, Tetris, Proteinfaltung,...
Multiplikation n-stelliger Zahlen
TSP, Clique, Rucksack, Sudoku, Tetris, Proteinfaltung,...
Faktorisierung (Primfaktorzerlegung)
Multiplikation n-stelliger Zahlen
TSP, Clique, Rucksack, Sudoku, Tetris, Proteinfaltung,...
Faktorisierung (Primfaktorzerlegung)
Multiplikation n-stelliger Zahlen
RSA
1. Chapter 1 Just Enough Ruby2. Programs and Machines
1. Chapter 2 The Meaning of Programs2. Chapter 3 The Simplest Computers
1. Deterministic Finite Automata2. Nondeterministic Finite Automata3. Regular Expressions4. Equivalence
3. Chapter 4 Just Add Power1. Deterministic Pushdown Automata2. Nondeterministic Pushdown Automata3. Parsing with Pushdown Automata4. How Much Power?
4. Chapter 5 The Ultimate Machine1. Deterministic Turing Machines2. Nondeterministic Turing Machines3. Maximum Power4. General-Purpose Machines
3. Computation and Computability1. Chapter 6 Programming with Nothing
1. Impersonating the Lambda Calculus2. Implementing the Lambda Calculus
2. Chapter 7 Universality Is Everywhere1. Lambda Calculus2. Partial Recursive Functions3. SKI Combinator Calculus4. Iota5. Tag Systems6. Cyclic Tag Systems7. Conway’s Game of Life8. Rule 1109. Wolfram’s 2,3 Turing Machine
3. Chapter 8 Impossible Programs1. The Facts of Life2. Decidability3. The Halting Problem4. Other Undecidable Problems
4. Chapter 9 Programming in Toyland
http
s://g
ithub
.com
/tom
stua
rt/c
ompu
tatio
nboo
k