• Keine Ergebnisse gefunden

KOMPLEXITÄTSTHEORIE Wintersemester 2014/2015

N/A
N/A
Protected

Academic year: 2022

Aktie "KOMPLEXITÄTSTHEORIE Wintersemester 2014/2015"

Copied!
8
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

YZ X W V U T SRQPON

M

L

KJIH GFEDCB7A89

6 5 4 23 01 4C T S P V

6O0EKJ5Z2I1HRD8QGY9U3F

A M 7 N WB L X

KOMPLEXITÄTSTHEORIE

Wintersemester 2014/2015

8. Oktober 2014

Prof. Dr. Steffen Reith

Theoretische Informatik

Studienbereich Angewandte Informatik HochschuleRheinMain

ADMINISTRATIVES

Notizen Notizen

(2)

ÜBER DEN DOZENTEN

→ Prof. Dr. Steffen Reith, geboren 1968, verheiratet, ein Kind

→ Seit Sommersemester 2006 an der Hochschule RheinMain

→ Vorher tätig als Softwareentwickler für kryptographische und mathematische Algorithmen für tief eingebettete System in KFZs.

→ Spezialgebiete: Theoretische Informatik (Komplexität von verallgemeinerten Erfüllbarkeitsproblemen),

Komplexitätstheorie, Logik in der Informatik und Kryptographie / diskrete Mathematik

EMail:Steffen.Reith@hs-rm.de IM (Skype):Steffen.Reith Büro: Raum 202 (C Gebäude)

3

WEITERE INFORMATIONEN

Webseite:http://www.cs.hs-rm.de/~reith

Auf der Webseite kann auch ein RSS-Feed abonniert werden, auf dem alle relevanten Ankündigungen mitgeteilt werden.

Die Vorlesung und Übung am Mittwoch, 22.10.2014 entfällt!

Notizen Notizen

(3)

EINIGE GRUNDLAGEN

GRUNDLEGENDE BEGRIFFE

Definition

SeiΣeinAlphabet, d.h. eine endliche Menge vonBuchstaben, dann ist

→ ΣdieMenge alle WörterüberΣ(einschließlich dem leeren Wort)

→ UndL⊆ΣheißtSprache(überΣ)

Definition

EinProblemP ist eine RelationP ⊆ I × S, wobei

Idie Menge derProbleminstanzenund

Sist Menge derProblemlösungenist.

Notizen Notizen

(4)

FUNKTIONS- UND ENTSCHEIDUNGSPROBLEME

Definition Ist das ProblemP

→ rechtseindeutig, d.h. eine (partielle) Funktion, dann heißtP Funktionsproblem,

→ rechtseindeutig undS ={0,1}, dann heißtP Entscheidungsproblem

Eine Probleminstanzx∈ Ikann auch einmTupel sein, d.h. die Definition deckt auchm-stellige Funktionsprobleme ab.

Beispiel

SeiP ein Entscheidungsproblem, dann heißtL =def {x ∈ I | P(x) = 1}Sprache undP Wortproblemder SpracheL.

7

DAS ERFÜLLBARKEITSPROBLEM DER AUSSAGENLOGIK

Beispiel

SeienV ={x1, x2, x3, . . .}aussagenlogische VariablenundI dieaussagenlogische Formelnüber (Teilmengen von)V.

→ SeiSdie Mengealler Funktionenvon endlichen Teilmengen vonV nach{0,1},sat⊆ I × S, wobei(H, f)satgenau dann, wenn

Hist eine aussagenlogische Formel überVV,

f:V → {0,1}und

fist eine erfüllende Belegung vonH.

→ Eine Ordnung aufSkann wie folgt definiert werden:

