<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Transduktor_%28Informatik%29</id>
	<title>Transduktor (Informatik) - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Transduktor_%28Informatik%29"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Transduktor_(Informatik)&amp;action=history"/>
	<updated>2026-06-01T21:39:26Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Transduktor_(Informatik)&amp;diff=586669&amp;oldid=prev</id>
		<title>imported&gt;Orthographus: \colon</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Transduktor_(Informatik)&amp;diff=586669&amp;oldid=prev"/>
		<updated>2020-06-05T10:10:45Z</updated>

		<summary type="html">&lt;p&gt;\colon&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Ein &amp;#039;&amp;#039;&amp;#039;Transduktor&amp;#039;&amp;#039;&amp;#039; ist in der [[Theoretische Informatik|theoretischen Informatik]] ein spezieller [[endlicher Automat]]. Er zeichnet sich dadurch aus, dass er im Gegensatz zu einem [[Akzeptor (Informatik)|Akzeptor]] eine Ausgabe erzeugt. Er überführt (übersetzt) eine Quellsprache in eine Zielsprache. Da die formalen Eigenschaften dieser Sprachen variieren können, unterscheidet man verschiedene Untertypen, die im Folgenden näher beschrieben werden.&lt;br /&gt;
&lt;br /&gt;
== Endlicher Transduktor ==&lt;br /&gt;
&lt;br /&gt;
Endliche Transduktoren sind [[Endlicher Automat|endliche Automaten]], die im Unterschied zu&lt;br /&gt;
[[Akzeptor (Informatik)|Akzeptoren]] zusätzlich eine Ausgabefunktion besitzen. Diese Funktion ist in der klassischen Definition mit den Übergängen und den Endzuständen des Automaten verknüpft. Abbildung 1 zeigt einen auf dem [[Alphabet (Mathematik)|Alphabet]] &amp;lt;math&amp;gt;\{a,b,c,d,e,x\}&amp;lt;/math&amp;gt; basierenden Transduktor, der jedes Vorkommen von &amp;lt;math&amp;gt;ab&amp;lt;/math&amp;gt; in einer Eingabe[[zeichenkette]] durch ein einzelnes &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; in der Ausgabe ersetzt. Für die Eingabe &amp;lt;math&amp;gt;acabd&amp;lt;/math&amp;gt; beispielsweise wird &amp;lt;math&amp;gt;acxd&amp;lt;/math&amp;gt; ausgegeben. Im Zustand 1 kann der Transduktor beispielsweise ein a lesen, dafür ein x ausgeben und in den Zustand 2 übergehen. Zustand 2 ist kein Endzustand, da ja nun ein &amp;#039;&amp;#039;b&amp;#039;&amp;#039; gelesen werden muss.&lt;br /&gt;
Da im Beispiel das zu Ersetzende und das Ersetzte unterschiedlich lang sind, wird beim Übergang von 2 nach 0 beim Lesen von &amp;#039;&amp;#039;b&amp;#039;&amp;#039; das [[Leeres Wort|leere Wort]] &amp;lt;math&amp;gt;\varepsilon&amp;lt;/math&amp;gt; ausgegeben.&lt;br /&gt;
&lt;br /&gt;
[[Datei:Transduktor Informatik1.png|rechts|miniatur|200px|Abb. 1: Transduktor, der &amp;#039;&amp;#039;ab&amp;#039;&amp;#039; durch &amp;#039;&amp;#039;x&amp;#039;&amp;#039; ersetzt]]&lt;br /&gt;
[[Datei:Transduktor Informatik3.png|rechts|miniatur|300px|Abb. 2: Nichtdeterministischer Transduktor]]&lt;br /&gt;
[[Datei:Transduktor Informatik4.png|rechts|miniatur|400px|Abb. 3: Deterministische Version des Transduktors aus Abb. 2]]&lt;br /&gt;
[[Datei:Transduktor Informatik2.png|rechts|miniatur|200px|Abb. 4: Nichtdeterminisierbarer Transduktor]]&lt;br /&gt;
&lt;br /&gt;
=== Mathematische Definition ===&lt;br /&gt;
Ein Transduktor ist ein 7-[[Tupel]] &amp;lt;math&amp;gt;(Q, \Sigma, \Gamma, q_0, \delta,F, \omega) &amp;lt;/math&amp;gt;, wobei:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;math&amp;gt;Q&amp;lt;/math&amp;gt; ist eine endliche Menge von Zuständen,&lt;br /&gt;
* &amp;lt;math&amp;gt;\Sigma&amp;lt;/math&amp;gt; ist das [[Alphabet (Mathematik)|Eingabealphabet]] (eine endliche, nicht-leere Menge von Symbolen),&lt;br /&gt;
* &amp;lt;math&amp;gt;\Gamma&amp;lt;/math&amp;gt; ist das [[Alphabet (Mathematik)|Ausgabealphabet]] (eine endliche, nicht-leere Menge von Symbolen),&lt;br /&gt;
* &amp;lt;math&amp;gt;q_0\in Q&amp;lt;/math&amp;gt; ist der Anfangszustand und ein Element aus &amp;lt;math&amp;gt;Q&amp;lt;/math&amp;gt;,&lt;br /&gt;
* &amp;lt;math&amp;gt;\delta&amp;lt;/math&amp;gt; ist die [[Zustandsübergangsfunktion]] &amp;lt;math&amp;gt;\delta\colon Q \times \Sigma \cup \{\varepsilon\} \to 2^Q&amp;lt;/math&amp;gt;,&lt;br /&gt;
* &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; ist eine endliche Menge von Endzuständen (&amp;lt;math&amp;gt;F \subseteq Q&amp;lt;/math&amp;gt;),&lt;br /&gt;
* &amp;lt;math&amp;gt;\omega&amp;lt;/math&amp;gt; ist die Ausgabefunktion &amp;lt;math&amp;gt;\omega\colon Q \times \Sigma \cup \{\varepsilon\} \times Q \to \Gamma^*&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Die Übergangsfunktion &amp;lt;math&amp;gt;\delta&amp;lt;/math&amp;gt; ist diejenige eines [[Nichtdeterminismus|nichtdeterministischen]] endlichen Transduktors, d.&amp;amp;nbsp;h. der Transduktor kann beim Lesen eines Symbols &amp;#039;&amp;#039;a&amp;#039;&amp;#039; im Zustand &amp;#039;&amp;#039;q&amp;#039;&amp;#039; prinzipiell in mehrere Folgezustände übergehen.&lt;br /&gt;
Ist der Transduktor hingegen [[Determinismus (Algorithmus)|deterministisch]], lässt sich die Übergangsfunktion folgendermaßen definieren:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\delta\colon Q \times \Sigma \to Q&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Die Ausgabefunktion vereinfacht sich im deterministischen Fall zu&lt;br /&gt;
&amp;lt;math&amp;gt;\omega\colon Q \times \Sigma \to \Gamma^*&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Oft werden Übergangs- und Ausgabefunktion auch zu einer Übergangsrelation &amp;lt;math&amp;gt;\Delta&amp;lt;/math&amp;gt; mit &amp;lt;math&amp;gt;\Delta \subseteq Q \times (\Sigma \cup \{\varepsilon\}) \times \Gamma^* \times Q&amp;lt;/math&amp;gt; zusammengefasst.&lt;br /&gt;
&lt;br /&gt;
=== Algebraische Operationen ===&lt;br /&gt;
&lt;br /&gt;
Die Menge der endlichen Transduktoren ist abgeschlossen unter folgenden Operationen:&lt;br /&gt;
&lt;br /&gt;
* [[Konkatenation (Formale Sprache)|Verkettung]]: Sind &amp;lt;math&amp;gt;T_1&amp;lt;/math&amp;gt; und &amp;lt;math&amp;gt;T_2&amp;lt;/math&amp;gt; Transduktoren, so ist auch &amp;lt;math&amp;gt;T_1 \cdot T_2&amp;lt;/math&amp;gt; ein Transduktor.&lt;br /&gt;
* [[Mengenlehre#Vereinigungsmenge|Vereinigung]]&lt;br /&gt;
* [[Kleene-Stern|Stern]]- und Plus[[Hüllenoperator|hüllenbildung]]&lt;br /&gt;
* Umkehrung&lt;br /&gt;
* Invertierung: Vertauschen von Ein- und Ausgabeband.&lt;br /&gt;
* [[Komposition (Mathematik)|Komposition]]&lt;br /&gt;
&lt;br /&gt;
Unter [[Schnittmenge|Schnitt]] sind nur [[Graph (Graphentheorie)#Gerichteter azyklischer Graph|azyklische]] Transduktoren oder solche, die keine &amp;lt;math&amp;gt;\varepsilon&amp;lt;/math&amp;gt;:x bzw.&lt;br /&gt;
x:&amp;lt;math&amp;gt;\varepsilon&amp;lt;/math&amp;gt;-Übergänge besitzen, abgeschlossen.&lt;br /&gt;
&lt;br /&gt;
Nicht abgeschlossen sind Transduktoren unter:&lt;br /&gt;
&lt;br /&gt;
* [[Komplement (Mengenlehre)|Komplementierung]]&lt;br /&gt;
* [[Mengenlehre#Differenz und Komplement|Differenz]]&lt;br /&gt;
&lt;br /&gt;
Ferner gibt es einige Optimierungsoperationen für Transduktoren:&lt;br /&gt;
&lt;br /&gt;
* Entfernung von &amp;lt;math&amp;gt;\varepsilon&amp;lt;/math&amp;gt;:&amp;lt;math&amp;gt;\varepsilon&amp;lt;/math&amp;gt;-Übergängen&lt;br /&gt;
* Determinisierung des Eingabebands des Transduktors. Abb. 3 zeigt die deterministische Variante des Transduktors aus Abb. 2 (zu beachten ist, dass dieser Transduktor im strengen Sinne durch seine Epsilon-Übergänge nicht deterministisch ist. Vgl. Subsequentielle Transduktoren). Allerdings können nicht alle Transduktoren, noch nicht mal diejenigen, die eine Funktion &amp;lt;math&amp;gt;\Sigma^* \to \Gamma^*&amp;lt;/math&amp;gt; realisieren, determinisiert werden. Abb. 4 zeigt einen nicht determinisierbaren Transduktor. Dies unterscheidet endliche Transduktoren von endlichen Automaten und hat Konsequenzen für die [[Entscheidbarkeit]] des [[Äquivalenzproblem]]s (s.&amp;amp;nbsp;u.)&lt;br /&gt;
* Eine Teilklasse der Transduktoren erlaubt äquivalente [[Deterministischer endlicher Automat#Minimierung|minimale]] Varianten.&lt;br /&gt;
* &amp;#039;&amp;#039;Pushing&amp;#039;&amp;#039;: Verschieben von Ausgabesymbolen so weit wie möglich in Richtung Startzustand. Durch &amp;#039;&amp;#039;Pushing&amp;#039;&amp;#039; in Verbindung mit Determinisierung kann eine eindeutige [[Normalform]] hergestellt werden.&lt;br /&gt;
&lt;br /&gt;
=== Korrespondierende Sprachklasse ===&lt;br /&gt;
Die zu endlichen Transduktoren korrespondierende Sprachklasse umfasst die sog. [[Reguläre Relation|regulären Relationen]]. Vgl. auch [[Formale Sprache]]n, [[Chomsky-Hierarchie]].&lt;br /&gt;
&lt;br /&gt;
=== Erweiterungen ===&lt;br /&gt;
==== P-subsequentielle Transduktoren ====&lt;br /&gt;
Die Überführung eines Transduktors in einen &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt;-subsequentiellen Transduktor wird [[Determinismus (Algorithmus)|Determinisierung]] genannt.&lt;br /&gt;
Dabei werden die Ausgaben verzögert und durch eine zusätzliche Endausgabefunktion &amp;lt;math&amp;gt;\varphi&amp;lt;/math&amp;gt; an den Endzuständen ausgegeben, &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt; entspricht hierbei der Maximalanzahl der Ausgaben.&lt;br /&gt;
Sollte &amp;lt;math&amp;gt;p = 1&amp;lt;/math&amp;gt; sein, spricht man von einem &amp;#039;&amp;#039;sequentiellen&amp;#039;&amp;#039; Transduktor. Ein sequentieller Transduktor, bei dem alle Zustände auch Endzustände sind, heißt auch &amp;#039;&amp;#039;subsequentiell&amp;#039;&amp;#039;.&lt;br /&gt;
Alle [[Graph (Graphentheorie)#Gerichteter azyklischer Graph|azyklischen]] Transduktoren lassen sich in äquivalente (im Sinne der realisierten String-Funktion) &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt;-subsequentielle Transduktoren überführen.&lt;br /&gt;
Bei einem zyklischen Transduktor kann die Determinierbarkeit mit Hilfe der „[[Twins property|Twins Property]]“ festgestellt werden.&lt;br /&gt;
&lt;br /&gt;
===== Mathematische Definition =====&lt;br /&gt;
Ein &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt;-subsequentieller Transduktor ist ein 8-Tupel &amp;lt;math&amp;gt;(Q, \Sigma, \Gamma, q_0, \delta, F, \omega, \varphi)&amp;lt;/math&amp;gt;, wobei:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;math&amp;gt;Q&amp;lt;/math&amp;gt; ist eine endliche Menge von Zuständen,&lt;br /&gt;
* &amp;lt;math&amp;gt;\Sigma&amp;lt;/math&amp;gt; ist das [[Alphabet (Mathematik)|Eingabealphabet]] (eine endliche, nicht-leere Menge von Symbolen),&lt;br /&gt;
* &amp;lt;math&amp;gt;\Gamma&amp;lt;/math&amp;gt; ist das [[Alphabet (Mathematik)|Ausgabealphabet]] (eine endliche, nicht-leere Menge von Symbolen),&lt;br /&gt;
* &amp;lt;math&amp;gt;q_0 \in Q&amp;lt;/math&amp;gt; ist der Anfangszustand,&lt;br /&gt;
* &amp;lt;math&amp;gt;\delta&amp;lt;/math&amp;gt; ist die Zustandsübergangsfunktion &amp;lt;math&amp;gt;\delta \colon Q \times \Sigma \to Q&amp;lt;/math&amp;gt;,&lt;br /&gt;
* &amp;lt;math&amp;gt;F \subseteq Q&amp;lt;/math&amp;gt; ist eine endliche Menge von Endzuständen,&lt;br /&gt;
* &amp;lt;math&amp;gt;\omega&amp;lt;/math&amp;gt; ist die Ausgabefunktion &amp;lt;math&amp;gt;\omega \colon Q \times \Sigma \to \Gamma^*&amp;lt;/math&amp;gt;,&lt;br /&gt;
* &amp;lt;math&amp;gt;\varphi&amp;lt;/math&amp;gt; ist die Endausgabefunktion &amp;lt;math&amp;gt;\varphi \colon F \to {(\Gamma^*)}^p&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Die Endausgabefunktion &amp;lt;math&amp;gt;\varphi&amp;lt;/math&amp;gt; gibt bis zu &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt; verschiedene Strings an den Endzuständen aus,&lt;br /&gt;
dabei ist &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt; die finite Anzahl der [[Ambiger Transduktor|Ambiguitäten eines Transduktors]].&lt;br /&gt;
&lt;br /&gt;
Ein Algorithmus zur Determinisierung ist der von [[Algorithmus von Mohri|Mohri]].&lt;br /&gt;
&lt;br /&gt;
==== Verwendung von Gewichten ====&lt;br /&gt;
Ein gewichteter endlicher Transduktor ist ein Transduktor, der um eine Gewichtsfunktion erweitert wurde, die den Transitionen Werte zuweist. Diese Werte können aus einem beliebigen [[Halbring (Algebraische Struktur)|Halbring]] &amp;lt;math&amp;gt;\mathbb{K}&amp;lt;/math&amp;gt; stammen.&lt;br /&gt;
&lt;br /&gt;
Fasst man wie oben Übergangs- und Ausgabefunktion und dazu die Gewichtsfunktion zu einer Relation zusammen, ist ein gewichteter Transduktor über einem Halbring &amp;lt;math&amp;gt;\mathbb{K}&amp;lt;/math&amp;gt; ein 8-Tupel &amp;lt;math&amp;gt;(Q,\Sigma,\Gamma,I,\Delta,F,\lambda,\rho)&amp;lt;/math&amp;gt;, wobei&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;math&amp;gt;Q,\Sigma,\Gamma, F&amp;lt;/math&amp;gt; wie oben,&lt;br /&gt;
* &amp;lt;math&amp;gt;I\subseteq Q&amp;lt;/math&amp;gt; ist eine Menge von Anfangszuständen,&lt;br /&gt;
* &amp;lt;math&amp;gt;\Delta&amp;lt;/math&amp;gt; ist die Relation &amp;lt;math&amp;gt;\Delta \colon Q \times (\Sigma \cup \{\varepsilon\})\times (\Gamma\cup\{\varepsilon\}) \times \mathbb{K}\times Q&amp;lt;/math&amp;gt;,&lt;br /&gt;
* &amp;lt;math&amp;gt;\lambda&amp;lt;/math&amp;gt; ist die Gewichtsfunktion &amp;lt;math&amp;gt;\lambda \colon I \to \mathbb{K}&amp;lt;/math&amp;gt;, die den Anfangszuständen Gewichte zuweist,&lt;br /&gt;
* &amp;lt;math&amp;gt;\rho&amp;lt;/math&amp;gt; ist die Gewichtsfunktion &amp;lt;math&amp;gt;\rho \colon F \to \mathbb{K}&amp;lt;/math&amp;gt;, die den Endzuständen Gewichte zuweist.&lt;br /&gt;
&lt;br /&gt;
Die Gewichte können beispielsweise in der [[Sprachsynthese]] dazu verwendet werden, für ein Eingabezeichen verschiedene Aussprachemöglichkeiten anzubieten, die unterschiedlich wahrscheinlich sind. Die Wahrscheinlichkeiten können zum Beispiel durch [[maschinelles Lernen]] ermittelt werden.&lt;br /&gt;
&lt;br /&gt;
=== Anwendungen ===&lt;br /&gt;
* [[Morphologische Analyse (Computerlinguistik)|Morphologische Analyse]]&lt;br /&gt;
* Robuste [[Parsing|syntaktische Analyse]]&lt;br /&gt;
* [[Datenkompression]]&lt;br /&gt;
* [[Kodierung]]&lt;br /&gt;
&lt;br /&gt;
== Kellertransduktor ==&lt;br /&gt;
Ein Kellertransduktor ist ein [[LR-Parser]] zu einer gegebenen [[kontextfreie Grammatik|kontextfreien Grammatik]], also ein [[Kellerautomat]], der eine Ausgabe erzeugt.&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
* [[Akzeptor (Informatik)|Akzeptor]]&lt;br /&gt;
* [[Compiler]]&lt;br /&gt;
* [[Kellerautomat]]&lt;br /&gt;
* [[Parser]]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Theorie formaler Sprachen]]&lt;br /&gt;
[[Kategorie:Automatentheorie]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Orthographus</name></author>
	</entry>
</feed>