|
Autor |
Äquivalenzklassen infolge einer Myhill-Nerode-Relation |
|
civilengineer
Aktiv  Dabei seit: 25.05.2011 Mitteilungen: 1805
Wohnort: Bayern, München
 | Themenstart: 2022-12-09
|
Hallo,
ich habe gerade eine schwierige Zeit, dieses Thema zu knacken.
Mein Verständnis ist, dass die Myhill-Nerode-Relation bzgl. einer Sprache L über ein Alphabet Σ nichts anders als eine Teilmenge des kartesischen Produkts der kleeneschen Hülle des Alphabets Σ* mit sich selbst ist. In meinem Fall ist das Alphabet = {a,b}.
Nun ist die MN-Relation zwischen zwei Wörtern u und v aus der kleeneschen Hülle des Alphabets wie folgt definiert:
https://matheplanet.com/matheplanet/nuke/html/uploads/b/31462_Screenshot_20221209_214607.jpg
Ich verstehe nicht, warum die folgende Sprache in Bezug auf die MN-Relation die kleenesche Hülle des Alphabets in drei (?) Äquivalenzklassen zerlegt:
https://matheplanet.com/matheplanet/nuke/html/uploads/b/31462_Screenshot_20221209_214502.jpg
Ich meine, u und v stehen genau dann in Beziehung zueinander bzw. sind genau dann in einer MN-Relation bzgl. der Sprache L, wenn für beliebige Suffixe w gilt, dass uw genau dann zur Sprache L gehört, wenn vw zur Sprache L gehört. Es ist doch völlig egal, was u und v sind, denn nur die Suffixe w entscheiden doch darüber, ob uw bzw. vw zur Sprache L gehören oder nicht. Wie soll man hier überhaupt die kleenesche Hülle in Äquivalenzklassen partitionieren?
Danke für die Info im Voraus!
Viele Grüße
CE
|
Profil
|
thureduehrsen
Senior  Dabei seit: 13.11.2007 Mitteilungen: 1413
Wohnort: Kiel, Deutschland
 | Beitrag No.1, eingetragen 2022-12-10
|
\(\begingroup\)\(\newcommand{\id}{\operatorname{id}}\)
Hallo civilengineer,
mir fällt es schwer, zu erfassen, wo genau deine Schwierigkeiten liegen, nicht zuletzt, weil dein Text eine ziemlich brutale Übersetzung aus dem Englischen ist.
In der Tat ist die Relation \(\equiv_L\) eine Teilmenge von \(\Sigma^\ast\times\Sigma^\ast\), wenn wir \(\Sigma:=\{a,\,b\}\) setzen.
Konstruiere zu der Sprache \(L\) einmal einen minimalen DEA.
Wie viele Zustände hat er?
(Je zwei minimale DEA zu einer Sprache haben dieselbe Anzahl von Zuständen, meine Frage ist also wohlgestellt.)
Dann nimm dir ein paar Worte aus jeder der drei Klassen her, reichere sie um dasselbe Suffix an und verfolge die Berechnungen des Automaten. Dabei sollte dir etwas auffallen.
mfg
thureduehrsen\(\endgroup\)
|
Profil
|
civilengineer
Aktiv  Dabei seit: 25.05.2011 Mitteilungen: 1805
Wohnort: Bayern, München
 | Beitrag No.2, vom Themenstarter, eingetragen 2022-12-10
|
Hallo thureduehrsen,
danke für die Antwort.
Meine Schwierigkeit liegt allgemein darin, die disjunkten MN-Äquivalenzklassen im Alphabet zu ermitteln/erkennen/sehen (und zu begründen), die durch eine MN-Relation induziert werden.
Der Text im Ausgangspost entstand aus meinen Notizen, die ich mir während einer Fahrt mit der S-Bahn gemacht habe, um mich irgendwie bei der Fahrt selbst zu beschäftigen und andere Fahrgäste nicht anzuglotzen, der Text ist also keine Übersetzung aus dem Englischen, sondern einfach frei von mir "erfunden".
Ich verstehe nicht, warum ich mir hier Gedanken über einen DEA machen sollte, wenn ich die Äquivalenzklassen mithilfe der Definition der Äquivalenzrelation bestimmen will? Ist das normalerweise die Methode, die man i. d. R. verwendet, um solche "Finde die Äquivalenzklassen - " Aufgaben zu knacken?..
EDIT: Jedenfalls würde ich da intuitiv vlt. einen DEA mit zwei Zuständen q0 (Startzustand, nicht akzeptierend) und q1 (akzeptierend) wählen, der wie folgt funktioniert: ü(q0,a) = q1; ü(q1,a) = q1; ü(q0,b) = q0; ü(q1,b) = q0.
Viele Grüße
CE
|
Profil
|
thureduehrsen
Senior  Dabei seit: 13.11.2007 Mitteilungen: 1413
Wohnort: Kiel, Deutschland
 | Beitrag No.3, eingetragen 2022-12-10
