„Programmäquivalenz“ – Versionsunterschied

[gesichtete Version][gesichtete Version]
Inhalt gelöscht Inhalt hinzugefügt
Keine Bearbeitungszusammenfassung
weitergeleitet nach Äquivalenzproblem, da gleiches Konzept, aber Artikel ist populärer und umfangreicher
Markierung: Neue Weiterleitung
 
Zeile 1: Zeile 1:
#WEITERLEITUNG [[Äquivalenzproblem]]
{{Belege fehlen}}
'''Programmäquivalenz''' besagt, dass zwei [[Computerprogramm]]e (oder zwei [[Algorithmus|Algorithmen]]) dieselbe [[Funktion (Mathematik)|Funktion]] berechnen. Das bedeutet, dass beide Programme für dieselbe Eingabe auch immer dieselbe Ausgabe liefern, bzw. dass sie dieselbe [[Formale Sprache|Sprache]] akzeptieren:

:als Funktion: '''P<sub>1</sub>(E)=A [[genau dann, wenn]] P<sub>2</sub>(E)=A'''
:als Sprache: '''E &isin; L(P<sub>1</sub>) [[genau dann, wenn]] E &isin; L(P<sub>2</sub>)''' also '''L(P<sub>1</sub>) = L(P<sub>2</sub>)'''

Die [[Gleichwertigkeit|Äquivalenz]] zweier Programme ist von zentraler Bedeutung in der [[Theoretische Informatik|Theoretischen Informatik]], insbesondere für die [[Formale Semantik]], die [[Komplexitätstheorie]] und die [[Berechenbarkeitstheorie]]. Allerdings ist es im Allgemeinen nicht möglich, für zwei beliebige Programme in einer [[Turing-Vollständigkeit|Turing-vollständigen]] Sprache zu entscheiden, ob sie äquivalent sind. Dies folgt aus dem [[Satz von Rice]].

{{SORTIERUNG:Programmaquivalenz}}
[[Kategorie:Berechenbarkeitstheorie]]

Aktuelle Version vom 6. März 2024, 12:32 Uhr

Weiterleitung nach: