Es gibt äußerst tiefe und allgegenwärtige Verbindungen zwischen Logik und Informatik. Denken Sie daran, dass die Informatik auch als "Informationstechnologie" oder "Informatik" bezeichnet wird, was bedeutet, dass Computersysteme Informationen erfassen, verarbeiten und bereitstellen. Nun, Logik ist eine ähnliche Sache. Es wird untersucht, wie Informationen in Sätzen erfasst werden und wie eine Aussage eine Folge einer anderen sein kann, dh wie ihr Informationsgehalt bereits in einer anderen Aussage (oder einer Sammlung von Aussagen) vorhanden ist. In diesem Sinne sind Logik und Informatik im Wesentlichen gleichDisziplin, die sich auf verschiedene Aspekte konzentriert. Logiker (Church, Kleene, Turing, Post und ihre Studenten und Kollegen) haben die Disziplin der Informatik geschaffen, und viele Logiker leisten weiterhin Beiträge zur Informatik, insbesondere Jean-Yves Girard und seine Studenten.
Hier sind einige Standardanwendungen der Logik in der Informatik:
Der Entwurf digitaler Schaltungen basiert vollständig auf der Vorschlagslogik, so dass seine Ingenieure ihn eher als "Logikentwurf" als als "Schaltungsentwurf" bezeichnen. Sogar das Schreiben eines Computerprogramms wird oft als das Entwickeln seiner "Logik" angesehen. (Beachten Sie, dass "Logik" im letzteren Sinne eher eine informelle Idee als eine formale Logik ist, die verwendet wird, um auf den Informationsfluss durch das Programm zu verweisen und ob er korrekt verarbeitet wird.)
Prädikatenlogik und ihre mathematische Verwandtschaft, die Mengenlehre, werden in einer Vielzahl von Computersprachen verwendet , z. B. in der Sprache SQL für relationale Datenbankabfragen. Es gibt auch auf Logik basierende Programmiersprachen, die als "Logik-Programmiersprachen" bezeichnet werden.
Die Wissensrepräsentation , die Sie bereits erwähnt haben, hat viele auf Logik basierende Formalismen. Auch wenn nichtlogische Formalismen verwendet werden, haben viele von ihnen immer noch eine logische Bedeutung und basieren daher auf Logik.
Die probabilistische Logik, bei der Aussagen nicht nur wahre / falsche Werte, sondern auch Gewissheits- / Unsicherheitsgrade aufweisen, ist zunehmend die Grundlage für maschinelle Lernsysteme .
Wenn Sie formell angeben möchten, was ein Programm tut, dh eine Programmspezifikation angeben , werden Sie eine logische Sprache verwenden. In der Tat gibt es viele Programmspezifikationssprachen wie Z und B, die auf Prädikatenlogik und Mengenlehre basieren. Es gibt auch Spezifikationssprachen, die auf Gleichungslogik basieren, wie z. B. Larch. Informatiker erfinden häufig neue Logik, um die Bedürfnisse der Informatik darzustellen, z. B. Hoare-Logik und Trennungslogik, oder sie greifen verschiedene unterbenutzte Formen traditioneller Logik auf, entwickeln sie und entwickeln sie weiter.
Wenn Sie überprüfen möchten, ob ein Programm das tut, was es tun soll, dann verwenden Sie nicht nur die Sprache der Logik, sondern die gesamte Maschinerie der Logik: Beweistheorie, Modelltheorie und Entscheidungsverfahren. Die Verifikationstechnologie wächst rasant und ich gehe davon aus, dass sie in etwa einem weiteren Jahrzehnt routinemäßig für fast alle Softwareentwicklungen eingesetzt wird.
Tatsächlich sind die Verbindungen zwischen Logik und Informatik so tief und durchdringend, dass ich sagen würde, es ist schwierig, ein guter Informatiker zu sein, ohne ein gründliches Verständnis der Logik.
Der Grund, warum einige KI-Wissenschaftler die Logik zu diesem Zeitpunkt unterschätzen, ist, dass einige der frühen Entwickler der KI eine Standardlogik als Werkzeug vorgeschlagen hatteneher als eine Stiftung. KI verspricht von Natur aus Magie. Wir müssen die harte Arbeit von Programmiersystemen nicht machen, um Ergebnisse zu liefern. Sie könnten auf eigene Faust herausfinden, wie sie Lösungen herstellen können, weil sie "intelligent" wären. Logik schien richtungsweisend zu sein, denn wenn Computersysteme Logik verstehen und wissen, wie Informationen nach den Regeln der Logik verarbeitet werden, sind sie in der Lage, Magie auszulösen. Dieser Glaube an die Logik war im Nachhinein fehl am Platz. Erstens ist die Standardlogik zu stark und zu schwach zugleich. Es ist zu stark in dem Sinne, dass die Regeln der Logik zu allgemein sind, um wirksame Verfahren zu entwickeln. Es ist auch zu schwach, weil es die Logik ist, die von Mathematikern für die Bedürfnisse der Mathematik entwickelt wurde und die es nicht tut. ' Sie verfügen nicht über das erforderliche Vokabular, um mit vielen anderen Arten von Informationen aus der realen Welt fertig zu werden, mit denen KI-Systeme umgehen müssen (z. B. Unsicherheit, Kontextinformationen wie Zeit, Veränderung, Wissen, Entscheidungsfreiheit usw.). Die KI unterzieht sich derzeit einer Gegenreaktion gegen die Logik. Ich denke jedoch, dass KI-Wissenschaftler erkennen werden, dass all die neueren Methoden immer noch darauf basieren, wenn sie diese Gegenreaktion überwindenLogik, breit ausgelegt .