|
\quoteon(2022-12-10 00:55 - civilengineer in Beitrag No. 2)
Ich verstehe nicht, warum ich mir hier Gedanken über einen DEA machen sollte, wenn ich die Äquivalenzklassen mithilfe der Definition der Äquivalenzrelation bestimmen will?
\quoteoff
Ich wollte auf den Satz hinaus, dass die Anzahl der Äquivalenzklassen gleich der Anzahl der Zustände eines minimalen DEA ist.
Meine Aufgabe mit dem Verfolgen von Berechnungen im DEA sollte dir eigentlich helfen, die Nerode-Relation zu verstehen.
mfg
thureduehrsen
|
Profil
|
civilengineer
Aktiv  Dabei seit: 25.05.2011 Mitteilungen: 1805
Wohnort: Bayern, München
 | Beitrag No.4, vom Themenstarter, eingetragen 2022-12-10
|
Ah, stimmt. Das habe ich irgendwo gelesen, dass der Index der MN-Relation (Anzahl der MN-Äquivalenzklassen) mit der Anzahl der Zustände eines kollabierten/minimalen DEAs übereinstimmt. Das hilft tatsächlich bei der Bestimmung der Anzahl der Äquivalenzklassen weiter, aber ich weiß nicht wie dann die Äquivalenzklassen selbst zu bestimmen sind...
EDIT: Bei meinem gerade aus dem Handgelenk gezauberten DEA bin ich auf zwei Zustände gekommen. In der Musterlösung des Beispiels im Ausgangspost sind drei Äquivalenzklassen angegeben. Wo liegt der Wurm?...
|
Profil
|
thureduehrsen
Senior  Dabei seit: 13.11.2007 Mitteilungen: 1413
Wohnort: Kiel, Deutschland
 | Beitrag No.5, eingetragen 2022-12-10
|
\quoteon(2022-12-10 01:09 - civilengineer in Beitrag No. 4)
Bei meinem gerade aus dem Handgelenk gezauberten DEA bin ich auf zwei Zustände gekommen. In der Musterlösung des Beispiels im Ausgangspost sind drei Äquivalenzklassen angegeben. Wo liegt der Wurm?...
\quoteoff
Zeige doch mal, wie dein DEA aussieht.
mfg
thureduehrsen
|
Profil
|
civilengineer
Aktiv  Dabei seit: 25.05.2011 Mitteilungen: 1805
Wohnort: Bayern, München
 | Beitrag No.6, vom Themenstarter, eingetragen 2022-12-10
