Hagen Völzer
Fairneß, Randomisierung und Konspiration in verteilten
Algorithmen
Dissertation,
dec 2000
Fairneß (d.h. faire Konfliktlösung), Randomisierung (d.h.
Münzwürfe) und partielle Synchronie sind verschiedene
Konzepte, die häufig zur Lösung zentraler Synchronisations-
und Koordinationsprobleme in verteilten Systemen verwendet
werden. Beispiele für solche Probleme sind das Problem des
wechselseitigen Ausschlusses (kurz: Mutex-Problem) sowie
das Konsens-Problem. Für einige solcher Probleme wurde
bewiesen, daß ohne die oben genannten Konzepte keine Lösung
für das betrachtete Problem existiert.
Unmöglichkeitsresultate dieser Art verbessern unser
Verständnis der Wirkungsweise verteilter Algorithmen sowie
das Verständnis des Trade-offs zwischen einem leicht
analysierbaren und einem ausdrucksstarken Modell für
verteiltes Rechnen. In dieser Arbeit stellen wir zwei neue
Unmöglichkeitsresultate vor. Darüberhinaus beleuchten wir
ihre Hintergründe. Wir betrachten dabei Modelle, die
Randomisierung einbeziehen, da bisher wenig über die
Grenzen der Ausdrucksstärke von Randomisierung bekannt ist.
Mit einer Lösung eines Problems durch Randomisierung meinen
wir, daß das betrachtete Problem mit Wahrscheinlichkeit 1
gelöst wird. Im ersten Teil der Arbeit untersuchen wir die
Beziehung von Fairneß und Randomisierung. Einerseits ist
bekannt, daß einige Probleme (z.B. das Konsens- Problem)
durch Randomisierung nicht aber durch Fairneß lösbar sind.
Wir zeigen nun, daß es andererseits auch Probleme gibt
(nämlich das Mutex-Problem), die durch Fairneß, nicht aber
durch Randomisierung lösbar sind. Daraus folgt, daß Fairneß
nicht durch Randomisierung implementiert werden kann. Im
zweiten Teil der Arbeit verwenden wir ein Modell, das
Fairneß und Randomisierung vereint. Ein solches Modell ist
relativ ausdrucksstark: Es erlaubt Lösungen für das
Mutex-Problem, das Konsens-Problem, sowie eine Lösung für
das allgemeine Mutex-Problem. Beim allgemeinen
Mutex-Problem (auch bekannt als Problem der speisenden
Philosophen) ist eine Nachbarschaftsrelation auf den
Agenten gegeben und ein Algorithmus gesucht, der das
Mutex-Problem für jedes Paar von Nachbarn simultan löst.
Schließlich betrachten wir das ausfalltolerante allgemeine
Mutex-Problem -- eine Variante des allgemeinen
Mutex-Problems, bei der Agenten ausfallen können. Wir
zeigen, daß sogar die Verbindung von Fairneß und
Randomisierung nicht genügt, um eine Lösung für das
ausfalltolerante allgemeine Mutex-Problem zu konstruieren.
Ein Hintergrund für dieses Unmöglichkeitsresultat ist ein
unerwünschtes Phänomen, für das in der Literatur der
Begriff Konspiration geprägt wurde. Konspiration wurde
bisher nicht adäquat charakterisiert. Wir charakterisieren
Konspiration auf der Grundlage nicht-sequentieller Abläufe.
Desweiteren zeigen wir, daß Konspiration für eine große
Klasse von Systemen durch die zusätzliche Annahme von
partieller Synchronie verhindert werden kann, d.h. ein
konspirationsbehaftetes System kann zu einem randomisierten
System verfeinert werden, das unter Fairneß und partieller
Synchronie mit Wahrscheinlichkeit 1 konspirationsfrei ist.
Partielle Synchronie fordert, daß alle relativen
Geschwindigkeiten im System durch eine Konstante beschränkt
sind, die jedoch den Agenten nicht bekannt ist. Die
Darstellung der Unmöglichkeitsresultate und die
Charakterisierung von Konspiration wird erst durch die
Verwendung nicht-sequentieller Abläufe möglich. Ein
nicht-sequentieller Ablauf repräsentiert im Gegensatz zu
einem sequentiellen Ablauf kausale Ordnung und nicht
zeitliche Ordnung von Ereignissen. Wir entwickeln in dieser
Arbeit eine nicht-sequentielle Semantik für randomisierte
verteilte Algorithmen, da es bisher keine in der Literatur
gibt. In dieser Semantik wird kausale Unabhängigkeit durch
stochastische Unabhängigkeit widergespiegelt.
close
Tobias Vesper
Petrinetze zum Entwurf selbststabilisierender
Algorithmen
Dissertation,
dec 2000
Edsger W. Dijkstra prägte im Jahr 1974 den Begriff
Selbststabilisierung (self-stabilization) in der
Informatik. Ein System ist selbststabilisierend, wenn es
von jedem denkbaren Zustand aus nach einer endlichen Anzahl
von Aktionen ein stabiles Verhalten erreicht. Im
Mittelpunkt dieser Arbeit steht der Entwurf
selbststabilisierender Algorithmen. Wir stellen eine
Petrinetz-basierte Methode zum Entwurf
selbststabilisierender Algorithmen vor. Wir validieren
unsere Methode an mehreren Fallstudien: Ausgehend von
algorithmischen Ideen existierender Algorithmen beschreiben
wir jeweils die die schrittweise Entwicklung eines neuen
Algorithmus. Dazu gehört ein neuer randomisierter
selbststabilisierender Algorithmus zur Leader Election in
einem Ring von Prozessoren. Dieser Algorithmus ist
abgeleitet aus einem publizierten Algorithmus, von dem wir
hier erstmals zeigen, daß er fehlerhaft arbeitet. Wir
weisen die Speicherminimalität unseres Algorithmus nach.
Ein weiteres Ergebnis ist der erste Algorithmus, der ohne
Time-Out-Aktionen selbststabilisierenden Tokenaustausch in
asynchronen Systemen realisiert. Petrinetze bilden einen
einheitlichen formalen Rahmen für die Modellierung und
Verifikation dieser Algorithmen.
close
Matthias Jüngel, Ekkart Kindler, Michael Weber
Towards a Generic Interchange Format for Petri Nets
Remi Bastide and Jonathan Billington and Ekkart Kindler
and Fabrice Kordon and Kjeld H. Mortensen, editors
In Meeting on XML/SGML based Interchange Formats for Petri
Nets, 21. ICATPN,
Århus, Dänemark,
jun 2000
Ekkart Kindler, Michael Weber
The Petri Net Kernel
Kjeld Høyer Mortensen, editors
In Tool Demonstrations, 21. ICATPN,
Århus, Denmark,
jun 2000
Ekkart Kindler
Consistency, Causality, Petri Nets, and Automata
Hans-Dieter Burkhard and Ludwik Czaja and Andrzej Skowron
and Peter H. Starke, editors
In Workshop Concurrency, Specification \& Programming (CS\&P
2000),
oct 2000
Matthias Jüngel, Ekkart Kindler, Michael Weber
The Petri Net Markup Language
S. Philippi, editors
In 7. Workshop Algorithmen und Werkzeuge für Petrinetze,
Fachberichte Informatik 7/2000,
Universität Koblenz-Landau,
jun 2000
Karsten Schmidt
Narrowing the state space of Petri nets using the state
equation
In Workshop on Concurrency, Specification and Programming,
Berlin,
2000
Adrianna Foremniak, Peter H. Starke
Structural Analysis of Signal-Event Systems
volume 43 of
Fundamenta Informaticae 43 (1-4),
aug 2000
Karsten Schmidt
Stubborn Sets for Model Checking the EF/AG Fragment of
CTL
volume 43 of
Fundamenta Informaticae 43 (1-4),
aug 2000
The general stubborn set approach to CTL model checking
[2] has the drawback that one either finds a stubborn set
with only one enabled transition or one has to expand all
enabled transitions. This restriction does not apply in our
approach to a fragment of CTL. Furthermore, our reduction
does not depend on the invisibility of transitions in a
stubborn set.
close
Karsten Schmidt
Flexible net Inscriptions with LoLA
volume 59 of
Petri Net Newsletter 59,
2000
Karsten Schmidt
How to Calculate Symmetries of Petri Nets
volume 36 of
Acta Informatica 36 (7),
2000
Symmetric net structure yields symmetric net behaviour.
Thus, knowing the symmetries of a net, redundant
calculations can be skipped. We present a framework for the
calculation of symmetries for several net classes including
place/transition nets, timed nets, stochastic nets,
self-modifying nets, nets with inhibitor arcs, and many
others. Our approach allows the specification of different
symmetry groups. Additionally it provides facilities either
to calculate symmetries on demand while running the actual
analysis algorithm, or to calculate them in advance. For
the latter case we define and calculate a ground set of
symmetries. Such a set has polynomial size and is
sufficient for an efficient implementation of the for all
symmetries loop and the partition of net elements into
equivalence classes. These two constructions are the usual
way to integrate symmetries into an analysis algorithm.
close
Ekkart Kindler, Hagen Völzer
Algebraic Nets with Flexible Arcs
Theoretical Computer Science,
2000
Ekkart Kindler, Axel Martens
Cross-talk revisited - What's the problem?
volume 58 of
Petri Net Newsletter 58,
2000
Abdourahaman
DAWN-ILF Tool. Modelchecking Anwendung
Diplomarbeit,
sep 2000
Sibylle Peuker
Property Preserving Transition Refinement with Concurrent
Runs
Informatik-Berichte,
Humboldt-Universität zu Berlin,
jul 2000
Michael Weber
An XML-based Approach towards an Interchange Format for
Petri Nets (Extended Abstract)
Informatik-Berichte,
Humboldt-Universität zu Berlin,
oct 2000
Felix C. Gärtner, Hagen Völzer
Redundancy in Space in Fault-Tolerant Systems
Technical Report,
Department of Computer Science, Darmstadt University of
Technology,
jul 2000
Ekkart Kindler, Dennis Shasha
Verifying a Design Pattern for the Fault-Tolerant
Execution of Parallel Programs
Technical Report,
New York University, Courant Institute of Mathematical
Sciences, Computer Science Department,
jun 2000
Tobias Vesper
Randomized Self-Stabilizing Leader Election (Extended
Abstract)
Informatik-Berichte,
Humboldt-Universität zu Berlin,
jan 2000
Adrianna Foremniak, Wolfgang Reisig
A Temporal Logic of Distributed Actions (TLDA)
Informatik-Berichte,
Humboldt-Universität zu Berlin,
2000