นิพจน์บูลีนที่ดีมีอะไรบ้าง? [ปิด]


110

ฉันกำลังปรับโครงสร้างโค้ดเก่าและพบเงื่อนไข IF หลายอย่างที่ซับซ้อนและยาวเกินไปและฉันมั่นใจว่าสามารถทำให้ง่ายขึ้นได้ ฉันเดาว่าเงื่อนไขเหล่านั้นเพิ่มขึ้นมากเนื่องจากการปรับเปลี่ยนในภายหลัง

อย่างไรก็ตามฉันสงสัยว่ามีใครรู้จัก Simplifier ออนไลน์ที่ดีที่ฉันสามารถใช้ได้หรือไม่ ฉันไม่สนใจภาษาใดภาษาหนึ่งมีเพียงซิมพลิไฟเออร์ที่จะใช้ในตัวอย่าง:

((A หรือ B) และ (! B และ C) หรือ C)

และให้รุ่นที่เรียบง่ายของนิพจน์ถ้ามี

ฉันได้ดูคำถามอื่น ๆ ที่คล้ายกัน แต่ไม่มีใครชี้ให้ฉันเห็นถึงเครื่องขยายเสียงที่ดี

ขอบคุณ.


1
WolframAlpha มาถึงCด้วย ไม่มีประตูเสริม ...
Axel Kemper

1
มีเครื่องมือออนไลน์ที่ดี - tma.main.jp/logic/index_en.html
Roman Hocke

เครื่องมืออื่นคือboolean-algebra.comซึ่งจะแสดงขั้นตอนในการแก้ปัญหา ตัวอย่างเช่นคุณสามารถแก้ไขได้ด้วยกฎการดูดซึม A + AB = A มันไม่ได้ก้าวหน้าเกินไปดังนั้นหากคุณต้องการอย่างอื่นที่ไม่ใช่รูปแบบที่เรียบง่ายคุณควรใช้ไซต์อื่น
John Smith

คำตอบ:


93

คุณสามารถลองใช้ Wolfram Alpha ในตัวอย่างนี้ตามข้อมูลที่คุณป้อน:

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


3
เว็บไซต์ดูเหมือนจะไม่ดีสำหรับการทำให้สูตรบูลีนง่ายขึ้นเมื่อพวกเขาซับซ้อนขึ้นเล็กน้อย ลองอันนี้: (((ไม่ใช่ C) และ (ไม่ใช่ A)) หรือ ((ไม่ใช่ B) และ (ไม่ใช่ C) และ (ไม่ใช่ D) และ (ไม่ใช่ A)) หรือ ((ไม่ใช่ B) และ (ไม่ใช่ C) และ D AND A) หรือ (B AND C AND (NOT D) AND (NOT A)) หรือ (B AND C AND D AND A))
Albert Hendriks

1
แน่นอน. แปลก. มันยัง barfs 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 - ข้อผิดพลาดภายในเซิร์ฟเวอร์

2
โปรดทราบว่าหากคุณต้องการตารางความจริงซึ่งไม่ได้แสดงผลเสมอไปสำหรับบางนิพจน์ให้เริ่มการค้นหาด้วยคำว่า "ตารางความจริง" ตามด้วยนิพจน์
Belgi

16

ลองใช้Logic Friday 1เครื่องมือจาก Univerity of California (Espresso และ misII) และทำให้ใช้งานได้กับ GUI คุณสามารถป้อนสมการบูลีนและตารางความจริงได้ตามต้องการ นอกจากนี้ยังมีอินพุตและเอาต์พุตเกตไดอะแกรมแบบกราฟิก

การย่อขนาดสามารถทำได้สองระดับหรือหลายระดับ แบบฟอร์มสองระดับให้ผลรวมของผลิตภัณฑ์ที่ลดลง รูปแบบหลายระดับสร้างวงจรที่ประกอบด้วยประตูตรรกะ ผู้ใช้สามารถ จำกัด ประเภทของประตูได้

Cการแสดงออกของคุณที่จะช่วยลดความยุ่งยาก


2
สำหรับเครื่องมือออนไลน์ที่รวดเร็วสิ่งนี้มีประโยชน์มาก: tma.main.jp/logic/index_en.html
Lenar Hoyt

6

ฉันพบว่าBoolean Expression Reducerใช้งานง่ายกว่า Logic Friday มาก นอกจากนี้ยังไม่จำเป็นต้องติดตั้งและเป็นแบบหลายแพลตฟอร์ม (Java)

นอกจากนี้ใน Logic Friday นิพจน์A | Bจะส่งคืน 3 รายการในตารางความจริง ฉันคาดหวังไว้ 4.


3
เปิดใช้งานตัวเลือก "Truthtable / Show all Rows" ใน Logic Friday 1 มิฉะนั้นคุณจะได้รับเฉพาะแถวทั้งหมดที่มีค่าเอาต์พุต 1
Axel Kemper

1
ภายใน bexpred ใช้อัลกอริทึมง่ายๆในการรวม minterms อาจเป็นประโยชน์สำหรับการแสดงออกเล็ก ๆ น้อย ๆ แต่ไม่ใช่เรื่องที่ล้ำสมัย
Axel Kemper

2
สำหรับอินพุต "A * B * (! A * B +! A *! B)" จะส่งคืน SOP False แต่ POS True สคริปต์ไม่น่าเชื่อถืออย่างแน่นอน ...
Evil

ลิงค์เสียใครมีลิงค์ที่ใช้งานได้
HJLebbink
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.