Effizientes Model-Checking für CTL - Institut für Theoretische ...
Effizientes Model-Checking für CTL - Institut für Theoretische ...
Effizientes Model-Checking für CTL - Institut für Theoretische ...
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
2.5 Komplexitätstheorie<br />
2 <strong>Theoretische</strong> Grundlagen<br />
Da der Verifikationsschritt beim <strong>Model</strong>-<strong>Checking</strong> größtenteils automatisch verläuft, ist<br />
die Frage der Berechnungskomplexität dieses Entscheidungsproblems hoch interessant.<br />
Die Komplexität von <strong>Model</strong>-<strong>Checking</strong> <strong>für</strong> diverse temporale Logiken wurde in [CES86],<br />
[Sch02], [EL87] untersucht. Das <strong>Model</strong>-<strong>Checking</strong> ist <strong>für</strong> <strong>CTL</strong>* PSPACE-vollständig und<br />
<strong>für</strong> <strong>CTL</strong> P-vollständig. <strong>Theoretische</strong> Hintergründe da<strong>für</strong> werden in diesem Abschnitt<br />
einbezogen.<br />
Die Komplexitätsklasse P (PTIME), die Klasse der Probleme mit effizienten Algorithmen,<br />
wird oft als die Klasse der ” effizient lösbaren“ Probleme bezeichnet. Sie besteht<br />
aus allen Sprachen L, die einen Polynomialzeit-Entscheidungsalgorithmus haben. Ein<br />
Problem A heißt P-vollständig, falls A ∈ P und jedes andere Problem in P auf A reduzierbar<br />
ist. P-vollständige Probleme werden manchmal als inhärent sequentiell (inherently<br />
sequential) bezeichnet, da sie (wenn P ≠ NC) keine NC-Algorithmen haben.<br />
NC-Algorithmen laufen polylogarithmisch (in O(log c n), c konstant) an einem Parallelcomputer<br />
mit einer polynomiellen Anzahl von Prozessoren. Die Komplexitätsklasse<br />
NC beinhaltet die parallel effizient lösbaren Entscheidungsprobleme. Daher lassen sich<br />
P-vollständige Probleme nicht parallelisieren (wenn P ≠ NC).<br />
Es gibt einen NC-Algorithmus zum Parsen von kontextfreien Sprachen (CFL), d. h.<br />
CFL ⊆ NC. Deswegen ist die Klasse LOGCFL bei der Untersuchung der Komplexität des<br />
<strong>Model</strong>-<strong>Checking</strong>s <strong>für</strong> <strong>CTL</strong> von großem Interesse. Diese Klasse enthält alle mit logarithmischem<br />
Speicheraufwand auf CFL reduzierbaren Probleme. Daher gilt LOGCFL⊆NC.<br />
Andererseits können Sprachen in LOGCFL von nichtdeterministischen Turing Maschinen<br />
in Polynomialzeit entschieden werden, die ein Arbeitsband logarithmischer Größe<br />
und zusätzlich einen Stack unendlicher Größe haben (siehe [BMT + ]). Diese Eigenschaft<br />
von LOGCFL wird bei der Analyse der Komplexität vom <strong>Model</strong>-<strong>Checking</strong>-Problem <strong>für</strong><br />
<strong>CTL</strong> erzielt.<br />
Im Rahmen dieser Arbeit werden aber nur die Algorithmen aus P ausgearbeitet.<br />
12