boolsche Algebra
Im Mathematik und Mathematische Logik, boolsche Algebra ist der Zweig von Algebra in denen die Werte der Variablen sind die Wahrheitswerte Stimmt und FALSCH, normalerweise bezeichnet 1 bzw. 0. Anstatt von ElementaralgebraWenn die Werte der Variablen Zahlen sind und die Hauptvorgänge zusätzlich und Multiplikation sind, sind die Hauptbetriebe der Booleschen Algebra die Verbindung (und) als ∧ bezeichnet, die disjunktion (oder) bezeichnet als ∨ und der Negation (nicht) als ¬. Es ist somit ein Formalismus zum Beschreiben logische OperationenAuf die gleiche Weise beschreibt Elementaralgebra numerische Operationen.
Boolesche Algebra wurde von vorgestellt von George Boole in seinem ersten Buch Die mathematische Analyse der Logik [1](1847) und in seinem ausführlicher gestellt Eine Untersuchung der Denkgesetze (1854).[2] Entsprechend HuntingtonDer Begriff "Boolean Algebra" wurde zuerst von vorgeschlagen Sheffer im Jahr 1913,[3] obwohl Charles Sanders Peirce gab dem ersten Kapitel seiner "einfachsten Mathematik" im Jahr 1880 den Titel "eine Boolesche Algebra mit einer Konstante".[4] Boolesche Algebra war für die Entwicklung von grundlegender Bedeutung Digitale Elektronikund wird in allen modernen bereitgestellt Programmiersprachen. Es wird auch in verwendet Mengenlehre und Statistiken.[5]
Geschichte
Ein Vorläufer der Booleschen Algebra war Gottfried Wilhelm Leibniz's Algebra der Konzepte. Leibniz 'Algebra der Konzepte entspricht der Booleschen Algebra der Sets.[6]
Booles Algebra ließ die modernen Entwicklungen in vor Zusammenfassung Algebra und Mathematische Logik; Es wird jedoch als mit den Ursprüngen beider Felder verbunden angesehen.[7] In einer abstrakten Umgebung wurde die Boolesche Algebra im späten 19. Jahrhundert durch perfektioniert Jevons, Schröder, Huntington und andere, bis es die moderne Konzeption eines (Abstract) erreichte Mathematische Struktur.[7] Zum Beispiel die empirische Beobachtung, dass man Ausdrücke in der manipulieren kann Algebra der Sets, indem sie sie in Ausdruck in Booles Algebra übersetzen, wird in modernen Begriffen erklärt, indem sie sagen, dass die Algebra der Sets ist a boolsche Algebra (beachten Sie das unbestimmter Artikel). In der Tat, M. H. Stone 1936 bewiesen dass jede Boolesche Algebra ist isomorph zu einem Feld der Sätze.
In den 1930er Jahren während des Studiums Schaltkreise umstellen, Claude Shannon beobachtete, dass man auch die Regeln von Booles Algebra in dieser Einstellung anwenden könnte,[8] und er stellte vor Algebra Schalten als Möglichkeit, Schaltungen mit algebraischen Mitteln in Bezug auf zu analysieren und zu entwerfen Logik -Tore. Shannon hatte bereits den abstrakten mathematischen Apparat zur Verfügung, so Zwei-Element-Boolesche Algebra. In den Einstellungen für moderne Leitertechnik besteht nur wenig Notwendigkeit, andere boolesche Algebren zu berücksichtigen. Daher werden "Algebra" und "Boolesche Algebra" häufig austauschbar verwendet.[9][10][11]
Effiziente Implementierung von Boolesche Funktionen ist ein grundlegendes Problem in der Entwurf von Kombinationslogik Schaltungen. Modern elektronische Designautomatisierung Werkzeuge für VLSI -Schaltungen Stützen Sie sich häufig auf eine effiziente Darstellung von Booleschen Funktionen, die als (reduziert geordnet) bekannt sind Binäre Entscheidungsdiagramme (BDD) für Logiksynthese und formelle Überprüfung.[12]
Logische Sätze, die klassisch ausgedrückt werden können Propositionalkalkül einen haben äquivalenter Ausdruck in booleschen Algebra. Daher, Boolesche Logik wird manchmal verwendet, um die auf diese Weise durchgeführte Aussagekalkül zu bezeichnen.[13][14][15] Boolesche Algebra reicht nicht aus, um logische Formeln mithilfe zu erfassen Quantifiziererwie die von denen von Logik erster Ordnung.
Obwohl die Entwicklung von Mathematische Logik Ich folgte dem Programm von Booles nicht, die Verbindung zwischen seiner Algebra und seiner Logik wurde später im Umfeld von festgelegt algebraische Logik, die auch die algebraischen Systeme vieler anderer Logiken untersucht.[7] Das Problem der Bestimmung, ob Die Variablen einer bestimmten booleschen (shoxesischen) Formel können so zugewiesen werden, dass die Formel zu wahr bewertet wird Boolesche Zufriedenheitsproblem (SAT) und ist von Bedeutung für Theoretische Informatik, als das erste Problem, das gezeigt wird NP-Complete. Die eng verwandten Berechnungsmodell bekannt als a Boolesche Schaltung bezeichnet Zeitkomplexität (von einem Algorithmus) zu Komplexität der Schaltung.
Werte
Während Ausdrücke hauptsächlich bezeichnen Zahlen In der Elementaralgebra bezeichnen sie in Booleschen Algebra die Wahrheitswerte FALSCH und Stimmt. Diese Werte werden mit dem dargestellt Bits (oder binäre Ziffern), nämlich 0 und 1. Sie verhalten sich nicht wie das Ganzzahlen 0 und 1, für die 1 + 1 = 2, kann aber mit den Elementen der Elemente identifiziert werden Zwei-Element-Feld GF (2), das ist, Ganzzahl arithmetisches Modulo 2für welche 1 + 1 = 0. Addition und Multiplikation spielen dann die booleschen Rollen von XOR (exklusiv- oder) und (Konjunktion) mit Disjunktion x ∨ y (inklusive oder) definierbar als x + y - xy und Negation ¬x wie 1 - x. In GF (2),, − kann durch ersetzt werden durch +, da sie dieselbe Operation bezeichnen; Diese Art zum Schreiben von Booleschen Operationen ermöglicht jedoch die Anwendung der üblichen arithmetischen Operationen von Ganzzahlen (dies kann bei Verwendung einer Programmiersprache nützlich sein, in der GF (2) nicht implementiert wird).
Boolesche Algebra befasst sich auch mit Funktionen die ihre Werte im Satz {0, 1} haben. EIN Sequenz von Bits wird häufig für solche Funktionen verwendet. Ein weiteres häufiges Beispiel sind die Teilmengen eines Satzes E: zu einer Teilmenge F von E, man kann das definieren Indikatorfunktion Das nimmt den Wert 1 auf Fund 0 draußen F. Das allgemeinste Beispiel sind die Elemente von a boolsche Algebramit all dem Vorstehenden, die Instanzen davon sind.
Wie bei Elementaralgebra kann der rein gleiche Teil der Theorie entwickelt werden, ohne explizite Werte für die Variablen zu berücksichtigen.[16]
Operationen
Grundoperationen
Die grundlegenden Operationen der Booleschen Algebra sind Verbindung, disjunktion, und Negation. Diese booleschen Operationen werden mit dem entsprechenden ausgedrückt Binärbetreiber UND, und ODER und die unary operator NICHT, gemeinsam bezeichnet als als boolesche Operatoren.[17]
Die grundlegenden booleschen Operationen auf Variablen x und y werden wie folgt definiert:
|
Alternativ die Werte von x∧y, x∨yund ¬x kann ausgedrückt werden, indem deren Werte mit Tabulierung tabelliert werden Wahrheitstabellen folgendermaßen:
|
|
Wenn die Wahrheitswerte 0 und 1 als Ganzzahlen interpretiert werden, können diese Operationen mit den gewöhnlichen Arithmetikoperationen ausgedrückt werden (wohin x + y Verwendet Addition und xy Verwendet Multiplikation) oder nach den minimalen/maximalen Funktionen:
Man könnte bedenken, dass nur Negation und eine der beiden anderen Operationen grundlegend sind, da die folgenden Identitäten die Konjunktion in Bezug auf Negation und Disjunktion definieren und umgekehrt (umgekehrt (De Morgans Gesetze):
Sekundäre Operationen
Die drei oben beschriebenen drei Booleschen Operationen werden als grundlegend bezeichnet, was bedeutet, dass sie als Grundlage für andere boolesche Operationen angesehen werden können, die von ihnen aufgebaut werden können Komposition, Die Art und Weise, wie Operationen kombiniert oder verschärft werden. Aus den grundlegenden Operationen bestehenden Vorgänge umfassen die folgenden Beispiele:
Material bedingt: | |
Exklusiv oder (Xor): | |
Logische Äquivalenz: |
Diese Definitionen führen zu den folgenden Wahrheitstabellen, die die Werte dieser Operationen für alle vier möglichen Eingaben geben.
Sekundäre Operationen. Tabelle 1 0 0 1 0 1 1 0 0 1 0 0 1 1 1 0 1 1 1 0 1
- Material bedingt
- Die erste Operation, x→y, oder cxy, wird genannt materielle Implikation. Wenn x ist wahr, dann das Ergebnis des Ausdrucks x→y wird als die von angesehen y (z. B. wenn x ist wahr und y ist dann falsch, dann x→y ist auch falsch). Doch wenn x ist falsch, dann der Wert von y kann ignoriert werden; Die Operation muss jedoch zurückkehren etwas Boolescher Wert und es gibt nur zwei Möglichkeiten. Also per Definition, x→y ist Stimmt wenn x falsch ist. (Relevanzlogik schlägt diese Definition vor, indem sie eine Implikation mit a betrachtet falsche Prämisse als etwas anderes als entweder wahr oder falsch.)
- Exklusiv oder (Xor)
- Die zweite Operation, x⊕y, oder jxy, wird genannt Exklusiv oder (oft als XOR abgekürzt), um es von der Disjunktion als inklusive Art zu unterscheiden. Es schließt die Möglichkeit von beidem aus x und y Sein Richtig (z. B. siehe Tabelle): Wenn beide wahr sind, ist das Ergebnis falsch. In Bezug auf die Arithmetik definiert es ist Addition, wobei Mod 2 1+1 = 0 ist.
- Logische Äquivalenz
- Die dritte Operation, die Ergänzung von exklusivem oder, ist, ist Gleichwertigkeit oder boolesche Gleichheit: x≡yoder exy, ist wahr, wenn x und y den gleichen Wert haben. Somit x⊕y Wie seine Komplement als verstanden werden kann als x≠y, wahr, nur wenn x und y sind anders. Somit ist sein Gegenstück im arithmetischen Mod 2 x + y. Das Gegenstück der Äquivalenz in arithmetischen Mod 2 ist x + y + 1.
Bei zwei Operanden mit jeweils zwei möglichen Werten gibt es 22 = 4 mögliche Kombinationen von Eingängen. Da jeder Ausgang zwei mögliche Werte haben kann, gibt es insgesamt 24 = 16 mögliche binäre booleale Operationen. Eine solche Operation oder Funktion (sowie jede boolesche Funktion mit mehr Eingängen) kann mit den grundlegenden Vorgängen von oben ausgedrückt werden. Daher sind die grundlegenden Operationen funktionell vollständig.
Rechtsvorschriften
A Gesetz von booleschen Algebra ist ein Identität wie zum Beispiel x ∨ (y ∨ z) = ((x ∨ y) ∨ z zwischen zwei Booleschen Begriffen, wo a Boolean Begriff wird als Ausdruck definiert, das aus Variablen und den Konstanten 0 und 1 unter Verwendung der Operationen ∧, ∨ und ¬ aufgebaut ist. Das Konzept kann auf andere boolesche Operationen wie ⊕, → und ≡ beteiligt werden, aber solche Erweiterungen sind für die Zwecke, auf die die Gesetze erfolgt, unnötig. Solche Zwecke enthalten die Definition von a boolsche Algebra Wie alle Modell der Booleschen Gesetze und als Mittel zur Ableitung neuer Gesetze von alten wie bei der Ableitung von x ∨ (y ∧ z) = x ∨ (z ∧ y) aus y ∧ z = z ∧ y (wie behandelt in § axiomatisierende Boolesche Algebra).
Monotone Gesetze
Boolesche Algebra erfüllt viele der gleichen Gesetze wie gewöhnliche Algebra, wenn man mit Addition und ∧ mit der Multiplikation übereinstimmt. Insbesondere die folgenden Gesetze sind bei beiden Arten von Algebra gemeinsam:[18][19]
Assoziativität von : Assoziativität von : Amtativität von : Amtativität von : Verbreitung von Über : Identität für : Identität für : [20] Annihilator für :
Die folgenden Gesetze finden in Booleschen Algebra, jedoch nicht in gewöhnlicher Algebra:
Annihilator für : [20] Idempotenz von : Idempotenz von : Absorption 1: Absorption 2: Verbreitung von Über :
Einnahme x = 2 Im dritten Gesetz zeigt, dass es sich nicht um ein gewöhnliches Algebra -Gesetz handelt, da 2 × 2 = 4. Die verbleibenden fünf Gesetze können in gewöhnlichen Algebra gefälscht werden, indem alle Variablen als 1. im Absorptionsgesetz 1 zum Beispiel die linke Seite sein würde 1 (1 + 1) = 2, während die rechte Seite 1 sein würde (und so weiter).
Alle bisher behandelten Gesetze waren für Konjunktion und Disjunktion. Diese Vorgänge haben die Eigenschaft, die entweder das Argument entweder den Ausgang unverändert lässt, oder die Ausgabe ändert sich auf die gleiche Weise wie die Eingabe. Äquivalent führt das Ändern einer Variablen von 0 auf 1 nie dazu, dass sich der Ausgang von 1 auf 0 ändert Monoton. Somit waren die bisher alle Axiome für monotonische Boolesche Logik. Die Nichtmonotizität tritt durch Komplement wie folgt ein.[5]
Nichtmonotone Gesetze
Die Komplementoperation wird durch die folgenden beiden Gesetze definiert.
Alle Eigenschaften der Negation, einschließlich der folgenden Gesetze, folgen allein aus den beiden oben genannten Gesetzen.[5]
Sowohl in gewöhnlichen als auch in booleschen Algebra wirkt sich die Negation durch den Austausch von Elementenpaaren, woher es in beiden Algebren das doppelte Negationsgesetz erfüllt (auch als Involutionsgesetz bezeichnet)
Aber während Gewöhnliche Algebra erfüllt die beiden Gesetze
Boolesche Algebra erfüllt De Morgans Gesetze:
Vollständigkeit
Die oben aufgeführten Gesetze definieren die Boolesche Algebra in dem Sinne, dass sie den Rest des Themas mit sich bringen. Die Gesetze Ergänzung 1 und 2 ausreichen zusammen mit den monotonischen Gesetzen für diesen Zweck und können daher als möglich angesehen werden Komplett Gesetze oder Axiomatisierung von booleschen Algebra. Jedes Gesetz der Booleschen Algebra folgt logisch aus diesen Axiomen. Darüber hinaus können Boolesche Algebren als die definiert werden Modelle von diesen Axiomen, wie in behandelt § Boolesche Algebren.
Um zu verdeutlichen, kann das Aufschreiben weiterer Gesetze der Booleschen Algebra keine neuen Konsequenzen dieser Axiome ergeben, noch kann es ein Modell ausschließen. Im Gegensatz dazu hätte es in einer Liste einiger, aber nicht aller der gleichen Gesetze boolesche Gesetze geben können, die nicht von denen auf der Liste folgen, und außerdem hätte es Modelle der aufgelisteten Gesetze gegeben, die nicht boolesche Algebren waren.
Diese Axiomatisierung ist keineswegs die einzige oder sogar notwendigerweise die natürlichste, da wir nicht darauf geachtet haben, ob einige der Axiome von anderen gefolgt sind, sondern lediglich aufgehört haben, als wir bemerkten, dass wir genug Gesetze hatten, die weiter behandelt wurden § axiomatisierende Boolesche Algebra. Oder der mittlere Begriff von Axiom kann durch Definition eines booleschen Gesetzes direkt wie alle Tautologie, verstanden als Gleichung, die alle Werte seiner Variablen über 0 und 1 gilt.[21][22] Alle diese Definitionen der Booleschen Algebra können als gleichwertig erwiesen werden.
Dualitätsprinzip
Prinzip: Wenn {x, r} ist a Posetdann ist {x, r (inverse)} auch ein Poset.
Die Auswahl der Symbole für die Werte der Booleschen Algebra hat nichts Magisches. Wir könnten 0 und 1 umbenennen, um zu sagen α und βUnd solange wir das durchweg konsequent taten, wäre es immer noch eine Boolesche Algebra, wenn auch mit einigen offensichtlichen kosmetischen Unterschieden.
Angenommen, wir benennen 0 und 1 bis 1 bzw. 0 um. Dann wäre es immer noch eine Boolesche Algebra, und darüber hinaus arbeiten die gleichen Werte. Es wäre jedoch nicht identisch mit unserer ursprünglichen booleschen Algebra, da wir jetzt feststellen, dass wir uns wie früher verhalten und umgekehrt. Es gibt also immer noch einige kosmetische Unterschiede, die zeigen, dass wir mit der Notation herumgespielt haben, obwohl wir immer noch 0s und 1s verwenden.
Wenn wir jedoch zusätzlich die Namen der Werte austauschen, vertändern wir auch die Namen der beiden binären Operationen, jetzt Es gibt keine Spur von dem, was wir getan haben. Das Endprodukt ist völlig nicht von dem zu unterscheiden, was wir angefangen haben. Wir könnten feststellen, dass die Spalten für x ∧ y und x ∨ y In den Wahrheitstabellen hatten sich die Plätze verändert, aber dieser Schalter ist unerheblich.
Wenn Werte und Operationen so gepaart werden können, dass alles unverändert wichtig ist, wenn alle Paare gleichzeitig umgeschaltet werden, nennen wir die Mitglieder jedes Paares Dual zueinander. Somit sind 0 und 1 zwei und ∧ und ∨ doppelt. Das Dualitätsprinzip, auch genannt De Morgan Dualitätbehauptet, dass die Boolesche Algebra unverändert bleibt, wenn alle Dualpaare austauschten.
Eine Änderung, die wir als Teil dieses Austauschs nicht vornehmen mussten, bestand darin, zu ergänzen. Wir sagen, dass Komplement a ist Selbstdoppelte Betrieb. Die Identität oder Dozelloperation x (Kopieren Sie die Eingabe in die Ausgabe) ist ebenfalls selbstdoppel. Ein komplizierteres Beispiel für eine Selbstdoppeloperation ist (x ∧ y) ∨ (y ∧ z) ∨ (z ∧ x). Es gibt keine selbstdoppelte Binäroperation, die von beiden Argumenten abhängt. Eine Komposition von Selbstdarstellungsoperationen ist eine Selbstdoppeloperation. Zum Beispiel wenn f(x, y, z) = ((x ∧ y) ∨ (y ∧ z) ∨ (z ∧ x), dann f(f(x, y, z), x, t) ist eine Selbstdarstellung von vier Argumenten x, y, z, t.
Das Prinzip der Dualität kann aus a erklärt werden Gruppentheorie Perspektive durch die Tatsache, dass es genau vier Funktionen gibt, die Eins-zu-Eins-Zuordnungen sind (Automorphismen) des Satzes von Boolesche Polynome Zurück zu sich selbst: Die Identitätsfunktion, die Komplementfunktion, die Doppelfunktion und die kontraduelle Funktion (komplementiertes Dual). Diese vier Funktionen bilden a Gruppe unter Funktionszusammensetzung, isomorph zum Klein vier Gruppen, Schauspielkunst auf dem Satz von Booleschen Polynomen. Walter Gottschalk bemerkte, dass folglich ein angemessenerer Name für das Phänomen das wäre Prinzip (oder Quadrat) von Quaternalität.[23]
Diagrammatische Darstellungen
Venn Diagramme
A Venn-Diagramm[24] Kann als Darstellung eines Booleschen Betriebs unter Verwendung von schattierten überlappenden Regionen verwendet werden. Es gibt eine Region für jede Variable, die in den Beispielen hier alle kreisförmig ist. Das Innere und das Äußere der Region x entspricht jeweils den Werten 1 (true) und 0 (falsch) für die Variable x. Die Schattierung zeigt den Wert der Operation für jede Kombination von Regionen an, wobei Dunkelheit 1 und Licht 0 bezeichnet (einige Autoren verwenden die entgegengesetzte Konvention).
Die drei Venn -Diagramme in der folgenden Abbildung repräsentieren jeweils Konjunktion x∧y, Disjunktion x∨yund ergänzenx.

Für die Konjunktion ist der Bereich in beiden Kreisen beschattet, um dies anzuzeigen x∧y ist 1, wenn beide Variablen 1. Die anderen Regionen sind ungeschattet, um dies anzuzeigen x∧y ist 0 für die anderen drei Kombinationen.
Das zweite Diagramm repräsentiert eine Disjunktion x∨y durch Schattieren jene Regionen, die entweder in beiden Kreisen liegen. Das dritte Diagramm repräsentiert Komplement ¬x Durch Schattieren der Region nicht im Kreis.
Obwohl wir die Venn -Diagramme für die Konstanten 0 und 1 nicht gezeigt haben, sind sie trivial, da sie jeweils eine weiße Box und eine dunkle Box sind, weder ein Kreis enthält. Wir konnten jedoch einen Kreis für den Kreis setzen x In diesen Boxen würde in diesem Fall jeder eine Funktion eines Arguments bezeichnen, x, was den gleichen Wert unabhängig von zurückgibt x, eine konstante Funktion genannt. In Bezug auf ihre Ergebnisse sind Konstanten und ständige Funktionen nicht zu unterscheiden; Der Unterschied besteht darin, dass eine Konstante keine Argumente nimmt, genannt a nully oder Nullary Operation, während eine konstante Funktion ein Argument nimmt, das sie ignoriert und a ist einstellig Betrieb.
Venn -Diagramme sind hilfreich bei der Visualisierung von Gesetzen. Die Amtativitätsgesetze für ∧ und ∨ sind aus der Symmetrie der Diagramme zu ersichtlich: Eine binäre Operation, die nicht kommutativ war x und y hätte die Wirkung, das Diagramm horizontal widerzuspiegeln, und dann würde ein Versagen der Kommunikation als ein Symmetrieversagen auftreten.
Idempotenz von ∧ und ∨ können sich visualisieren, indem die beiden Kreise zusammengeschoben werden und feststellen, dass der schattierte Bereich dann sowohl für ∧ als auch für ∨ zum gesamten Kreis wird.
Das erste Absorptionsgesetz sehen, x∧ (x∨y) = xBeginnen Sie mit dem Diagramm in der Mitte für x∨y und beachten Sie, dass der Teil des schattierten Bereichs gemeinsam mit dem x Kreis ist der Ganze der x Kreis. Für das zweite Absorptionsgesetz, x∨ (x∧y) = xBeginnen Sie mit dem linken Diagramm für x∧y und beachten Sie, dass das Schattieren des gesamten Schattierens x Der Kreis führt nur zu der x Kreis schattiert, da sich die vorherige Schattierung in der befand x Kreis.
Das doppelte Negationsgesetz ist zu sehen, indem die Schattierung im dritten Diagramm für ¬ ergänzt wirdx, was die beschattet x Kreis.
Um das erste de Morgans Gesetz zu visualisieren (¬x) ∧ (¬y) = ¬ (x∨y) beginnen Sie mit dem mittleren Diagramm für x∨y und ergänzen seine Schattierung so, dass nur die Region außerhalb beiden Kreise schattiert ist, was die rechte Seite des Gesetzes beschreibt. Das Ergebnis ist das gleiche, als hätten wir diese Region beschattet x Kreis und außerhalb von y Kreis, d. H. Die Konjunktion ihrer Äußeren, was die linke Seite des Gesetzes beschreibt.
Das zweite Gesetz von De Morgan (¬x) ∨ (¬y) = ¬ (x∧y), funktioniert genauso wie die beiden Diagramme austauschten.
Das erste Komplementgesetz, x∧ ∧x = 0, sagt, dass das Innere und das Äußere der x Kreis haben keine Überlappung. Das zweite Komplementgesetz, x∨ ∨x = 1, sagt, dass alles entweder innerhalb oder außerhalb der ist x Kreis.
Digitale Logik -Tore
Die digitale Logik ist die Anwendung der Booleschen Algebra von 0 und 1 auf elektronische Hardware, die aus bestehen aus Logik -Tore mit Form a angeschlossen a Schaltplan. Jedes Tor implementiert einen booleschen Betrieb und wird schematisch durch eine Form dargestellt, die den Betrieb angibt. Die mit den Gates für die Konjunktion (und-Gates), Disjunktion (OR-Gates) und Komplement (Wechselrichter) verbundenen Formen sind wie folgt.[25]
Die Linien links von jedem Tor repräsentieren Eingangsdrähte oder Häfen. Der Wert des Eingangs wird durch eine Spannung der Leitung dargestellt. Für die sogenannte "aktive" Logik wird 0 durch eine Spannung nahe Null oder "Boden" dargestellt, während 1 durch eine Spannung in der Nähe der Versorgungsspannung dargestellt wird. Active-Tiefe kehrt dies um. Die Linie rechts von jedem Gate repräsentiert den Ausgangsanschluss, der normalerweise den gleichen Spannungskonventionen wie die Eingangsports folgt.
Das Komplement wird mit einem Wechselrichtertor implementiert. Das Dreieck bezeichnet die Operation, die die Eingabe einfach in die Ausgabe kopiert. Der kleine Kreis auf der Ausgabe bezeichnet die tatsächliche Inversion, die den Eingang ergänzt. Die Konvention, einen solchen Kreis auf einen beliebigen Anschluss zu setzen, bedeutet, dass das durch diesen Anschluss verlaufende Signal auf dem Weg durch einen Eingangs- oder Ausgangsanschluss ergänzt wird.
Das Dualitätsprinzip, oder De Morgans Gesetze, kann als behaupten, dass das Ergänzung aller drei Ports von An und Gate es in ein oder Gate und umgekehrt umgekehrt wird, wie in Abbildung 4 unten gezeigt. Durch die Ergänzung beider Anschlüsse eines Wechselrichters bleibt der Betrieb jedoch unverändert.
Im Allgemeinen kann man eine der acht Teilmengen der drei Häfen von einem und oder oder oder oder oder oder einem Gate ergänzen. Die daraus resultierenden sechzehn Möglichkeiten führen zu nur acht Booleschen Operationen, nämlich diejenigen mit einer ungeraden Anzahl von 1 in ihrem Wahrheitstisch. Es gibt acht, weil das "Odd-Out" entweder 0 oder 1 sein kann und in vier Positionen in der Wahrheitstabelle gehen kann. Es gibt sechzehn binäre booleale Operationen, dies muss acht Operationen mit einer geraden Anzahl von 1 in ihren Wahrheitstischen hinterlassen. Zwei davon sind die Konstanten 0 und 1 (als binäre Operationen, die beide Eingaben ignorieren); Vier sind die Operationen, die nicht trivial von genau einem ihrer beiden Eingaben abhängen, nämlich x, y, ¬xund ¬y; und die restlichen beiden sind x⊕y (Xor) und seine Ergänzung x≡y.
Boolesche Algebren
Der Begriff "Algebra" bezeichnet beide ein Subjekt, nämlich das Thema von Algebraund ein Objekt, nämlich eine algebraische Struktur. Während der Vorstehende das Thema Boolesche Algebra angesprochen hat, befasst sich dieser Abschnitt mit mathematischen Objekten, die als Boolesche Algebra bezeichnet werden und die in voller Allgemeinheit als Modell der booleschen Gesetze definiert sind. Wir beginnen mit einem Sonderfall des Begriffs, der ohne Bezug auf die Gesetze, nämlich konkrete Boolesche Algebren, definierbar und dann geben und dann geben die formale Definition des allgemeinen Begriffs.
Beton Boolesche Algebren
A Beton Boolesche Algebra oder Feld der Sätze ist eine nicht leere Reihe von Teilmengen eines bestimmten Satzes X unter den festgelegten Operationen von geschlossen Union, Überschneidung, und ergänzen relativ zu X.[5]
(Abgesehen davon historisch X selbst musste auch nicht leer sein, um die degenerierte oder ein Eleement-Boolesche Algebra auszuschließen. Dies ist die einzige Ausnahme der Regel, dass alle Booleschen Algebren die gleichen Gleichungen erfüllen, da die entartete Algebra jede Gleichung erfüllt. Dieser Ausschluss in Konflikt mit der bevorzugten rein Gleichungsdefinition von "booleschen Algebra", wobei es keine Möglichkeit gibt, die Ein-Elemente-Algebra mit nur Gleichungen auszuschließen-0 ≠ 1 zählt nicht eine negierte Gleichung. Daher erlauben moderne Autoren die degenerierte boolesche Algebra und lassen X leer sein.)
Beispiel 1. Das Leistungssatz 2X von X, bestehend aus allen Untergruppen von X. Hier X Kann ein Satz sein: leer, endlich, unendlich oder sogar unzähliger.
Beispiel 2. Das leere Set und X. Diese Zwei-Elemente-Algebra zeigt, dass eine booleale Algebra konkreter, selbst wenn sie aus Teilmengen eines unendlichen Satzes besteht. Es ist zu sehen, dass jedes Bereich der Untergruppen von Untergruppen von X muss das leere Set enthalten und X. Daher ist kein kleineres Beispiel möglich, außer der degenerierten Algebra, die durch Einnahme erhalten wird X leer sein, um das leere Set zu machen und X übereinstimmen.
Beispiel 3. Die Menge der endlichen und Cofinite Sätze von Ganzzahlen, bei denen ein Cofinite -Set nur endlich viele Ganzzahlen weglässt. Dies ist eindeutig im Rahmen des Komplements geschlossen und unter Union geschlossen, da die Vereinigung eines Cofinite -Sets mit jedem Satz Cofinite ist, während die Vereinigung von zwei endlichen Sets endlich ist. Die Kreuzung verhält sich wie die Vereinigung mit "endlich" und "Cofinite", die austauschte.
Beispiel 4. Betrachten Sie für ein weniger triviales Beispiel für den Punkt 2 A. Venn-Diagramm geformt von n geschlossene Kurven Partitionierung das Diagramm in 2n Regionen und lassen X Seien Sie der (unendliche) Satz aller Punkte in der Ebene nicht auf einer Kurve, sondern irgendwo im Diagramm. Das Innere jeder Region ist somit eine unendliche Untergruppe von Xund jeder Punkt in X ist genau in einer Region. Dann der Satz aller 22n Mögliche Gewerkschaften von Regionen (einschließlich des leeren Satzes, der als Vereinigung der leeren Regionen und der leeren Regionen und X als Vereinigung aller 2 erhaltenn Regionen) sind unter Gewerkschaft, Kreuzung und Ergänzung im Vergleich zu geschlossen X und bildet daher eine konkrete Boolesche Algebra. Auch hier haben wir endlich viele Teilmengen eines unendlichen Sets, das eine booleale Algebra bildet, wobei Beispiel 2 als Fall entstanden ist n = 0 ohne Kurven.
Untergruppen als Bitvektoren
Eine Teilmenge Y von X kann mit einem identifiziert werden Indizierte Familie von Bits mit Indexsatz X, mit dem Bit indexiert von x ∈ X 1 oder 0 sein, je nachdem, ob oder nicht x ∈ Y. (Dies ist der sogenannte charakteristische Funktion Der Begriff einer Untergruppe.) Zum Beispiel besteht ein 32-Bit-Computerwort aus 32 Bits, die durch den Satz {0,1,2, ..., 31} indiziert sind, wobei 0 und 31 die Bit mit niedriger bzw. hoher Ordnung indizieren. Für ein kleineres Beispiel, wenn X = {{ABC} wo a, b, c werden in dieser Reihenfolge von links nach rechts als Bitpositionen angesehen, die acht Untergruppen {}, {c}, {b}, {b,c}, {a}, {a,c}, {a,b}, und {a,b,c} von X kann mit den jeweiligen Bitvektoren 000, 001, 010, 011, 100, 101, 110 und 111 identifiziert werden Sequenzen von Bits, während die von der indizierten Real in dem Einheitsintervall [0,1] sind zu dicht gepackt, um herkömmlicherweise schreiben zu können, aber dennoch gut definierte indizierte Familien bilden (stellen Sie sich vor, Sie färben jeden Punkt des Intervalls [0,1] entweder Schwarz oder Weiß unabhängig; die schwarzen Punkte bilden dann eine beliebige Untergruppe von [0,1]).
Aus diesem Bit -Vektor -Sicht kann eine konkrete boolesche Algebra äquivalent definiert werden bitweise ∧, ∨ und ¬, wie in 1010∧0110 = 0010, 1010∨0110 = 1110 und ¬1010 = 0101, die Bitvektor -Realisierungen von Kreuzung, Vereinigung bzw. Komplement.
Die prototypische boolesche Algebra
Der Satz {0,1} und seine oben behandelten booleschen Operationen können als Sonderfall von Bitvektoren mit Länge eins verstanden werden, die durch die Identifizierung von Bitvektoren mit Teilmengen auch als die beiden Teilmengen einer Ein-Elemente verstanden werden können einstellen. Wir nennen das das Prototypisch Boolesche Algebra, gerechtfertigt durch die folgende Beobachtung.
- Die Gesetze, die von allen nicht genannten konkreten Booleschen Algebren erfüllt sind, übereinstimmen mit denen, die von der prototypischen Booleschen Algebra zufrieden sind.
Diese Beobachtung ist leicht wie folgt zu beweisen. Sicherlich wird jedes Gesetz, das von allen konkreten Booleschen Algebren erfüllt wird, von der prototypischen, da es konkret ist. Umgekehrt muss jedes Gesetz, das für eine konkrete boolesche Algebra fehlschlägt, in einer bestimmten Bitposition gescheitert sein. In diesem Fall ist diese Position selbst ein Ein-Bit-Gegenbeispiel auf dieses Gesetz. Nicht -Finanzierung sorgt für die Existenz von mindestens einer Bitposition, da es nur einen leeren Bitvektor gibt.
Das endgültige Ziel des nächsten Abschnitts kann als "Beton" aus der obigen Beobachtung verstanden werden. Wir werden dieses Ziel jedoch über die überraschend stärkere Beobachtung erreichen, dass alle Booleschen Algebren bis zum Isomorphismus konkret sind.
Boolesche Algebren: Die Definition
Die booleschen Algebren, die wir bisher gesehen haben, waren alle konkret, bestehend aus Bitvektoren oder entsprechend aus Teilmengen einiger Set. Eine solche Boolesche Algebra besteht aus einem Satz und Operationen an diesem Satz, der sein kann gezeigt die Gesetze der Booleschen Algebra zu befriedigen.
Anstatt zu zeigen, dass die booleschen Gesetze erfüllt sind, können wir stattdessen einen Satz postulieren X, zwei binäre Operationen auf Xund eine unäre Operation und benötigen dass diese Operationen die Gesetze der Booleschen Algebra erfüllen. Die Elemente von X Müssen Sie keine Bitvektoren oder Teilmengen sein, können aber überhaupt etwas sein. Dies führt zum allgemeinen abstrakt Definition.
- A boolsche Algebra ist ein Set mit binären Operationen ∧ und ∨ und ein unärer Betrieb - danach erfüllen die booleschen Gesetze.[26]
Für die Zwecke dieser Definition ist es irrelevant, wie die Operationen die Gesetze erfüllen, sei es nach Fiat oder Beweis. Alle konkreten Booleschen Algebren erfüllen die Gesetze (nach Beweis und nicht nach Fiat), woher jede konkrete boolesche Algebra eine boolesche Algebra ist nach unseren Definitionen. Diese axiomatische Definition einer Booleschen Algebra als Set und bestimmte Operationen erfüllen bestimmte Gesetze oder Axiome von fiat ist völlig analog zu den abstrakten Definitionen von Gruppe, Ring, aufstellen usw. charakteristisch für Moderne oder Zusammenfassung Algebra.
Bei einer vollständigen Axiomatisierung der Booleschen Algebra wie der Axiome für a ergänzt Verteilungsgitter, eine ausreichende Bedingung für eine algebraische Struktur Diese Art, alle booleschen Gesetze zu befriedigen, ist, dass es nur diese Axiome befriedigt. Das Folgende ist daher eine äquivalente Definition.
- A boolsche Algebra ist ein ergänztes Verteilungsgitter.
Der Abschnitt auf Axiomatisierung Listet andere Axiomatisierungen auf, von denen jede die Grundlage für eine äquivalente Definition berücksichtigt werden kann.
Darstellbare boolesche Algebren
Obwohl jede booleale Algebra konkrete Algebra ist, muss nicht jede Boolesche Algebra konkret sein. Lassen n sei a quadratfrei Positive Ganzzahl, eine nicht durch das Quadrat einer Ganzzahl teilbar, zum Beispiel 30, aber nicht 12. Die Operationen von größter gemeinsamer Teiler, kleinstes gemeinsames Vielfaches, und Aufteilung in n (das heißt ¬x = n/x), kann gezeigt werden, dass sie alle booleschen Gesetze befriedigen, wenn ihre Argumente über die positiven Divisoren von reichen n. Daher bilden diese Divisoren eine Boolesche Algebra. Diese Divisoren sind keine Teilmengen eines Satzes n Eine Boolesche Algebra, die nach unseren Definitionen nicht konkret ist.
Wenn wir jedoch vertreten Jeder Divisor von n Nach dem Satz seiner Hauptfaktoren stellen wir fest, dass diese nicht konkrete Boolesche Algebra ist isomorph an die konkrete boolesche Algebra bestehend aus allen Sätzen von Primfaktoren von n, mit der Vereinigung, die dem am wenigsten gemeinsamen Mehrfachvergänglich n. Dieses Beispiel ist also, obwohl sie technisch nicht konkret sind, zumindest "moralisch" konkret über diese Darstellung, genannt Isomorphismus. Dieses Beispiel ist eine Instanz des folgenden Begriffs.
- Eine Boolesche Algebra heißt darstellbar Wenn es isomorph für eine booleale Algebra von Beton ist.
Die offensichtliche nächste Frage wird wie folgt positiv beantwortet.
- Jede Boolesche Algebra ist dargestellt.
Das heißt, bis zu Isomorphismus sind abstrakte und konkrete Boolesche Algebren dasselbe. Dieses recht nicht triviale Ergebnis hängt von der ab Booleschen Prime Ideal Theorem, ein Auswahlprinzip, etwas schwächer als das Axiom der Wahlund wird im Artikel ausführlicher behandelt Stone's Repräsentationstheorem für Boolesche Algebren. Diese starke Beziehung impliziert ein schwächeres Ergebnis, das die Beobachtung im vorherigen Unterabschnitt zu der folgenden einfachen Folge der Repräsentierbarkeit stärkt.
- Die Gesetze, die von allen booleschen Algebren erfüllt sind, übereinstimmen mit denen, die von der prototypischen booleschen Algebra zufrieden sind.
Es ist schwächer in dem Sinne, dass es nicht von sich selbst die Repräsentierbarkeit impliziert. Boolesche Algebren sind hier etwas Besonderes, zum Beispiel a Beziehungalgebra ist eine boolesche Algebra mit zusätzlicher Struktur, aber es ist nicht der Fall, dass jede Beziehungalgebra in dem Sinne dargestellt ist, das für die Beziehungsalgebren geeignet ist.
Axiomatisierende Boolesche Algebra
Die obige Definition einer abstrakten booleschen Algebra als Set und Operationen, die die "booleschen Gesetze" erfüllen, wirft die Frage auf. Was sind diese Gesetze? Eine einfache Antwort lautet "alle booleschen Gesetze", die als alle Gleichungen definiert werden können, die für die Boolesche Algebra von 0 und 1 gelten. Da es unendlich viele solcher Gesetze gibt, ist dies in der Praxis keine schrecklich zufriedenstellende Antwort Nächste Frage: Gib es aus, nur endlich viele Gesetze zum Halten zu verlangen?
Bei Booleschen Algebren lautet die Antwort Ja. Insbesondere die endlich viele Gleichungen, die wir oben aufgeführt haben, reicht aus. Wir sagen, dass die Boolesche Algebra ist endlich axiomatisierbar oder endlich basiert.
Kann diese Liste noch kürzer gemacht werden? Nochmals ist die Antwort ja. Zunächst werden einige der oben genannten Gesetze von einigen anderen impliziert. Eine ausreichende Teilmenge der oben genannten Gesetze besteht aus den Paaren der Assoziativität, der Nutzung und der Absorptionsgesetze, der Verbreitung von ∧ gegenüber ∨ (oder dem anderen Verteilungsgesetz - einer ausreicht) und den beiden Komplementgesetzen. In der Tat ist dies die traditionelle Axiomatisierung von booleschen Algebra als a ergänzt Verteilungsgitter.
Durch die Einführung zusätzlicher Gesetze, die nicht oben aufgeführt sind, ist es möglich, die Liste noch weiter zu verkürzen. Zum Beispiel mit der vertikalen Balken, die die darstellt Sheffer Schlaganfall Betrieb, das einzelne Axiom reicht aus, um die Boolesche Algebra vollständig zu axiomatisieren. Es ist auch möglich, längere einzelne Axiome mit konventionelleren Operationen zu finden. sehen Minimale Axiome für Boolesche Algebra.[27]
Aussagelogik
Aussagelogik ist ein logisches System Das ist eng mit der Booleschen Algebra verbunden.[5] Viele syntaktische Konzepte von booleschen Algebra übertragen auf die Aussagenlogik mit nur geringfügigen Veränderungen in der Notation und Terminologie, während die Semantik der Aussagenlogik über boolesche Algebras so definiert wird .
Syntaktisch entspricht jeder booleanische Begriff a Aussageformel von Aussagen Logik. In dieser Übersetzung zwischen Booleschen Algebra und Propositionslogik boolesche Variablen x, y... werden Aussagenvariablen (oder Atome) P, q, ..., Boolesche Begriffe wie z. x∨y Propositionale Formeln werden P∨Q, 0 wird FALSCH oder ⊥und 1 wird Stimmt oder T. Es ist zweckmäßig, wenn es sich auf generische Aussagen bezieht, griechische Buchstaben φ, ψ, ... als Metavariablen zu verwenden (Variablen außerhalb der Sprache des Aussagens, die beim Sprechen verwendet werden um Aussagekalkül) zum Zeugnis von Aussagen.
Die Semantik der Aussagelogik beruht auf Wahrheitsaufträge. Die wesentliche Idee einer Wahrheitszuweisung ist, dass die shoperzigen Variablen Elementen einer festen booleschen Algebra und dann den Elementen zugeordnet sind, und dann der Wahrheitswert einer Aussageformel unter Verwendung dieser Buchstaben ist das Element der Booleschen Algebra, das durch Berechnung des Werts des Booleschen Terms, der der Formel entspricht, erhalten wird. In der klassischen Semantik wird nur die zweielemente Boolesche Algebra verwendet, während in Boolesche Semantik Es werden willkürliche Boolesche Algebren berücksichtigt. EIN Tautologie ist eine aussagekräftige Formel, die den Wahrheitswert zugewiesen wird 1 durch jede Wahrheitszuweisung seiner aussagekräftigen Variablen zu einer willkürlichen booleschen Algebra (oder entsprechend jede Wahrheitsaufgabe zu den beiden Elemente booleschen Algebra).
Diese Semantik ermöglicht eine Übersetzung zwischen Tautologien der Sätze Logik und Gleichungssätze der Booleschen Algebra. Jede Tautologie φ der Aussagelogik kann als boolesche Gleichung φ = 1 ausgedrückt werden, was ein Satz der Booleschen Algebra ist. Umgekehrt entspricht jeder Theorem φ = ψ der booleschen Algebra den Tautologien (φ∨ ψ) ∧ (¬ Hand∨∨) und (φ∧∧) ∨ (¬ Hand∧ ψ). Wenn → in der Sprache liegt, können diese letzten Tautologien auch als (φ → ψ) ∧ (ψ → φ) oder als zwei getrennte Theoreme φ → ψ und → → φ geschrieben werden; Wenn ≡ verfügbar ist, kann die einzelne Tautologie φ ≡ ψ verwendet werden.
Anwendungen
Eine motivierende Anwendung von Propositionalkalkül ist die Analyse von Aussagen und deduktiven Argumenten in der natürlichen Sprache.[28] Während der Satz "wenn x = 3 Dann x+1 = 4 "hängt von den Bedeutungen von Symbolen wie + und 1 ab, dem Satz", wenn x = 3 Dann x = 3 "tut nicht; es ist nur aufgrund seiner Struktur wahr und bleibt wahr, ob"x = 3 "wird durch" ersetzt "x = 4 "oder" Der Mond besteht aus grünem Käse. "Die generische oder abstrakte Form dieser Tautologie lautet" if ", wenn P dann P", oder in der Sprache der Booleschen Algebra", "P → P".
Ersetzen P durch x = 3 oder ein anderer Vorschlag heißt Instanziierung von P durch diesen Satz. Das Ergebnis der Instanziierung P in einem abstrakten Satz wird als eine bezeichnet Beispiel von dem Vorschlag. Daher "x = 3 → x = 3 "ist eine Tautologie, weil es eine Instanz der abstrakten Tautologie ist"P → P". Alle Vorkommen der instanziierten Variablen müssen mit demselben Vorschlag instanziiert werden, um einen solchen Unsinn zu vermeiden wie P → x = 3 oder x = 3 → x = 4.
Die Aussagekalkül beschränkt die Aufmerksamkeit auf abstrakte Aussagen, die aus shouseen Variablen unter Verwendung von Booleschen Operationen aufgebaut sind. Die Instanziierung ist im Aussagen Calculus immer noch möglich, jedoch nur durch Instanziierung von Sätzenvariablen durch abstrakte Aussagen, wie z. B. Instanziierung Q durch Q→P in P→ (Q→P) Um die Instanz zu ergeben P→ (((Q→P) →P).
(Die Verfügbarkeit der Instanziierung als Teil der Maschinerie des Aussagenkalkulus vermeidet die Notwendigkeit von Metavariablen in der Sprache des Aussagenkalkuls, da gewöhnliche Aussagenvariablen innerhalb der Sprache als bezeichnende Aussagen bezeichnet werden können. Nicht Teil der Sprache des Aussagenkalkulus zu sein, sondern Teil derselben Sprache, um darüber zu sprechen, dass dieser Satz geschrieben ist, in dem wir in der Lage sein müssen, Propositionsvariablen und deren Instantien als unterschiedliche syntaktische Entitäten zu unterscheiden.)
Deduktive Systeme für die Aussagenlogik
Eine Axiomatisierung des Subositionellen Kalküls ist eine Reihe von Tautologien, die genannt werden Axiome und eine oder mehrere Inferenzregeln für die Herstellung neuer Tautologien aus alter. EIN nachweisen in einem Axiomsystem A ist eine endliche nicht leere Folge von Sätzen, von denen jeweils entweder ein Beispiel eines Axioms von ist A oder folgt durch eine Regel von A aus Vorschlägen, die früher im Beweis erscheinen (wodurch kreisförmige Argumentation abgelehnt wird). Der letzte Satz ist der Satz nach dem Beweis bewiesen. Jedes nicht leere Anfangssegment eines Beweises ist selbst ein Beweis, woher jeder Satz in einem Beweis selbst ein Theorem ist. Eine Axiomatisierung ist Klang Wenn jeder Satz eine Tautologie ist, und Komplett Wenn jede Tautologie ein Satz ist.[29]
Sequent Calculus
Aussagenkalkül wird üblicherweise als organisiert Hilbert -System, deren Operationen nur die von Booleschen Algebra sind und deren Theoreme Boolesche Tautologien sind, diese booleschen Begriffe entsprechen der Booleschen Konstante 1. Eine andere Form ist Sequent Calculus, mit zwei Arten, Aussagen wie bei gewöhnlichen Propositionalen Kalkül und Paarlisten von Sätzen genannt Fortsetzungen, wie zum Beispiel A∨B, A∧C, ... A, B→C, .... Die beiden Hälften einer Sequenz werden als Vorgänger bzw. der Sukdent bezeichnet. Die übliche metavariable, die einen Vorgänger oder Teil davon bezeichnet, ist γ und für ein ungsiges δ; somit γ,A Δ würde einen Sequenten bezeichnen, dessen Sukdente eine Liste δ ist und deren Antezedenz eine Liste γ mit einem zusätzlichen Satz ist A danach angehängt. Der Vorgänger wird als Konjunktion seiner Aussagen, das Sukedent als Disjunktion seiner Aussagen und die Sequent selbst als die interpretiert mit sich bringen des Sukdenten durch den Vorgänger.
Die Entstehung unterscheidet sich von der Implikation, während letzteres binär ist Betrieb Das gibt einen Wert in einer booleschen Algebra zurück, erstere ist eine binäre Beziehung was entweder gilt oder nicht. In diesem Sinne ist die Entnahme eine extern Form der Implikation, was auch außerhalb der Booleschen Algebra bedeutet, die an den Leser der Sequent nachdenkt, ebenso wie externe und interpretierende und verglichen Vorgänge und Sukdenten in einigen booleschen Algebra. Die natürliche Interpretation von ist in der teilweisen Reihenfolge der booleschen Algebra, die durch definiert durch ist x ≤ y gerade als x∨y = y. Diese Fähigkeit, externe Implikation zu mischen und interne Implikation → In der einen Logik gehört zu den wesentlichen Unterschieden zwischen Sequent Calculus und Propositionalrechnung.[30]
Anwendungen
Boolesche Algebra als Kalkül von zwei Werten ist für Computerschaltungen, Computerprogrammierung und mathematische Logik von grundlegender Bedeutung und wird auch in anderen Bereichen der Mathematik wie festgelegter Theorie und Statistiken verwendet.[5]
Computers
Im frühen 20. Jahrhundert erkannten mehrere Elektroingenieure intuitiv, dass die Boolesche Algebra dem Verhalten bestimmter Arten von elektrischen Schaltungen analog war. Claude Shannon Formal bewies, dass ein solches Verhalten in seiner Masterarbeit von 1937 logisch gleichwertig mit booleschen Algebra war. Eine symbolische Analyse von Relais und Schaltkreisen.
Heute alle modernen allgemeinen Zwecke Computers Führen Sie ihre Funktionen mit einer zweiwertigen Booleschen Logik aus; Das heißt, ihre elektrischen Schaltkreise sind eine physikalische Manifestation der zweiwertigen Booleschen Logik. Sie erreichen dies auf verschiedene Weise: als Spannungen auf Drähten in Hochgeschwindigkeitsschaltungen und kapazitiven Speichergeräten als Orientierungen von a magnetische Domäne in ferromagnetischen Speichergeräten wie Löcher herein geschlagene Karten oder Papier Klebeband, usw. (Einige frühe Computer verwendeten Dezimalkreise oder Mechanismen anstelle von zweiwertigen Logikkreisen.)
Natürlich ist es möglich, mehr als zwei Symbole in einem bestimmten Medium zu codieren. Zum Beispiel kann man jeweils 0, 1, 2 und 3 Volt verwenden, um ein Viersymbol-Alphabet auf einem Draht oder Löcher unterschiedlicher Größen in einer gestanzten Karte zu codieren. In der Praxis verbinden sich die engen Einschränkungen von hoher Geschwindigkeit, kleiner Größe und geringer Leistung, um Rauschen zu einem wichtigen Faktor zu machen. Dies macht es schwierig, zwischen Symbolen zu unterscheiden, wenn es mehrere mögliche Symbole gibt, die an einer einzelnen Stelle auftreten können. Anstatt zu versuchen, zwischen vier Spannungen an einem Draht zu unterscheiden, haben sich digitale Designer mit zwei Spannungen pro Draht entschieden, hoch und niedrig.
Computer verwenden aus den oben genannten Gründen zweiwertige Boolesche Schaltungen. Die häufigsten Computerarchitekturen verwenden geordnete Sequenzen von Booleschen Werten, die als Bits bezeichnet werden, von 32 oder 64 Werten, z. 011010001101011001010101001011. Beim Programmieren in Maschinensprache, Montagespracheund bestimmte andere ProgrammiersprachenProgrammierer arbeiten mit der digitalen Struktur der niedrigen Ebene der Datenregister. Diese Register arbeiten mit Spannungen, wobei Null -Volt Boolesche 0 darstellt, und eine Referenzspannung (häufig +5 V, +3,3 V, +1,8 V) boolean 1. Solche Sprachen unterstützen sowohl numerische Operationen als auch logische Operationen. In diesem Zusammenhang bedeutet "numerisch", dass der Computer Sequenzen von Bits als behandelt Binärzahlen (Basis zwei Zahlen) und führt arithmetische Operationen wie hinzufügen, subtrahieren, multiplizieren oder teilen. "Logisch" bezieht sich auf die booleschen logischen Operationen von Disjunktion, Konjunktion und Negation zwischen zwei Sequenzen von Bits, bei denen jedes Bit in einer Sequenz einfach mit seinem Gegenstück in der anderen Sequenz verglichen wird. Programmierer haben daher die Möglichkeit, die Regeln der numerischen Algebra- oder Booleschen Algebra nach Bedarf zu arbeiten. Ein zentrales Differenzierungsmerkmal zwischen diesen Operationsfamilien ist die Existenz des tragen Betrieb in der ersten, aber nicht im zweiten.
Zweiwertige Logik
Andere Bereiche, in denen zwei Werte eine gute Wahl sind, sind Gesetz und Mathematik. Im alltäglichen entspannten Gespräch sind nuancierte oder komplexe Antworten wie "vielleicht" oder "nur am Wochenende" akzeptabel. In fokussierteren Situationen wie einem Gerichtshof oder theorembasierten Mathematik gilt es jedoch als vorteilhaft, Fragen zu formulieren, um eine einfache Antwort zuzugeben, ist der Angeklagte schuldig oder nicht schuldig, der Vorschlag wahr oder falsch ist - und um eine andere Antwort zu vermeiden. Wie viel von einer StraitJacket dies in der Praxis für den Befragten beweisen könnte, ist das Prinzip der einfachen Ja-no-Frage zu einem zentralen Merkmal der gerichtlichen und mathematischen Logik geworden, wodurch die zweiwertige Logik, die Organisation und Studie selbst verdient, selbst verdient.
Ein zentrales Konzept der festgelegten Theorie ist die Mitgliedschaft. Jetzt kann eine Organisation mehrere Mitgliedsgrade wie Anfänger, Assoziierter und volles. Bei Sätzen ist jedoch ein Element entweder in oder out. Die Kandidaten für die Mitgliedschaft in einem Satz funktionieren genau wie die Drähte in einem digitalen Computer: Jeder Kandidat ist entweder Mitglied oder ein Nichtmitglied, genau wie jeder Draht entweder hoch oder niedrig ist.
Algebra ist ein grundlegendes Instrument in jedem Bereich, der für die mathematische Behandlung zugeordnet werden kann. Diese Überlegungen verbinden die Algebra von zwei Werten von grundlegender Bedeutung für Computerhardware, mathematische Logik und festgelegte Theorie.
Zweiwertige Logik kann erweitert werden auf Mehrwertige LogikBemerkenswerterweise durch Ersetzen der booleschen Domäne {0, 1} durch das Einheitsintervall [0,1] kann in diesem Fall nur die Werte 0 oder 1 eingenommen werden, jeder Wert zwischen und einschließlich 0 und 1 kann angenommen werden. Algebraisch wird die Negation (nicht) durch 1 - ersetztx, Konjunktion (und) wird durch Multiplikation (Multiplikation () ersetzt () und disjunktion (oder) wird durch definiert über De Morgans Gesetz. Interpretieren dieser Werte als logisch Wahrheitswerte ergibt eine mehrwertige Logik, die die Grundlage für die Grundlage für Fuzzy Logic und Probabilistische Logik. In diesen Interpretationen wird ein Wert als "Grad" der Wahrheit interpretiert - inwieweit ein Satz wahr ist oder die Wahrscheinlichkeit, dass der Satz wahr ist.
Boolesche Operationen
Der ursprüngliche Antrag auf Boolesche Operationen war Mathematische Logik, wo es die wahren oder falschen Wahrheitswerte einzelner Formeln kombiniert.
Natürliche Sprache
Natürliche Sprachen wie Englisch haben Worte für mehrere Boolesche Operationen, insbesondere die Konjunktion (und), disjunktion (oder), Negation (nicht) und Implikation (impliziert). Aber nicht ist ein Synonym mit und nicht. Wenn man verwendet, um situative Behauptungen wie "Der Block steht auf dem Tisch" und "Katzen trinken Milch", die naiv entweder wahr oder falsch sind, sind die Bedeutungen davon Logische Verbindungen Habe oft die Bedeutung ihrer logischen Gegenstücke. Mit Verhaltensbeschreibungen wie "Jim ging durch die Tür", bemerkt man jedoch Unterschiede wie das Versagen der Kommunikation, beispielsweise die Konjunktion von "Jim öffnete die Tür" mit "Jim Gehen durch die Tür" in dieser Reihenfolge ist nicht gleichwertig ihrer Konjunktion in der anderen Reihenfolge, da seitdem und normalerweise bedeutet und dann in solchen Fällen. Fragen können ähnlich sein: Die Reihenfolge "Ist der Himmelblau und warum ist der Himmelblau?" macht mehr Sinn als die umgekehrte Reihenfolge. Konjunktivbefehle über Verhalten sind wie in Verhaltensbehelfe wie in sich anziehen und zur Schule gehen. Disjunktive Befehle wie Liebe mich oder verlasse mich oder Fisch oder Köder schneiden Tendenziell asymmetrisch über die Implikation, dass eine Alternative weniger vorzuziehen ist. Verbundene Substantive wie Tee und Milch Beschreiben Sie die Aggregation im Allgemeinen wie bei der festgelegten Union, während Tee oder Milch ist eine Wahl. Der Kontext kann diese Sinne jedoch wie in umkehren Ihre Auswahl sind Kaffee und Tee das bedeutet normalerweise dasselbe wie Ihre Auswahl sind Kaffee oder Tee (Alternativen). Die doppelte Negation wie in "Ich mag keine Milch nicht" bedeutet selten buchstäblich "Ich mag Milch", sondern vermittelt eine Art Absicherung, als ob es eine dritte Möglichkeit gibt. "Nicht p" kann lose als "sicher p" interpretiert werden, und obwohl P impliziert notwendigerweise "nicht nicht P"Das Gegenteil ist auf Englisch verdächtig, genau wie bei intuitionistische Logik. Angesichts der äußerst eigenwilligen Verwendung von Konjunktionen in natürlichen Sprachen kann die Boolesche Algebra nicht als zuverlässiger Rahmen für die Interpretation angesehen werden.
Digitale Logik
Boolesche Operationen werden in verwendet Digitale Logik Um die auf einzelnen Drähten getragenen Bits zu kombinieren, wodurch sie über {0,1} interpretiert werden. Wenn ein Vektor von n Identische binäre Tore werden verwendet, um jeweils zwei Bitvektoren zu kombinieren n Bits, die einzelnen Bitoperationen können gemeinsam als einzelne Operation für Werte von a verstanden werden boolsche Algebra mit 2n Elemente.
Naive Set -Theorie
Naive Set -Theorie Interpret X. Wie wir bereits gesehen haben, entspricht dieses Verhalten genau parallel zu den koordinatenweise Kombinationen von Bitvektoren, wobei die Vereinigung von zwei Sätzen der Disjunktion zweier Bitvektoren usw. entspricht.
Grafikkarten
Die 256-Element-kostenlose Boolesche Algebra auf drei Generatoren wird in eingesetzt Computeranzeigen bezogen auf Rastergrafiken, welche Verwendung Bit Blit ganze Regionen zu manipulieren, die aus bestehen aus Pixel, um sich auf boolesche Operationen zu verlassen, um anzugeben, wie die Quellregion mit dem Ziel kombiniert werden sollte, normalerweise mit Hilfe einer dritten Region namens The Maske. Modern Grafikkarten bieten alle 223= 256 ternäre Operationen für diesen Zweck, wobei die Wahl des Betriebs ein Ein-Bit-Parameter (8-Bit) ist. Die Konstanten src = 0xaa oder 10101010, dst = 0xcc oder 11001100 und msk = 0xf0 oder 11110000 ermöglichen booleschen Vorgänge wie (src^dst) & msk (dh Xor der Quelle und dem Ziel und dann und das Ergebnis mit der Maske) zu geschrieben werden Direkt als Konstante, die ein Byte bezeichnet auf einheitliche Weise, die bemerkenswert wenig Hardware erfordert und die Zeit völlig unabhängig von der Komplexität des Ausdrucks braucht.
Modellierung und CAD
Solide Modellierung Systeme für Computer unterstütztes Design Bieten Sie eine Vielzahl von Methoden zum Aufbau von Objekten aus anderen Objekten an, und die Kombination durch Boolesche Operationen ist einer davon. In dieser Methode wird der Raum, in dem Objekte existieren S von Voxel (Das dreidimensionale Analogon der Pixel in zweidimensionalen Grafiken) und Formen werden als Teilmengen von definiert S, sodass Objekte als Sets über Union, Kreuzung usw. kombiniert werden können Eine weitere Verwendung ist die Skulption als Entfernung von Material verstanden: alle Mahlen, Mahlen, Routing oder Bohrbetrieb, die mit physischen Maschinen auf physischen Materialien durchgeführt werden können x∧ ¬y oder x-y, was in der festgelegten Theorie Unterschied ist, entfernen Sie die Elemente von y von denen von x. Daher wird zwei Formen eine zu bearbeitende und das andere das zu entfernende Material, das Ergebnis der Bearbeitung des ersteren, um das letztere zu entfernen, einfach als ein fester Unterschied beschrieben.
Boolesche Suchanfragen
Suchmaschinenabfragen verwenden auch Boolesche Logik. Für diese Anwendung kann jede Webseite im Internet als "Element" eines "Sets" angesehen werden. Die folgenden Beispiele verwenden eine Syntax, die von unterstützt wird Google.[31]
- Doppelquoten werden verwendet, um mit Whitespace getrennte Wörter zu einem einzigen Suchbegriff zu kombinieren.[32]
- Mit WhiteSpace werden logisch angegeben und, da es sich um den Standardbetreiber für den Beitrittssuchbegriff handelt:
"Suchbegriff 1" "Suchbegriff 2"
- Das oder Schlüsselwort wird für logisch verwendet oder:
"Suchbegriff 1" oder "Suchbegriff 2"
- Ein vorangestelltes Minuszeichen wird für logisch nicht verwendet: nicht:
"Suchbegriff 1" - "Suchbegriff 2"
Siehe auch
Verweise
- ^ Boole, George (2011-07-28). Die mathematische Analyse der Logik eines Aufsatzes auf einen Kalkül deduktiver Argumentation.
- ^ Boole, George (2003) [1854]. Eine Untersuchung der Denkgesetze. Prometheus -Bücher. ISBN 978-1-59102-089-9.
- ^ "Der Name Boolean Algebra (oder Boolean 'Algebren) für den von Boole stammenden Kalkül, der von Schröder erweitert und von Whitehead perfektioniert wurde, scheint 1913 von Sheffer zuerst vorgeschlagen worden zu sein." E. V. Huntington, "Neue Sätze unabhängiger Postulate für die Algebra der Logik unter besonderer Berücksichtigung von Whitehead und Russell's Principia Mathematica", inTrans. Amer. Mathematik. SOC. 35 (1933), 274-304; Fußnote, Seite 278.
- ^ Peirce, Charles S. (1931). Gesammelte Papiere. Vol. 3. Harvard University Press. p. 13. ISBN 978-0-674-13801-8.
- ^ a b c d e f Givant, Steven; Halmos, Paul (2009). Einführung in Boolesche Algebren. Bachelortexte in Mathematik, Springer. ISBN 978-0-387-40293-2.
- ^ Lenzend, wolfgang. "Leibniz: Logik". Internet -Enzyklopädie der Philosophie.
- ^ a b c J. Michael Dunn; Gary M. Hardregel (2001). Algebraische Methoden in der philosophischen Logik. Oxford University Press uns. p. 2. ISBN 978-0-19-853192-0.
- ^ Weisstein, Eric W. "Boolsche Algebra". mathworld.wolfram.com. Abgerufen 2020-09-02.
- ^ Normaner Balabaner; Bradley Carlson (2001). Prinzipien für digitale Logikdesign. John Wiley. S. 39–40. ISBN 978-0-471-29351-4., Online -Beispiel
- ^ Rajaraman & Radhakrishnan (2008-03-01). Einführung in das digitale Computerdesign. PHI -Lernen Pvt. Ltd. p. 65. ISBN 978-81-203-3409-0.
- ^ John A. Camara (2010). Elektro- und Elektronikreferenzhandbuch für die Elektro- und Computer -PE -Prüfung. www.ppi2pass.com. p. 41. ISBN 978-1-59126-166-7.
- ^ Shin-hichi Minato, Saburo Muroga (2007). "Binäre Entscheidungsdiagramme". In Wai-Kai Chen (Hrsg.). Das VLSI -Handbuch (2. Aufl.). CRC Press. ISBN 978-0-8493-4199-1. Kapitel 29.
- ^ Alan Parkes (2002). Einführung in Sprachen, Maschinen und Logik: berechnete Sprachen, abstrakte Maschinen und formale Logik. Springer. p. 276. ISBN 978-1-85233-464-2.
- ^ Jon Barwise; John Etchemendy; Gerard Allwein; Dave Barker-Plummer; Albert Liu (1999). Sprache, Beweis und Logik. CSLI -Veröffentlichungen. ISBN 978-1-889119-08-3.
- ^ Ben Goertzel (1994). Chaotische Logik: Sprache, Denken und Realität aus der Perspektive der komplexen Systemwissenschaft. Springer. p. 48. ISBN 978-0-306-44690-0.
- ^ Halmos, Paul (1963). Vorträge über Boolesche Algebren. Van Nostrand.
- ^ Bacon, Jason W. (2011). "Informatik 315 Vorlesungsnotizen". Abgerufen 1. Oktober, 2021.
- ^ O'Regan, Gerard (2008). Eine kurze Geschichte des Computers. Springer. p. 33. ISBN 978-1-84800-083-4.
- ^ "Elemente der Booleschen Algebra". www.ee.surrey.ac.uk. Abgerufen 2020-09-02.
- ^ a b c Zum Bitgewise Operations in ComputerprogrammierungEs kann hilfreich sein, 1 als 0xffff zu lesen. Alle Bits der Binärzahl müssen 1 betragen.
- ^ McGee, Vann, Sential Calculus Revisited: Boolesche Algebra (PDF)
- ^ * Goodstein, R. L. (2012), "Kapitel 4: Satzlogik", Boolsche Algebra, Courier Dover Publications, ISBN 9780486154978
- ^ Steven R. Givant; Paul Richard Halmos (2009). Einführung in Boolesche Algebren. Springer. S. 21–22. ISBN 978-0-387-40293-2.
- ^ Venn, John (Juli 1880). "I. auf der diagrammatischen und mechanischen Darstellung von Aussagen und Argumentationen" (PDF). The London, Edinburgh und Dublin Philosophical Magazine und Journal of Science. 5. 10 (59): 1–18. doi:10.1080/14786448008626877. Archiviert (PDF) vom Original am 2017-05-16. [1] [2]
- ^ Shannon, Claude (1949). "Die Synthese von Zwei-terminalen Schaltschaltkreisen". Glockensystem Technisches Journal. 28: 59–98. doi:10.1002/j.1538-7305.1949.tb03624.x.
- ^ Koppelberg, Sabine (1989). "Allgemeine Theorie der Booleschen Algebren". Handbuch von Boolean Algebras, Vol. 1 (Hrsg. J. Donald Monk mit Robert Bonnet). Amsterdam: North Holland. ISBN 978-0-444-70261-6.
- ^ McCune, William; Veroff, Robert; Fitelson, Branden; Harris, Kenneth; Feist, Andrew; Wos, Larry (2002), "kurze einzelne Axiome für Boolesche Algebra", Journal of Authoricated Argumenting, 29 (1): 1–16, doi:10.1023/a: 1020542009983, HERR 1940227, S2CID 207582048
- ^ Allwood, Jens; Andersson, Gunnar-Gunnar; Andersson, Lars-Gunnar; Dahl, Osten (1977-09-15). Logik in der Linguistik. Cambridge University Press. ISBN 978-0-521-29174-3.
- ^ Hausman, Alan; Howard Kahane; Paul Tidman (2010) [2007]. Logik und Philosophie: Eine moderne Einführung. Wadsworth Cengage Lernen. ISBN 978-0-495-60158-6.
- ^ Girard, Jean-Yves; Paul Taylor; Yves Lafont (1990) [1989]. Beweise und Typen. Cambridge University Press (Cambridge Tracts in Theoretical Information, 7). ISBN 978-0-521-37181-0.
- ^ Nicht alle Suchmaschinen unterstützen dieselbe Abfragesyntax. Darüber hinaus bieten einige Organisationen (wie Google) "spezielle" Suchmaschinen, die alternative oder erweiterte Syntax unterstützen. (Siehe z. B.,,Syntax -Cheatsblatt, Google Codesarch unterstützt regelmäßige Ausdrücke).
- ^ Doublequote-delimitierte Suchbegriffe werden in der Google-Dokumentation als "exakte Phrase" bezeichnet.
Quellen
- Mano, Morris; Ciletti, Michael D. (2013). Digitales Design. Pearson. ISBN 978-0-13-277420-8.
Weitere Lektüre
- J. Eldon Whitesitt (1995). Boolesche Algebra und ihre Anwendungen. Courier Dover Publications. ISBN 978-0-486-68483-3. Geeignete Einführung für Studenten in angewandten Bereichen.
- Dwinger, Philip (1971). Einführung in Boolesche Algebren. Würzburg: Physica Verlag.
- Sikorski, Roman (1969). Boolesche Algebren (3/e ed.). Berlin: Springer-Verlag. ISBN 978-0-387-04469-9.
- Bocheński, Józef Maria (1959). Eine Précis mathematischer Logik. Übersetzt aus den französischen und deutschen Ausgaben von Otto Bird. Dordrecht, South Holland: D. Reidel.
Historische Perspektive
- George Boole (1848). "Der Logikkalkül, " Cambridge und Dublin Mathematical Journal III: 183–98.
- Theodore Hailperin (1986). Booles Logik und Wahrscheinlichkeit: Eine kritische Darstellung vom Standpunkt der zeitgenössischen Algebra, der Logik und der Wahrscheinlichkeitstheorie (2. Aufl.). Elsevier. ISBN 978-0-444-87952-3.
- Dov M. Gabbay, John Woods, hrsg. (2004). Der Aufstieg der modernen Logik: von Leibniz zu Frege. Handbuch der Logikgeschichte. Vol. 3. Elsevier. ISBN 978-0-444-51611-4., mehrere relevante Kapitel von Hagelin, Valencia und Grattan-Guinness
- Calixto Badesa (2004). Die Geburt der Modelltheorie: Löwenheims Theorem im Rahmen der Theorie der Verwandten. Princeton University Press. ISBN 978-0-691-05853-5., Kapitel 1, "Algebra von Klassen und Propositionalkalkül"
- Burris, Stanley, 2009. Die Algebra der logischen Tradition. Stanford Encyclopedia of Philosophy.
- Radomir S. Stankovic; Jaakko Astola (2011). Von der Booleschen Logik bis hin zum Schalten von Schaltkreisen und Automaten: in Richtung moderner Informationstechnologie. Springer. ISBN 978-3-642-11681-0.