„Korrektheit“ – Versionsunterschied
| [ungesichtete Version] | [ungesichtete Version] |
Die Seite wurde neu angelegt: „= Korrektheit =“ |
K Textersetzung - „{{dt.-lat.}}“ durch „Sprachstufe::lat.-deu.“ |
||
| (7 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
= Korrektheit = | [[korrekt]][[-heit]] [[Sprachstufe::lat.-deu.]] {{Wrtdtng}}: [[wrtl.]] [[an sich]] '[[Gerechtheit]], Gerichtetheit', gemeint ist meist ''[[Genauigkeit]] oder [[Richtigkeit]] wie auch [[Geregeltheit]],'' wie als [[Geregtheit]] übersetzbar. | ||
'''Korrektheit''' <abbr>f.</abbr>‘Richtigkeit, Fehlerlosigkeit, einwandfreies Benehmen’ (um 1800). | |||
== <span class="mw-page-title-main">Korrektheit (Logik)</span> == | |||
<p>'''Korrektheit''' ([https://de.wikipedia.org/wiki/Englische_Sprache englisch] ''soundness'') ist eine wichtige Eigenschaft [[Formalsystem|formaler Systeme]] oder [[Kalkül|Kalküle]] und betrifft den Zusammenhang zwischen [[Syntax]] und [[Semantik]], der umgangssprachlich lautet: Was [[formal]] [[ableitbar]] ist, ist auch [[wahr]], soweit die [[Prämissen]] der [[Ableitung]] wahr sind.</p>In der formalen Logik wird [[Ableitbarkeit]] durch den syntaktischen [https://de.wikipedia.org/wiki/Ableitung_(Logik)#Die_Ableitbarkeitsrelation_und_der_Ableitbarkeitsoperator Ableitungsoperator] ⊢ und Schlussfolgern durch die [https://de.wikipedia.org/wiki/Semantische_Folge semantische Folgerungsrelation] ⊨ ausgedrückt: Ein Kalkül heißt ''korrekt'', wenn für Aussagenmengen [[𝚺]] und [[𝚿]] aus stets 𝚺 ⊨ 𝚿 folgt. Die Semantik des Schließens wird modelltheoretisch definiert: 𝚺 ⊨ 𝚿 gilt genau dann, wenn jedes Modell von 𝚺 auch Modell von 𝚿 ist. | |||
Für die Korrektheit eines Kalküls ist hinreichend, wenn jede einzelne Ableitungsregel gültig ist. In einem korrekten Kalkül, welcher zusätzlich ein gewähltes Modell richtig beschreibt, lässt sich keine Formel herleiten, die im gewählten Modell nicht wahr ist. Allerdings hilft ein korrekter Kalkül nicht weiter, wenn er das Modell durch Axiome falsch beschreibt (z. B. postuliere 𝚺 für einen Kalkül der natürlichen Zahlen, dass die Null einen Vorgänger hat) oder inkonsistent ist (z. B. postuliere 𝚺 für einen Kalkül der natürlichen Zahlen, dass die Null einen Vorgänger hat und keinen Vorgänger hat). Aus einem solchen korrekten Kalkül lassen sich Formeln herleiten, die im gewählten Modell nicht wahr sind.<p>Das Gegenstück zur Korrektheit ist die [https://de.wikipedia.org/wiki/Vollst%C3%A4ndigkeit_(Logik) Vollständigkeit] eines formalen Systems. Sie besagt: Was semantisch richtig ist, lässt sich auch ableiten. Vollständigkeitssätze sind meist weitaus schwieriger zu beweisen als Korrektheitssätze; so bereitet der Beweis für die Korrektheit des [https://de.wikipedia.org/wiki/Sequenzenkalk%C3%BCl Sequenzenkalküls] der [https://de.wikipedia.org/wiki/Pr%C3%A4dikatenlogik Prädikatenlogik] keine Probleme,<ref><span class="reference-text">Ebbinghaus, Einführung in die mathematische Logik, Mannheim-Leipzig-Wien-Zürich 1992, S. 74</span></ref> wohingegen der [https://de.wikipedia.org/wiki/G%C3%B6delscher_Vollst%C3%A4ndigkeitssatz Vollständigkeitssatz] schwieriger ist.</p> | |||
=== <span id="Siehe_auch">[[Sh ach]]</span> === | |||
*[https://de.wikipedia.org/wiki/Allgemeing%C3%BCltigkeit Allgemeingültigkeit] | |||
*[https://de.wikipedia.org/wiki/G%C3%BCltigkeit Gültigkeit] | |||
*[https://de.wikipedia.org/wiki/Fehlschluss Fehlschluss] | |||
*[https://de.wikipedia.org/wiki/Korrektheit_(Informatik) Korrektheit (Informatik)] | |||
=== <span id="Quellen">[[Qlln]]</span> === | |||
*[https://de.wikipedia.org/wiki/Heinz-Dieter_Ebbinghaus Heinz-Dieter Ebbinghaus], Jörg Flum, Wolfgang Thomas: ''Einführung in die mathematische Logik'', 5. Aufl., Spektrum Akademischer Verlag; 2007, [https://de.wikipedia.org/wiki/Spezial:ISBN-Suche/9783827416919 ISBN 978-3827416919] | |||
*Hans-Peter Tuschik, Helmut Wolter: ''Mathematische Logik – kurzgefasst. Grundlagen, Modelltheorie, Entscheidbarkeit, Mengenlehre'', BI-Wiss. Verlag, Mannheim-Leipzig-Wien-Zürich 1994, [https://de.wikipedia.org/wiki/Spezial:ISBN-Suche/3411167319 ISBN 3-411-16731-9]. | |||
== <span class="mw-page-title-main">[https://de.wikipedia.org/wiki/Korrektheit_(Informatik) Korrektheit (Informatik)]</span> == | |||
Unter '''Korrektheit''' versteht man in der [https://de.wikipedia.org/wiki/Informatik Informatik] die Eigenschaft eines [https://de.wikipedia.org/wiki/Computerprogramm Computerprogramms], einer [https://de.wikipedia.org/wiki/Spezifikation Spezifikation] zu genügen (siehe auch [https://de.wikipedia.org/wiki/Verifizierung Verifikation]). Spezialgebiete der Informatik, die sich mit dieser Eigenschaft befassen, sind die [https://de.wikipedia.org/wiki/Formale_Semantik Formale Semantik]und die [https://de.wikipedia.org/wiki/Berechenbarkeitstheorie Berechenbarkeitstheorie]. | |||
Nicht abgedeckt vom Begriff ''Korrektheit'' ist, ob die ''Spezifikation'' die vom Programm zu lösende Aufgabe korrekt beschreibt (siehe dazu [https://de.wikipedia.org/wiki/Validierung_(Informatik) Validierung]). | |||
Ein Programmcode wird bezüglich einer [https://de.wikipedia.org/wiki/Vorbedingung_(Informatik) Vorbedingung] P und einer [https://de.wikipedia.org/wiki/Nachbedingung_(Informatik) Nachbedingung] Q '''partiell korrekt''' genannt, wenn bei einer Eingabe, die die Vorbedingung P erfüllt, jedes Ergebnis die Nachbedingung Q erfüllt. Dabei ist es noch möglich, dass das Programm nicht für jede Eingabe ein Ergebnis liefert, also nicht für jede Eingabe [https://de.wikipedia.org/wiki/Terminiertheit terminiert]. | |||
Ein Code wird '''total korrekt''' genannt, wenn er partiell korrekt ist und zusätzlich für jede Eingabe, die die Vorbedingung P erfüllt, terminiert. Aus der Definition folgt sofort, dass total korrekte Programme auch immer partiell korrekt sind. | |||
Der Nachweis partieller Korrektheit (Verifikation) kann z. B. mit dem [https://de.wikipedia.org/wiki/Wp-Kalk%C3%BCl wp-Kalkül] erfolgen. Um zu zeigen, dass ein Programm total korrekt ist, muss hier der Beweis der Terminierung in einem gesonderten Schritt behandelt werden. Mit dem [https://de.wikipedia.org/wiki/Hoare-Kalk%C3%BCl Hoare-Kalkül]kann die totale Korrektheit in vielen Fällen nachgewiesen werden. | |||
Der Nachweis der Korrektheit eines Programms kann jedoch nicht in allen Fällen geführt werden: Das folgt aus der [https://de.wikipedia.org/wiki/Entscheidbar Nicht-Entscheidbarkeit] des [https://de.wikipedia.org/wiki/Halteproblem Halteproblems] bzw. aus dem [https://de.wikipedia.org/wiki/G%C3%B6delscher_Unvollst%C3%A4ndigkeitssatz Gödelschen Unvollständigkeitssatz]. Auch wenn die Korrektheit für Programme, die bestimmten Einschränkungen unterliegen, bewiesen werden kann, so zählt die Korrektheit von Programmen allgemein zu den [https://de.wikipedia.org/wiki/Berechenbarkeit nicht-berechenbaren] Problemen. | |||
Die Durchführung einer Überprüfung auf Korrektheit bezeichnet man als Beweis. Dabei ist ein Beweis der totalen Korrektheit ein Spezialfall eines [https://de.wikipedia.org/wiki/Beweis_(Mathematik) mathematischen Beweises], erlaubt also im Gegensatz zum umgangssprachlichen Beweisbegriff eine absolute Aussage. | |||
=== <span id="Siehe_auch">[[Sh ach]]</span> === | |||
* Korrektheit (Logik) | |||
=== <span id="Weblinks">[[Wblnks]]</span> === | |||
* [https://www.bsi.bund.de/DE/Themen/ZertifizierungundAnerkennung/Produktzertifizierung/ZertifizierungnachCC/ITSicherheitskriterien/CommonCriteria/cc.html Gemeinsame Kriterien für die Prüfung und Bewertung der Sicherheit von Informationstechnik] | |||
* [https://www.bsi.bund.de/DE/Themen/ZertifizierungundAnerkennung/Produktzertifizierung/ZertifizierungnachCC/ITSicherheitskriterien/ITSEC/itsec_node.html IT-Sicherheitskriterien und Evaluierung nach ITSEC] | |||
* [https://www.bsi.bund.de/DE/Themen/ZertifizierungundAnerkennung/Produktzertifizierung/ZertifizierungnachCC/ITSicherheitskriterien/DeutscheITSicherheitskriterien/dtitsec.html Deutsche IT-Sicherheitskriterien] | |||
== <span id="Einzelnachweis">[[Enzlnchwse]]</span> == | |||
Aktuelle Version vom 8. Juni 2025, 07:41 Uhr
korrekt-heit lat.-deu. Wrtdtng:: wrtl. an sich 'Gerechtheit, Gerichtetheit', gemeint ist meist Genauigkeit oder Richtigkeit wie auch Geregeltheit, wie als Geregtheit übersetzbar.
Korrektheit f.‘Richtigkeit, Fehlerlosigkeit, einwandfreies Benehmen’ (um 1800).
Korrektheit (Logik)
Korrektheit (englisch soundness) ist eine wichtige Eigenschaft formaler Systeme oder Kalküle und betrifft den Zusammenhang zwischen Syntax und Semantik, der umgangssprachlich lautet: Was formal ableitbar ist, ist auch wahr, soweit die Prämissen der Ableitung wahr sind.
In der formalen Logik wird Ableitbarkeit durch den syntaktischen Ableitungsoperator ⊢ und Schlussfolgern durch die semantische Folgerungsrelation ⊨ ausgedrückt: Ein Kalkül heißt korrekt, wenn für Aussagenmengen 𝚺 und 𝚿 aus stets 𝚺 ⊨ 𝚿 folgt. Die Semantik des Schließens wird modelltheoretisch definiert: 𝚺 ⊨ 𝚿 gilt genau dann, wenn jedes Modell von 𝚺 auch Modell von 𝚿 ist. Für die Korrektheit eines Kalküls ist hinreichend, wenn jede einzelne Ableitungsregel gültig ist. In einem korrekten Kalkül, welcher zusätzlich ein gewähltes Modell richtig beschreibt, lässt sich keine Formel herleiten, die im gewählten Modell nicht wahr ist. Allerdings hilft ein korrekter Kalkül nicht weiter, wenn er das Modell durch Axiome falsch beschreibt (z. B. postuliere 𝚺 für einen Kalkül der natürlichen Zahlen, dass die Null einen Vorgänger hat) oder inkonsistent ist (z. B. postuliere 𝚺 für einen Kalkül der natürlichen Zahlen, dass die Null einen Vorgänger hat und keinen Vorgänger hat). Aus einem solchen korrekten Kalkül lassen sich Formeln herleiten, die im gewählten Modell nicht wahr sind.
Das Gegenstück zur Korrektheit ist die Vollständigkeit eines formalen Systems. Sie besagt: Was semantisch richtig ist, lässt sich auch ableiten. Vollständigkeitssätze sind meist weitaus schwieriger zu beweisen als Korrektheitssätze; so bereitet der Beweis für die Korrektheit des Sequenzenkalküls der Prädikatenlogik keine Probleme,[1] wohingegen der Vollständigkeitssatz schwieriger ist.
- Heinz-Dieter Ebbinghaus, Jörg Flum, Wolfgang Thomas: Einführung in die mathematische Logik, 5. Aufl., Spektrum Akademischer Verlag; 2007, ISBN 978-3827416919
- Hans-Peter Tuschik, Helmut Wolter: Mathematische Logik – kurzgefasst. Grundlagen, Modelltheorie, Entscheidbarkeit, Mengenlehre, BI-Wiss. Verlag, Mannheim-Leipzig-Wien-Zürich 1994, ISBN 3-411-16731-9.
Unter Korrektheit versteht man in der Informatik die Eigenschaft eines Computerprogramms, einer Spezifikation zu genügen (siehe auch Verifikation). Spezialgebiete der Informatik, die sich mit dieser Eigenschaft befassen, sind die Formale Semantikund die Berechenbarkeitstheorie.
Nicht abgedeckt vom Begriff Korrektheit ist, ob die Spezifikation die vom Programm zu lösende Aufgabe korrekt beschreibt (siehe dazu Validierung).
Ein Programmcode wird bezüglich einer Vorbedingung P und einer Nachbedingung Q partiell korrekt genannt, wenn bei einer Eingabe, die die Vorbedingung P erfüllt, jedes Ergebnis die Nachbedingung Q erfüllt. Dabei ist es noch möglich, dass das Programm nicht für jede Eingabe ein Ergebnis liefert, also nicht für jede Eingabe terminiert.
Ein Code wird total korrekt genannt, wenn er partiell korrekt ist und zusätzlich für jede Eingabe, die die Vorbedingung P erfüllt, terminiert. Aus der Definition folgt sofort, dass total korrekte Programme auch immer partiell korrekt sind.
Der Nachweis partieller Korrektheit (Verifikation) kann z. B. mit dem wp-Kalkül erfolgen. Um zu zeigen, dass ein Programm total korrekt ist, muss hier der Beweis der Terminierung in einem gesonderten Schritt behandelt werden. Mit dem Hoare-Kalkülkann die totale Korrektheit in vielen Fällen nachgewiesen werden.
Der Nachweis der Korrektheit eines Programms kann jedoch nicht in allen Fällen geführt werden: Das folgt aus der Nicht-Entscheidbarkeit des Halteproblems bzw. aus dem Gödelschen Unvollständigkeitssatz. Auch wenn die Korrektheit für Programme, die bestimmten Einschränkungen unterliegen, bewiesen werden kann, so zählt die Korrektheit von Programmen allgemein zu den nicht-berechenbaren Problemen.
Die Durchführung einer Überprüfung auf Korrektheit bezeichnet man als Beweis. Dabei ist ein Beweis der totalen Korrektheit ein Spezialfall eines mathematischen Beweises, erlaubt also im Gegensatz zum umgangssprachlichen Beweisbegriff eine absolute Aussage.
- Korrektheit (Logik)
- Gemeinsame Kriterien für die Prüfung und Bewertung der Sicherheit von Informationstechnik
- IT-Sicherheitskriterien und Evaluierung nach ITSEC
- Deutsche IT-Sicherheitskriterien
- ↑ Ebbinghaus, Einführung in die mathematische Logik, Mannheim-Leipzig-Wien-Zürich 1992, S. 74