Gibt es da draußen gute Vereinfacher für boolesche Ausdrücke? [geschlossen]

110

Ich habe alten Code überarbeitet und bin auf mehrere IF-Bedingungen gestoßen, die viel zu komplex und lang waren, und ich bin sicher, dass sie vereinfacht werden können. Ich vermute, dass diese Bedingungen aufgrund späterer Änderungen so stark gewachsen sind.

Wie auch immer, ich habe mich gefragt, ob einer von Ihnen einen guten Online-Vereinfacher kennt, den ich verwenden kann. Ich interessiere mich nicht für eine bestimmte Sprache, sondern nur für einen Vereinfacher, der zum Beispiel Folgendes beinhaltet:

((A ODER B) UND (! B UND C) ODER C)

Und geben Sie mir gegebenenfalls eine vereinfachte Version des Ausdrucks.

Ich habe mir die anderen ähnlichen Fragen angesehen, aber keine weist mich auf einen guten Vereinfacher hin.

Vielen Dank.

Mojarras
quelle
1
WolframAlpha kommt auch bei C an . Keine zusätzlichen Tore ...
Axel Kemper
1
Es gibt ein schönes Online-Tool - tma.main.jp/logic/index_en.html
Roman Hocke
Ein weiteres Tool ist boolean-algebra.com. Es zeigt die Schritte zur Lösung. Zum Beispiel können Sie nur mit dem Absorptionsgesetz A + AB = A lösen. Es ist nicht zu weit fortgeschritten. Wenn Sie also etwas anderes als eine minimale Form benötigen, sollten Sie besser eine andere Site verwenden.
John Smith

Antworten:

93

Sie können Wolfram Alpha wie in diesem Beispiel basierend auf Ihren Eingaben ausprobieren:

http://www.wolframalpha.com/input/?i=((A%20OR%20B)%20AND%20(NOT%20B%20AND%20C)%20OR%20C)&t=crmtb01&f=rc

500 - Interner Serverfehler
quelle
3
Die Website scheint nicht so gut zu sein, um boolesche Formeln zu vereinfachen, wenn sie etwas komplexer werden. Versuchen Sie dies: (((NICHT C) UND (NICHT A)) ODER ((NICHT B) UND (NICHT C) UND (NICHT D) UND (NICHT A)) ODER ((NICHT B) UND (NICHT C) UND D UND A) ODER (B UND C UND (NICHT D) UND (NICHT A)) ODER (B UND C UND D UND A))
Albert Hendriks
1
Tatsächlich. Seltsam. Es vereinfacht sogar die vereinfachte Version NOT C AND NOT A OR NOT B AND NOT C AND NOT D AND NOT A OR NOT B AND NOT C AND D AND A OR B AND C AND NOT D AND NOT A OR B AND C AND D AND A.
500 - Interner Serverfehler
2
Beachten Sie, dass, wenn Sie die Wahrheitstabelle möchten, die für einige Ausdrücke nicht immer ausgegeben wird, die Abfrage mit den Worten "Wahrheitstabelle" gefolgt vom Ausdruck
Belgi
16

Try Logic Friday 1It enthält Tools der University of California (Espresso und misII) und macht sie mit einer GUI verwendbar. Sie können nach Bedarf boolesche Gleichungen und Wahrheitstabellen eingeben. Es verfügt auch über einen grafischen Gate-Diagramm-Ein- und Ausgang.

Die Minimierung kann zweistufig oder mehrstufig erfolgen. Die zweistufige Form ergibt eine minimierte Summe von Produkten. Die mehrstufige Form erzeugt eine Schaltung, die aus logischen Gattern besteht. Die Arten von Toren können vom Benutzer eingeschränkt werden.

Ihr Ausdruck vereinfacht sich zu C.

Axel Kemper
quelle
2
Für ein schnelles Online-Tool ist dies wirklich hilfreich: tma.main.jp/logic/index_en.html
Lenar Hoyt
6

Ich fand, dass der Boolean Expression Reducer viel einfacher zu verwenden ist als Logic Friday. Außerdem muss es nicht installiert werden und ist plattformübergreifend (Java).

Auch in Logic Friday gibt der Ausdruck A | Bnur 3 Einträge in der Wahrheitstabelle zurück. Ich habe 4 erwartet.

Pawel Dubiel
quelle
3
Aktivieren Sie die Option "Truthtable / Show all Rows" in Logic Friday 1. Andernfalls erhalten Sie nur alle Zeilen mit dem Ausgabewert 1.
Axel Kemper
1
Intern verwendet bexpred einfache Algorithmen, um Zwischenzeiten zusammenzuführen. Es mag für kleine Ausdrücke hilfreich sein, ist aber definitiv nicht auf dem neuesten Stand der Technik.
Axel Kemper
2
Für die Eingabe "A * B * (! A * B +! A *! B)" gibt dieses Glas SOP False, aber POS True zurück. Nicht gerade zuverlässiges Skript ...
Evil
Link ist defekt, wer hat einen funktionierenden Link?
HJLebbink