|
DEA = (Q, Σ, δ, q0, F) mit:
Zustandsmenge Q = {q0, q1}
Alphabet Σ = {a, b}
Übergangsfunktion δ(qi, a) = q1 und δ(qi, b) = q0 mit i = 0 oder i = 1.
Startzustand q0
Finalzustand {q1}
Der gleiche DEA steht weiter oben mit der Bezeichnung der Übergangsfunktion mit dem Buchstaben ü anstelle vom griechischen Buchstaben δ, der normalerweise für die Übergangsfunktion verwendet wird.
Ich merke gerade, dass dieser Automat so auch ein Wort akzeptieren würde, wenn es nur auf ein a und nicht unbedingt aa endet und somit nicht zur Sprache L gehört. Ich muss mir vlt. einen richtigen DEA denken, dessen Sprache der vorgegebenen Sprache entspricht...
Wenn die Musterlösung des Beispiels richtig ist, wovon ich ausgehe, da es sich um ein Beispiel aus einem bewährten Vorlesungsskript handelt, dann gibt es 3 Äquivalenzklassen, die durch die MN-Relation induziert werden, und somit drei Zustände im minimalen/kollabierten DEA, der die Sprache L akzeptiert (?). Dann wäre der folgende Automat vlt. der Richtige:
DEA = (Q, Σ, δ, q0, F) mit:
Zustandsmenge Q = {q0, q1, q2}
Alphabet Σ = {a, b}
Übergangsfunktion
δ(q0, a) = q1
δ(q1, a) = q2
δ(q0, b) = q0
δ(q1, b) = q1
δ(q2, a) = q2
δ(q2, b) = q1
Startzustand q0
Finalzustand {q2}
Falls diese Gedankengänge bisher richtig sind und falls dieser Automat jetzt so korrekt ist (falls nicht, gerne korrigieren!), dann kann ich ja die Anzahl der MN-Äquivalenzklassen wissen, wenn ich einen minimalen DEA für die gegebene Sprache irgendwie bastele, aber dann frage ich mich trotzdem immer noch, wie man auf die Beschreibung bzw. auf den Inhalt der MN-Äquivalenzklassen und nicht nur auf deren Anzahl kommen soll? ...
Vielleicht würde diese Aufgabe:
\quoteon(2022-12-10 00:20 - thureduehrsen in Beitrag No. 1)
estellt.)
Dann nimm dir ein paar Worte aus jeder der drei Klassen her, reichere sie um dasselbe Suffix an und verfolge die Berechnungen des Automaten. Dabei sollte dir etwas auffallen.
\quoteoff
eine Antwort dazu liefern? ...
|
Profil
|
tactac
Senior  Dabei seit: 15.10.2014 Mitteilungen: 2707
 | Beitrag No.7, eingetragen 2022-12-10