f1< f2 gdw. ∃xi(f1(xi)< f2(xi)

∀xj(j < i→f1(xj) =f2(xj))

Notizen Notizen

(5)

DAS ERFÜLLBARKEITSPROBLEM DER AUSSAGENLOGIK (II)

Nun können wir das Minimisierungsproblem für die Erfüllbarkeit von aussagenlogische Formeln definieren:

Beispiel (Fort.)

LEXMINSAT(H) =def









kleinste Fkt.fso, dass

(H, f)sat , fallsfex.

f0∈ S mitf0(x) = 0

für allex∈V , sonst

9

EINIGE BEMERKUNGEN

Die Komplexitätstheorie beschäftigt sich mit derKomplexität von Berechnungenwie z.B.

→ Anzahl der Schritte/Laufzeit,

→ Speicherbedarf oder

→ Anzahl der Befehle des kürzesten Lösungsalgorithmus auf unterschiedlichen Berechnungsmodellen (Turingmaschinen (TM), RandomAccessMaschine (RAM) Quantencomputern, Parallelrechnern).

Wie formalisiert man diese Vielfalt?

Notizen Notizen

(6)

KOMPLEXITÄTSKLASSEN

KOMPLEXITÄTSMAßE UND KOMPLEXITÄTSKLASSEN

Definition

Ein AlgorithmusA (TM, RAM oder C)berechnet eine Funktion fA:I → S, wenn

fA(x) =

{ Ergebnis vonAbei Eingabex , fallsAstoppt

undef, , sonst

Definition

Der AlgorithmusAhatϕ-Komplexität(Laufzeit, Speicherplatz), wobeiϕA:I →N, und

ϕA(x) =

{ ϕ-Komplexität vonAbei Eingabex , fallsAstoppt

undef, , sonst

Notizen Notizen

(7)

KOMPLEXITÄTSMAßE UND KOMPLEXITÄTSKLASSEN (II)

Definition

Sei|x|dieLängevonxundϕA:NNvermöge ϕA(x) =def max

|x|=nϕA(x), dann heißtϕAworst-case Komplexität(vonA).

Die Komplexität wird (fast)immerüber die Eingabelänge gemessen! Die Definitionen sind vom Berechnungsmodell (weitgehend)unabhängig.

Für die Vorlesung verwenden wir das einfachste Berechnungsmodell (Turingmaschine).

13

KOMPLEXITÄTSMAßE UND KOMPLEXITÄTSKLASSEN (III)

Definition

Gegeben seiϕ-Komplexität,τ-Algorithmentyp (z.B.(TM, RAM oderC) und eineSchrankenfunktion, dann

Fτϕ(t) =def {f |ftotal und es ex. AlgorithmusAvom Typτder die Funktionf berechnet, wobeiϕAaet}

Notizen Notizen

(8)

KOMPLEXITÄTSKLASSEN

Definition

Gegeben seiϕ-Komplexität,τ-Algorithmentyp (z.B.(TM, RAM oderC) und eineSchrankenfunktion, dann

τϕ(t) =def {L|LSprache und es ex. AlgorithmusAvom Typτ der das WortproblemLentscheidet,

wobeiϕAae t}

Dabei ist

t1 aet2gdw. es ex. einn0 0undt1(n)≤t2(n)für allen≥n0

(t1almost everywhere less or equal thant2).

15

KOMPLEXITÄTSKLASSEN (II)

Nun können wir allgemein Komplexitätsklassen einführen:

Definition (Komplexitätsklassen) Fτϕ(O(t)) =def

k0Fτϕ(k·t)(Funktionsklasse) τϕ(O(t)) =def

k0τϕ(k·t)(Sprachklasse)

In der Vorlesung werden wir das Berechnungsmodell nicht angeben (und implizit) immer Turingmaschinen verwenden.

Vom technischen Standpunkt sind Entscheidungsprobleme leichter zu handhaben und für in der Praxis ausreichend, d.h. wir verwenden meist Entscheidungsklassen.

Notizen Notizen

Referenzen

ÄHNLICHE DOKUMENTE

 Theorie: liefert untere Schranke, die für jeden Algorithmus gilt, der das Problem löst..  Spezieller Algorithmus liefert obere Schranke für die Lösung

Wir besprechen nun zwei grundlegende Verfahren, alle Knoten eines Graphen zu durchlaufen.. Breitensuche („breadth first

→ Vorher tätig als Softwareentwickler für kryptographische und mathematische Algorithmen für tief eingebettete System in KFZs.. → Spezialgebiete: Komplexitätstheorie, Logik in

Wenn CD aber AB nicht misst, und man nimmt bei AB, CD abwechselnd immer das kleinere vom gr ¨oßeren weg, dann muss (schließlich) eine Zahl. ¨ubrig bleiben, die die

I Ubung: Finden Sie die zu den 5 Namen in Spalte 1 geh ¨orende ¨ Ziffernfolge in Liste 1. Stoppen Sie

Ein (bin¨arer) Heap ist ein (fast) vollst¨andiger bin¨arer Baum, in dem f¨ur jeden Knoten gilt, dass er in einer definierten Ordnungsrelation zu seinen Nachfolger steht. I

I Wie viele elementare Schritte braucht ein Algorithmus f¨ur Eingaben einer bestimmten

1 Er geht zum ersten Studenten, vergleicht dessen Namen mit denen auf jeder Klausur, und gibt dem Studenten seine Klausur, sobald er sie gefunden hat. Anschließend macht er beim