<?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=Post-Kalk%C3%BCl</id>
	<title>Post-Kalkül - 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=Post-Kalk%C3%BCl"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Post-Kalk%C3%BCl&amp;action=history"/>
	<updated>2026-06-06T21:27:01Z</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=Post-Kalk%C3%BCl&amp;diff=560128&amp;oldid=prev</id>
		<title>imported&gt;Invisigoth67: typo</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Post-Kalk%C3%BCl&amp;diff=560128&amp;oldid=prev"/>
		<updated>2025-02-22T07:40:28Z</updated>

		<summary type="html">&lt;p&gt;typo&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Der vom polnisch-US-amerikanischen Mathematiker [[Emil Leon Post]] entwickelte &amp;#039;&amp;#039;&amp;#039;Post-Kalkül&amp;#039;&amp;#039;&amp;#039; zählt zu den Wortverarbeitenden [[Kalkül]]en. Diese beschreiben, wie durch formale Umwandlung von [[Zeichenkette]]n, ein bestimmtes Ergebnis erzielt werden kann. Eine Kenntnis über die spezifischen Bedeutung der Zeichenkette ist hierbei unnötig.&lt;br /&gt;
&lt;br /&gt;
== Definition und Funktionsweise ==&lt;br /&gt;
Eine Menge von Regeln, durch die bestimmte Zeichenketten in neue Zeichenketten umgewandelt werden können, ist die Grundlage aller mathematischen oder logischen Systeme. Der Post-Kalkül verwendet [[Substitution (Mathematik)|Substitutionsregeln]], die beidseitig aus einer Folge von Variablen und Konstanten bestehen. Die übrigen wortverarbeitenden Kalküle definieren weniger allgemeine Regeln zur Substitution. Der Kanonische Post-Kalkül besitzt nachfolgende Form.&lt;br /&gt;
&lt;br /&gt;
u&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;V&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;u&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;V&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; … u&amp;lt;sub&amp;gt;m&amp;lt;/sub&amp;gt;V&amp;lt;sub&amp;gt;m&amp;lt;/sub&amp;gt;u&amp;lt;sub&amp;gt;m+1&amp;lt;/sub&amp;gt; → w&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;V&amp;#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;w&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;V&amp;#039;&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; … w&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt;V&amp;#039;&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt;w&amp;lt;sub&amp;gt;n+1&amp;lt;/sub&amp;gt;&lt;br /&gt;
&lt;br /&gt;
V&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;, V&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; … V&amp;lt;sub&amp;gt;m&amp;lt;/sub&amp;gt; sind Variablen, es gilt {V&amp;#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;...V&amp;#039;&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt;} ⊆ {V&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;...V&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt;}&lt;br /&gt;
&lt;br /&gt;
u&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;, u&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; … u&amp;lt;sub&amp;gt;m&amp;lt;/sub&amp;gt;, u&amp;lt;sub&amp;gt;m+1&amp;lt;/sub&amp;gt;, w&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;, w&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; … w&amp;lt;sub&amp;gt;m&amp;lt;/sub&amp;gt;, w&amp;lt;sub&amp;gt;m+1&amp;lt;/sub&amp;gt; sind Teilworte des Ausgangswortes.&lt;br /&gt;
&lt;br /&gt;
Dabei gibt der Index &amp;#039;&amp;#039;&amp;#039;m&amp;#039;&amp;#039;&amp;#039; die Variablenanzahl auf der linken Regelseite und &amp;#039;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;#039; die Variablenanzahl auf der rechten Regelseite an. Die Variablen der rechten Regelseite stellen eine Teilmenge der linken Regelseite dar. Die Reihenfolge der Variablen der rechten Regelseite darf sich von der Reihenfolge der linken Regelseite unterscheiden. Darüber hinaus kann jede Variable der linken Regelseite, mehr als einmal auf die rechte Regelseite übertragen werden (&amp;#039;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;#039; &amp;gt;= &amp;#039;&amp;#039;&amp;#039;m&amp;#039;&amp;#039;&amp;#039;). Es darf eine unbegrenzte Anzahl an Variablen genutzt werden. Alle definierten Regeln werden stets auf das &amp;#039;&amp;#039;gesamte&amp;#039;&amp;#039; Ausgangswort angewendet.&lt;br /&gt;
&lt;br /&gt;
Der Kanonische Post-Kalkül ist ein [[Determinismus (Algorithmus)|nichtdeterministischer]] Kalkül und besitzt die nachfolgenden Eigenschaften.&lt;br /&gt;
&lt;br /&gt;
* Bei Verarbeitung eines Eingabewortes werden alle anwendbaren Regeln parallel angewendet.&lt;br /&gt;
* Die Ergebnisse der nichtdeterministischen Verarbeitung werden in einer [[Baum]]struktur abgelegt.&lt;br /&gt;
* Beim [[Pattern Matching]] kann es mehrere Möglichkeiten für die Variablenbelegung geben.&lt;br /&gt;
* Die Verarbeitung eines Teilbaumes wird beendet, sobald keine Regel mehr auf ihn anwendbar ist.&lt;br /&gt;
* Kann keiner der Teilbäume weiter bearbeitet werden, so ist die Verarbeitung des Eingebewortes beendet.&lt;br /&gt;
&lt;br /&gt;
== Einfaches Fallbeispiel ==&lt;br /&gt;
&lt;br /&gt;
;Eingabewort: &amp;lt;code&amp;gt;possibility&amp;lt;/code&amp;gt;&lt;br /&gt;
;Regeln:&lt;br /&gt;
: &amp;lt;code&amp;gt;R1  po[A]s[B]ibility &amp;amp;rarr; [B]foo[A]&amp;lt;/code&amp;gt;&lt;br /&gt;
: &amp;lt;code&amp;gt;R2  po[A]i[B]i[C]y   &amp;amp;rarr; [A][C]bar[B]xorize&amp;lt;/code&amp;gt;&lt;br /&gt;
: &amp;lt;code&amp;gt;R3  s[A]o[B]         &amp;amp;rarr; foos&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
;Tabelle:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;font-family:monospace; border:2px solid #000000;&amp;quot;&lt;br /&gt;
|-style=&amp;quot;border-bottom:2px solid #000000;&amp;quot;&lt;br /&gt;
! Eingabewort&lt;br /&gt;
! [A]&lt;br /&gt;
! [B]&lt;br /&gt;
! [C]&lt;br /&gt;
! Ausgabewort&lt;br /&gt;
! Regel&lt;br /&gt;
! Level&lt;br /&gt;
|-&lt;br /&gt;
| possibility || s    ||  /  || / || foos || R1 || L0&lt;br /&gt;
|-&lt;br /&gt;
| possibility || s    ||  /  || / || sfoo || R1 || L0&lt;br /&gt;
|-&lt;br /&gt;
| possibility || ssib ||  l  || t || ssibtbarlxorize || R2 || LO&lt;br /&gt;
|-&lt;br /&gt;
| possibility || ss   || bil || t || ssibtbarlxorize || R2 || LO&lt;br /&gt;
|- style=&amp;quot;border-bottom:2px solid #000000;&amp;quot;&lt;br /&gt;
| possibility&lt;br /&gt;
| ss&lt;br /&gt;
| b&lt;br /&gt;
| lit&lt;br /&gt;
| ssibtbarlxorize&lt;br /&gt;
| R2&lt;br /&gt;
| LO&lt;br /&gt;
|-&lt;br /&gt;
| sfoo || fo || / || / || foos || R3 || L1&lt;br /&gt;
|-&lt;br /&gt;
| sfoo || f  || o || / || foos || R3 || L1&lt;br /&gt;
|-&lt;br /&gt;
| ssibtbarlxorize || sibtbarlx || rize || / || foos || R3 || L1&lt;br /&gt;
|-&lt;br /&gt;
| ssibtbarlxorize || sibtbarlx || rize || / || foos || R3 || L1&lt;br /&gt;
|-&lt;br /&gt;
| ssibtbarlxorize || sibtbarlx || rize || / || foos || R3 || L1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;Baum:&lt;br /&gt;
&amp;lt;!--  Es gibt nichts zu verlinken. Daher bitte nicht die Stammbaumvorlage hier einbauen. --&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
      ┌─────────────┐&lt;br /&gt;
  L0  │ possibility │&lt;br /&gt;
      └──────┬──────┘&lt;br /&gt;
             │↓&lt;br /&gt;
          ┌──┴─────┬───────────────┬────────────────────┐&lt;br /&gt;
          │        │               │                    │&lt;br /&gt;
          │ R1     │ R1            │ R2                 │ R2&lt;br /&gt;
          │↓       │↓              │↓                   │↓&lt;br /&gt;
      ┌───┴──┐  ┌──┴───┐  ┌────────┴────────┐  ┌────────┴────────┐&lt;br /&gt;
  L1  │ foos │  │ sfoo │  │ sstbarbilxorize │  │ sstbarbilxorize │&lt;br /&gt;
      └──────┘  └──┬───┘  └────────┬────────┘  └────────┬────────┘&lt;br /&gt;
                   │               │                    │&lt;br /&gt;
                   │ R3            │ R3                 │ R3&lt;br /&gt;
                   │               │                    │&lt;br /&gt;
                   └───────────────┼────────────────────┘&lt;br /&gt;
                                   │↓&lt;br /&gt;
                               ┌───┴──┐&lt;br /&gt;
  L2                           │ foos │&lt;br /&gt;
                               └──────┘&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Anwendungsbeispiele ==&lt;br /&gt;
=== Addition von Unärzahlen ===&lt;br /&gt;
* Eingabewort&lt;br /&gt;
: &amp;lt;code&amp;gt;||||||+||||||||+|+||&amp;lt;/code&amp;gt;&lt;br /&gt;
* Regel&lt;br /&gt;
:&amp;lt;code&amp;gt;[A]+[B]&amp;amp;rarr;[A][B]&amp;lt;/code&amp;gt;&lt;br /&gt;
* Ergebnis&lt;br /&gt;
: &amp;lt;code&amp;gt;|||||||||||||||||&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Subtraktion von Unärzahlen ===&lt;br /&gt;
* Eingabewort&lt;br /&gt;
: &amp;lt;code&amp;gt;|||||-|||&amp;lt;/code&amp;gt;&lt;br /&gt;
* Regeln&lt;br /&gt;
:&amp;lt;code&amp;gt;[A]|-[B]|&amp;amp;rarr;[A]-[B]&amp;lt;/code&amp;gt;&lt;br /&gt;
: &amp;lt;code&amp;gt;[A]&amp;amp;rarr;[A]&amp;lt;/code&amp;gt;&lt;br /&gt;
* Ergebnis&lt;br /&gt;
: &amp;lt;code&amp;gt;||&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Multiplikation von Unärzahlen ===&lt;br /&gt;
* Eingabewort&lt;br /&gt;
: &amp;lt;code&amp;gt;|||*||||=&amp;lt;/code&amp;gt;&lt;br /&gt;
* Regeln&lt;br /&gt;
: &amp;lt;code&amp;gt;|[A]*[B]=[C]&amp;amp;rarr;[A]*[B]=[C][B]&amp;lt;/code&amp;gt;&lt;br /&gt;
: &amp;lt;code&amp;gt;*[A]=[B]&amp;amp;rarr;[B]&amp;lt;/code&amp;gt;&lt;br /&gt;
* Ergebnis&lt;br /&gt;
: &amp;lt;code&amp;gt;||||||||||||&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Parität prüfen ===&lt;br /&gt;
* Eingabewort&lt;br /&gt;
: &amp;lt;code&amp;gt;101010&amp;lt;/code&amp;gt;&lt;br /&gt;
* Regeln&lt;br /&gt;
: &amp;lt;code&amp;gt;[A]00[B]&amp;amp;rarr;[A]0[B]&amp;lt;/code&amp;gt;&lt;br /&gt;
: &amp;lt;code&amp;gt;[A]01[B]&amp;amp;rarr;[A]1[B]&amp;lt;/code&amp;gt;&lt;br /&gt;
: &amp;lt;code&amp;gt;[A]10[B]&amp;amp;rarr;[A]1[B]&amp;lt;/code&amp;gt;&lt;br /&gt;
: &amp;lt;code&amp;gt;[A]11[B]&amp;amp;rarr;[A]0[B]&amp;lt;/code&amp;gt;&lt;br /&gt;
* Ergebnis&lt;br /&gt;
: &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
&lt;br /&gt;
* [[Semi-Thue-System]]&lt;br /&gt;
* [[Markow-Algorithmus]]&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [https://freeshell.de//~jcm/index.php?nav=projects Post-Kalkül Interpreter] (englisch)&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Theoretische Informatik]]&lt;br /&gt;
[[Kategorie:Algorithmus]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Invisigoth67</name></author>
	</entry>
</feed>