|
\(\begingroup\)\(\newcommand{\sem}[1]{[\![#1]\!]}
\newcommand{\name}[1]{\ulcorner#1\urcorner}
\newcommand{\upamp}{\mathbin {⅋}}
\newcommand{\monus}{\mathbin {∸}}\)
Hmm, der naheliegende DEA hat doch drei Zustände:
$
\usetikzlibrary{automata, positioning, arrows}
\tikzset{
->,node distance=3cm
}
\begin{tikzpicture}
\node[state, initial] (q0) {0};
\node[state, right of=q0] (q1) {1};
\node[state, accepting, right of=q1] (q2) {2};
\draw (q0) edge[loop above] node{b} (q0);
\draw (q1) edge[bend left, below] node{b} (q0);
\draw (q2) edge[bend right, above] node{b} (q0);
\draw (q0) edge[above] node{a} (q1);
\draw (q1) edge[above] node{a} (q2);
\draw (q2) edge[loop right] node{a} (q2);
\end{tikzpicture}
$
Beachte, dass beim Lesen eines b immer nach 0 gewechselt wird, anders als beim Automaten in #6.
\(\endgroup\)
|
Profil
|
civilengineer
Aktiv  Dabei seit: 25.05.2011 Mitteilungen: 1805
Wohnort: Bayern, München
 | Beitrag No.8, vom Themenstarter, eingetragen 2022-12-11
|
Ok, scheint richtig zu sein, im Gegensatz zum Vorschlag im Beitrag No. 6, da auch dort ein Wort mit nur einem a am Ende akzeptiert wird.
|
Profil
|
civilengineer
Aktiv  Dabei seit: 25.05.2011 Mitteilungen: 1805
Wohnort: Bayern, München
 | Beitrag No.9, vom Themenstarter, eingetragen 2022-12-11
|
So? Jeder Zustand "entspricht" einer MN-Äquivalenzklasse? ...
|
Profil
|
tactac
Senior  Dabei seit: 15.10.2014 Mitteilungen: 2707
 | Beitrag No.10, eingetragen 2022-12-11
|
\(\begingroup\)\(\newcommand{\sem}[1]{[\![#1]\!]}
\newcommand{\name}[1]{\ulcorner#1\urcorner}
\newcommand{\upamp}{\mathbin {⅋}}
\newcommand{\monus}{\mathbin {∸}}\)
\quoteon(2022-12-11 17:28 - civilengineer in Beitrag No. 9)
So? Jeder Zustand "entspricht" einer MN-Äquivalenzklasse? ...
\quoteoff
Wenn man einen minimalen Automaten hat, dann 1 zu 1, ja. Wenn er nicht minimal ist, wird es mehrere Zustände geben, die derselben MN-Äquivalenzklasse entsprechen.
Bezeichnen wir mit $E(u)$ den Zustand, den der Automat nach Einlesen des Worts $u$ vom Startzustand aus erreicht, und mit $L(s)$ die Sprache, die er akzeptiert, wenn er im Zustand $s$ losläuft, haben wir ja folgendes:
1. Wenn für verschiedene Zustände $s,t$ gilt $L(s)=L(t)$, kann man sie offensichtlich zusammenlegen, indem man etwa $s$ hinausschmeißt und alle Übergänge, die ursprünglich nach $s$ gingen, nach $t$ umbiegt. (Wenn $s$ der Startzustand war, wird $t$ der neue.)
2. $(\forall w.\, uw \in L \iff vw \in L) \iff L(E(u)) = L(E(v))$. \(\endgroup\)
|
Profil
|
civilengineer
Aktiv  Dabei seit: 25.05.2011 Mitteilungen: 1805
Wohnort: Bayern, München
 | Beitrag No.11, vom Themenstarter, eingetragen 2022-12-12
|
Ok, danke. Was bedeutet "die Sprache, die ein Automat akzeptiert, wenn er im Zustand s losläuft"? ...
Ist das der einzige Weg, um die MN-Äquivalenzklassen für eine MN-Relation bzgl. einer vorgegebenen Sprache L zu finden? Nur über die Konstruktion eines minimalen DEAs (Gibt es einen systematischen Weg, um einen minimalen DEA für eine Sprache zu konstruieren? Oder geht's nur übers Knobeln? ...)? ...
|
Profil
|
thureduehrsen
Senior  Dabei seit: 13.11.2007 Mitteilungen: 1413
Wohnort: Kiel, Deutschland
 | Beitrag No.12, eingetragen 2022-12-12
|
\quoteon(2022-12-12 17:51 - civilengineer in Beitrag No. 11)
(Gibt es einen systematischen Weg, um einen minimalen DEA für eine Sprache zu konstruieren? Oder geht's nur übers Knobeln? ...)
\quoteoff
Es gibt in der Tat einen systematischen Weg, einen DEA zu minimieren.
Das passende Stichwort ist Markierungsalgorithmus.
mfg
thureduehrsen
|
Profil
|
civilengineer
Aktiv  Dabei seit: 25.05.2011 Mitteilungen: 1805
Wohnort: Bayern, München
 | Beitrag No.13, vom Themenstarter, eingetragen 2022-12-12
|
Ok, danke. Wenn ein DEA vorhanden ist, dann könnte man ihn mit diesem Markierungsalgorithmus minimieren (https://youtu.be/khPFYjqzEQI), aber in diesem Fall bzw. in meiner Frage im Ausgangspost ist eine Sprache L vorgegeben und kein DEA. Gibt es einen systematischen Weg, um zu einer Sprache L einen passenden DEA zu finden? (Falls ja, welchen? Falls nein, wie sonst?) Ist die Konstruktion eines minimalen DEAs der einzige Weg, um die MN-Äquivalenzklassen für eine MN-Relation bzgl. einer vorgegebenen Sprache L zu finden? ...
|
Profil
|
tactac
Senior  Dabei seit: 15.10.2014 Mitteilungen: 2707
 | Beitrag No.14, eingetragen 2022-12-12
|
\(\begingroup\)\(\newcommand{\sem}[1]{[\![#1]\!]}
\newcommand{\name}[1]{\ulcorner#1\urcorner}
\newcommand{\upamp}{\mathbin {⅋}}
\newcommand{\monus}{\mathbin {∸}}\)
\quoteon(2022-12-12 17:51 - civilengineer in Beitrag No. 11)
Ok, danke. Was bedeutet "die Sprache, die ein Automat akzeptiert, wenn er im Zustand s losläuft"? ...
\quoteoff
Ich meine damit die Sprache, die der Automat akzeptiert, den man erhält, indem von im gegebenen Automaten den Startzustand auf $s$ setzt.\(\endgroup\)
|
Profil
|
thureduehrsen
Senior  Dabei seit: 13.11.2007 Mitteilungen: 1413
Wohnort: Kiel, Deutschland
 | Beitrag No.15, eingetragen 2022-12-13
|
\quoteon(2022-12-12 22:06 - civilengineer in Beitrag No. 13)
Gibt es einen systematischen Weg, um zu einer Sprache L einen passenden DEA zu finden?
\quoteoff
Nein. Wenn du schlicht "Sprache" sagst, dann kann L ja auch eine Typ-2-Sprache sein, die keine Typ-3-Sprache ist.
\quoteon(2022-12-12 22:06 - civilengineer in Beitrag No. 13)
Ist die Konstruktion eines minimalen DEAs der einzige Weg, um die MN-Äquivalenzklassen für eine MN-Relation bzgl. einer vorgegebenen Sprache L zu finden? ...
\quoteoff
Nein.
Ausführlicher gesagt: Hier ist die Antwort für einen Beispielfall.
Und hier landet man nach noch etwas mehr Recherche.
mfg
thureduehrsen
|
Profil
|
civilengineer
Aktiv  Dabei seit: 25.05.2011 Mitteilungen: 1805
Wohnort: Bayern, München
 | Beitrag No.16, vom Themenstarter, eingetragen 2022-12-14
|
Danke für die Recherche und für die Tipps. Besonders der letzte Link ist gut. Es wird dort erläutert, dass man die Wörter in der Sprache B und die Wörter in ihrem Komplement \(B^{c}\) bzgl. \(\epsilon\) immer in jeweils für sich eine MN-Äquivalenzklasse bilden. Das leuchtet ein. Die feinere Unterteilung der einzelnen MN-Äquivalenzklassen selbst, ist mir noch nicht ganz klar. Zum Beispiel beim Beispiel im Ausgangspost könnte man argumentieren, dass die Menge der Wörter, die auf aa enden, und die Menge der Wörter, die nicht auf aa enden, zwei disjunkte MN-Äquivalenzklassen sind. Wie geht's dann genau ab hier weiter? ...
Für die schrittweise Durchführung des Table-Filling-Algorithmus ist auch dieser Link interessant.
Bei meiner Frage, ob es einen systematischen Weg gibt, um einen DEA für "eine Sprache" zu konstruieren, meinte eine reguläre Sprache, sonst gäbe es dafür ja keinen DEA, wenn die Sprache nicht regulär wäre?
|
Profil
|
civilengineer
Aktiv  Dabei seit: 25.05.2011 Mitteilungen: 1805
Wohnort: Bayern, München
 | Beitrag No.17, vom Themenstarter, eingetragen 2022-12-15
|
Bei diesem Beispiel liefert der Weg über die Konstruktion und Minimierung eines DEAs, der die Sprache erkennt, 7 disjunkte MN-Äquivalenzklassen, wenn der "Table-Filling-Algorithmus" so korrekt ist und es im Automaten mit 7 Zuständen keine äquivalenten Zustände gibt. Der Weg übers Knobeln lieferte 3 MN-Äquivalenzklassen. Die Musterlösung zeigt eine andere Anzahl von MN-Äquivalenzklassen. Wo ist hier was genau schiefgelaufen?
https://matheplanet.com/matheplanet/nuke/html/uploads/b/31462_20221215_172628.jpg
|
Profil
|
thureduehrsen
Senior  Dabei seit: 13.11.2007 Mitteilungen: 1413
Wohnort: Kiel, Deutschland
 | Beitrag No.18, eingetragen 2022-12-21
|
\(\begingroup\)\(\newcommand{\id}{\operatorname{id}}\)
Es sollte dein Automat das Wort \(b\,a\,b\) als zur Sprache \(L\) zugehörig erkennen, was er aber nicht tut, denn der Zustand 4 ist nicht akzeptierend.
Dein Automat ist also falsch.
mfg
thureduehrsen
\(\endgroup\)
|
Profil
|
civilengineer
Aktiv  Dabei seit: 25.05.2011 Mitteilungen: 1805
Wohnort: Bayern, München
 | Beitrag No.19, vom Themenstarter, eingetragen 2022-12-29
|
Das ist nachvollziehbar. Wie ist auf Anhieb ein richtiger Automat zu konstruieren?
|
Profil
|
tactac
Senior  Dabei seit: 15.10.2014 Mitteilungen: 2707
 | Beitrag No.20, eingetragen 2022-12-30
|
\(\begingroup\)\(\newcommand{\sem}[1]{[\![#1]\!]}
\newcommand{\name}[1]{\ulcorner#1\urcorner}
\newcommand{\upamp}{\mathbin {⅋}}
\newcommand{\monus}{\mathbin {∸}}\)
\quoteon(2022-12-29 20:53 - civilengineer in Beitrag No. 19)
Das ist nachvollziehbar. Wie ist auf Anhieb ein richtiger Automat zu konstruieren?
\quoteoff
Tipp: bastle zunächst Automaten für $\{w \mid \exists u.\, w = ua\}$ und für $\{w \mid \exists u.\, w = ub\}$ (die haben jeweils zwei Zustände).\(\endgroup\)
|
Profil
|
civilengineer
Aktiv  Dabei seit: 25.05.2011 Mitteilungen: 1805
Wohnort: Bayern, München
 | Beitrag No.21, vom Themenstarter, eingetragen 2023-01-03
|
Danke für deinen Tipp. Meine Frage bezieht sich nicht unbedingt auf diese "Beispiel-Sprache" im Bild, sondern ist ganz allgemein gestellt und bezieht sich auf das zugrundeliegende Konzept: wie ist das "korrekte Vorgehen", wenn ein DEA für eine beliebige (reguläre) Sprache konstruiert werden muss? Geht's hier immer um Basteleien?...
|
Profil
|
tactac
Senior  Dabei seit: 15.10.2014 Mitteilungen: 2707
 | Beitrag No.22, eingetragen 2023-01-03
|
Wenn man einen (nicht zu unkonstruktiven) Beweis dafür hat, dass die Sprache regulär ist, hat man ja auch einen regulären Ausdruck oder einen DEA oder einen NEA o.ä.
Es gibt Algorithmen, um aus all diesen Arten von gegebenen Daten einen DEA mit minimaler Zustandsanzahl zu generieren.
|
Profil
|
tactac
Senior  Dabei seit: 15.10.2014 Mitteilungen: 2707
 | Beitrag No.23, eingetragen 2023-01-04
|
\(\begingroup\)\(\newcommand{\sem}[1]{[\![#1]\!]}
\newcommand{\name}[1]{\ulcorner#1\urcorner}
\newcommand{\upamp}{\mathbin {⅋}}
\newcommand{\monus}{\mathbin {∸}}\)
Noch als Ergänzung: Aber natürlich gibt es kein "algorithmisches Vorgehen", aus einer irgendwie gegebenen Sprache, von der man irgendwie weiß, dass sie regulär ist, einen konkreten Automaten anzugeben.
Wenn wir uns in ZFC bewegen, ist mit 'nem beliebigen Alphabet $\Sigma$ z.B. $L := \{\phi \in \Sigma^* \mid \text{die Kontinuumshypothese gilt}\}$ durchaus wohldefiniert und definitiv regulär. (Man kann recht trivial "beweisen", dass $L$ entweder $\Sigma^*$ oder $\emptyset$ ist; in beiden Fällen existiert ein Automat für $L$, und damit "existiert" insgesamt ein Automat für $L$.)
Ebenso definitiv (Gödel, Cohen) kann man aber nicht einen konkreten Automaten angeben, der genau diese Sprache akzeptiert. Spätestens der Beweis der Korrektheit des angegebenen Automaten müsste einen Beweis für $CH$ oder einen Beweis für $\lnot CH$ enthalten. Also gibt's keinen Algorithmus, der von Sprachbeschreibungen (auch wenn diese reguläre Sprachen beschreiben) zu endlichen Automaten führt.\(\endgroup\)
|
Profil
|
civilengineer hat die Antworten auf ihre/seine Frage gesehen. civilengineer hat selbst das Ok-Häkchen gesetzt. |
|
All logos and trademarks in this site are property of their respective owner. The comments are property of their posters, all the rest © 2001-2023 by Matroids Matheplanet
This web site was originally made with PHP-Nuke, a former web portal system written in PHP that seems no longer to be maintained nor supported. PHP-Nuke is Free Software released under the GNU/GPL license.
Ich distanziere mich von rechtswidrigen oder anstößigen Inhalten, die sich trotz aufmerksamer Prüfung hinter hier verwendeten Links verbergen mögen. Lesen Sie die
Nutzungsbedingungen,
die Distanzierung,
die Datenschutzerklärung und das Impressum.
[Seitenanfang]
|