2013-02-15 9 views
93

Stavo rifattando il vecchio codice e ho riscontrato diverse condizioni IF troppo complesse e lunghe e sono certo che possono essere semplificate. La mia ipotesi è che quelle condizioni siano cresciute così tanto a causa delle successive modifiche.Qualsiasi buon semplificatore di espressioni booleane là fuori?

In ogni caso, mi stavo chiedendo se qualcuno di voi sa di un buon software online che posso usare. Io non sono interessato a qualunque lingua specifica, solo un semplificatore che avrebbe preso in esempio:

(! (A o B) e (B e C) o C)

e mi danno un versione semplificata dell'espressione, se presente.

Ho esaminato le altre domande simili ma nessuna mi indica un buon esempio.

Grazie.

+0

WolframAlpha arriva anche a * C *. Nessun cancello in più ... –

+0

C'è uno strumento online carino - http://tma.main.jp/logic/index_en.html –

risposta

81

Si può provare a Wolfram Alpha, come in questo esempio sulla base di input:

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

+2

Il sito Web non sembra così utile per semplificare le formule booleane quando diventano un po 'più complesse. Prova questo: (((NON C) E (NON A)) O ((NON B) E (NON C) E (NON D) E (NON A)) O ((NON B) E (NON C) AND D AND A) O (B AND C AND (NOT D) E (NOT A)) OR (B AND C AND D AND A)) –

+1

Infatti. Strano. Si trova anche nella versione semplificata 'NOT C AND NOT A O NOT B AND NOT C AND NOT D AND NOT A OR NOT B AND NOT C AND D AND A O B AND C AND NOT D AND NOT A OR B AND C AND D AND A'. –

+2

Si noti che se si desidera la tabella di verità, che non viene sempre emessa per alcune espressioni, avviare la query con le parole "tabella verità" seguita dall'espressione – Belgi

14

Prova Logic Friday 1 Include strumenti dell'University of California (Espresso e misII) e li rende utilizzabili con una GUI. Puoi inserire equazioni booleane e tabelle di verità come desiderato. Dispone inoltre di un input e output grafico diagramma di gate.

La minimizzazione può essere eseguita su due livelli o su più livelli. La forma a due livelli produce una somma minima di prodotti. Il modulo a più livelli crea un circuito composto da porte logiche. I tipi di porte possono essere limitati dall'utente.

L'espressione è semplificata in C.

+2

Per un rapido strumento online questo è davvero utile: http://tma.main.jp/logic /index_en.html –

5

ho scoperto che The Boolean Expression Reducer è molto più facile da usare rispetto Logic Venerdì. Inoltre non richiede installazione ed è multipiattaforma (Java).

Anche in Logic Friday l'espressione A | B restituisce solo 3 voci nella tabella di verità; Mi aspettavo 4.

+3

Attivare l'opzione "Truthtable/Show all Rows" in Logic Friday 1. Altrimenti , si ottengono solo tutte le righe con valore di output 1. –

+1

Internamente, bexpred utilizza semplici algoritmi per unire i minuti. Potrebbe essere utile per le espressioni piccole ma non è assolutamente all'avanguardia. –

+2

Per "A \ * B \ * (! A \ * B +! A \ *! B)" input questo jar restituisce SOP False ma POS True. Script non esattamente affidabile ... Il collegamento – Evil

Problemi correlati