เครื่องมือลดรูปนิพจน์บูลีน

ลดรูปนิพจน์บูลีนใดๆ ให้เป็นผลรวมของผลคูณและผลคูณของผลรวมที่สั้นที่สุด พร้อมแสดงตัวประกอบร่วมเฉพาะทุกตัวและการตรวจสอบด้วยตารางความจริงทีละแถว

นิพจน์

เขียนตัวแปรด้วยตัวอักษรเดี่ยว โดย AND สามารถเขียนเป็น AB, A·B, A*B หรือ A AND B; OR เขียนเป็น A + B หรือ A OR B; NOT เขียนเป็น A', !A หรือ NOT A; และยังสามารถใช้ XOR, NAND และ NOR ได้ด้วย
ใส่ตัวดำเนินการ

รองรับตัวแปรที่แตกต่างกันสูงสุด 6 ตัว และความยาวไม่เกิน 2,000 ตัวอักษร สามารถใช้ค่าคงที่ 0 และ 1 ได้

ลองใช้นิพจน์ตัวอย่าง

รูปแบบที่ลดรูปแล้ว

รูปแบบที่ลดรูปแล้วจะแสดงที่นี่

พิมพ์นิพจน์บูลีนเพื่อดูผลรวมของผลคูณ (SOP) และผลคูณของผลรวม (POS) ในรูปแบบที่ง่ายที่สุด พร้อมขั้นตอนการคำนวณ

พิมพ์นิพจน์บูลีนเพื่อเริ่มต้นการลดรูป

นิพจน์จะถูกลดรูปภายในเบราว์เซอร์นี้เท่านั้นและจะไม่ถูกส่งออกจากอุปกรณ์ของคุณ

คำถามที่พบบ่อย

รองรับการเขียนนิพจน์ในรูปแบบใดบ้าง?

คุณสามารถใช้รูปแบบสัญลักษณ์ทั่วไปทั้งหมดผสมกันได้อย่างอิสระ ไม่ว่าจะเป็นรูปแบบทางวิศวกรรม (AB + A'C โดยละเครื่องหมาย AND และใช้เครื่องหมายขีดเดี่ยวสำหรับ NOT) รูปแบบการเขียนโปรแกรม (A && !B || C, A ^ B) สัญลักษณ์ทางตรรกศาสตร์ (¬ ∧ ∨ ⊕ ⊼ ⊽) หรือคำศัพท์ภาษาอังกฤษทั่วไป (A AND B OR NOT C, NAND, NOR) การเขียนตัวอักษรติดกัน เช่น ABC จะหมายถึง A AND B AND C และคำว่า AND, OR, NOT, XOR, NAND, NOR จะถูกตีความว่าเป็นตัวดำเนินการเสมอ

เครื่องมือนี้ค้นหารูปแบบที่ลดรูปที่สุดได้อย่างไร?

เครื่องมือนี้จะสร้างตารางความจริงแบบเต็ม จากนั้นจะยุบรวมแถวที่มีค่าเป็น 1 ที่อยู่ข้างเคียงกันให้เป็นตัวประกอบร่วมเฉพาะ (วิธี Quine–McCluskey) เลือกเก็บตัวประกอบร่วมเฉพาะที่จำเป็น และครอบคลุมแถวที่เหลือทั้งหมดด้วยจำนวนพจน์ที่น้อยที่สุดอย่างแม่นยำ ผลลัพธ์ที่ได้จึงรับประกันว่าเป็นรูปแบบผลรวมของผลคูณ (SOP) ที่สั้นที่สุดอย่างแท้จริง ไม่ใช่การคาดเดา และการใช้วิธีการเดียวกันนี้กับแถวที่มีค่าเป็น 0 จะทำให้ได้รูปแบบผลคูณของผลรวม (POS)

ผลลัพธ์แบบ SOP และ POS แตกต่างกันอย่างไร?

ทั้งสองรูปแบบอธิบายฟังก์ชันเดียวกัน โดยผลรวมของผลคูณ (SOP) จะเชื่อมพจน์ที่คูณกัน (AND) ด้วยตัวดำเนินการบวก (OR) เช่น AB' + BC ซึ่งจะแปลงไปเป็นวงจรแบบ AND–OR ได้โดยตรง ส่วนผลคูณของผลรวม (POS) จะเชื่อมพจน์ที่บวกกัน (OR) ด้วยตัวดำเนินการคูณ (AND) เช่น (A + B)(B' + C) ซึ่งจะแปลงไปเป็นวงจรแบบ OR–AND ทั้งนี้ ขึ้นอยู่กับฟังก์ชันนั้นๆ ว่ารูปแบบใดจะใช้เกตจำนวนน้อยกว่า เครื่องมือนี้จึงแสดงทั้งสองรูปแบบให้คุณเสมอ

ทำไมจึงรองรับตัวแปรสูงสุดเพียง 6 ตัว?

ตัวแปร 6 ตัวจะสร้างตารางความจริงที่มีถึง 64 แถว ซึ่งเป็นขีดจำกัดสูงสุดที่มนุษย์ยังสามารถอ่านและตรวจสอบด้วยมือได้ ในทางทฤษฎีแล้ว การลดรูปยังคงทำงานได้กับตัวแปรที่มากกว่านี้ แต่ขั้นตอนการคำนวณและตารางความจริงที่สร้างขึ้นบนหน้านี้จะเริ่มไม่เหมาะสำหรับการแสดงให้เห็นจริง ซอฟต์แวร์ออกแบบวงจรตรรกะที่สามารถส่งออกไฟล์ได้จะเหมาะสมกว่าสำหรับฟังก์ชันที่มีตัวแปรจำนวนมาก

การทำงานของเครื่องมือลดรูปนิพจน์บูลีน

เครื่องมือลดรูปนิพจน์บูลีนช่วยลดรูปสมการตรรกศาสตร์ให้เหลือเพียงรูปแบบทางคณิตศาสตร์ที่สั้นและกระชับที่สุด เมื่อคุณพิมพ์หรือวางนิพจน์บูลีนลงในเครื่องมือ ระบบจะคำนวณและแสดงผลลัพธ์ทั้งในรูปแบบ ผลรวมของผลคูณที่ลดรูปที่สุด (SOP) และ ผลคูณของผลรวมที่ลดรูปที่สุด (POS) ทันที

นอกเหนือจากผลลัพธ์ที่ลดรูปแล้ว เครื่องมือนี้ยังแสดงขั้นตอนการคำนวณอย่างละเอียดโดยใช้วิธี Quine–McCluskey (การครอบคลุมขั้นต่ำที่แน่นอน)ระบุตัวประกอบร่วมเฉพาะ (Prime implicants) ทั้งหมด และสร้างตารางความจริงแบบแถวต่อแถวเพื่อเปรียบเทียบและยืนยันความถูกต้องระหว่างนิพจน์เริ่มต้นกับผลลัพธ์ที่ได้จากการลดรูป


รูปแบบข้อมูลนำเข้าและข้อจำกัด

เครื่องมือนี้รองรับการป้อนข้อมูลที่มีความยาวไม่เกิน 2,000 ตัวอักษร และใช้ตัวแปรที่แตกต่างกันได้สูงสุด 6 ตัว โดยคุณสามารถเขียนตัวแปรด้วยตัวอักษรเดี่ยว และเลือกใช้สัญลักษณ์หรือตัวดำเนินการในรูปแบบต่างๆ ผสมกันได้อย่างอิสระ ดังนี้:

  • AND: เขียนแบบละเครื่องหมาย เช่น AB, ใช้จุดกลาง A·B, เครื่องหมายดอกจัน A*B, คำว่า A AND B, สัญลักษณ์โปรแกรมมิ่ง A && B หรือสัญลักษณ์ทางตรรกศาสตร์ โดยการเขียนตัวอักษรติดกัน เช่น ABC จะถูกตีความว่าเป็น A AND B AND C
  • OR: เขียนเป็น A + B, A OR B, A || B หรือสัญลักษณ์ทางตรรกศาสตร์
  • NOT: เขียนเป็น A', !A, NOT A, ¬A หรือใช้เครื่องหมายขีดเดี่ยว
  • XOR: เขียนเป็น A ^ B, A XOR B หรือ A ⊕ B
  • NAND: เขียนเป็น A NAND B หรือ
  • NOR: เขียนเป็น A NOR B หรือ
  • ค่าคงที่: รองรับการใช้ค่าคงที่ 0 และ 1

ผู้ใช้งานสามารถคลิกเลือกนิพจน์ตัวอย่างเพื่อทดลองใช้งานได้อย่างรวดเร็ว ได้แก่ "การยุบรวมพจน์" (Consensus), "นิเสธของผลคูณ" (De Morgan) และ "XOR สามทาง" (Three-way XOR) หรือกดปุ่ม "ล้างข้อมูล" เพื่อล้างกล่องข้อความทั้งหมด


การประมวลผลและความเป็นส่วนตัว

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


การวิเคราะห์และผลลัพธ์ที่แสดง

เมื่อป้อนนิพจน์บูลีนเรียบร้อยแล้ว เครื่องมือจะแสดงข้อมูลสรุปอย่างย่อและขั้นตอนการคำนวณอย่างเป็นระบบ:

  1. ตีความค่าเป็น: แสดงโครงสร้างของนิพจน์ที่ระบบตีความและจัดรูปแบบมาตรฐานแล้ว
  2. ข้อมูลสรุปอย่างย่อ: แสดงรายละเอียดเชิงวิเคราะห์ ได้แก่:
    • ตัวแปร: รายชื่อตัวแปรที่ตรวจพบในระบบ
    • แถวที่มีค่าเท่ากับ 1: รายการมินเทอม (Minterms)
    • ตัวประกอบร่วมเฉพาะ (Prime implicants): จำนวนตัวประกอบร่วมเฉพาะทั้งหมดที่ค้นพบ
    • ตัวประกอบร่วมเฉพาะที่จำเป็น (Essential prime implicants): จำนวนตัวประกอบร่วมเฉพาะที่จำเป็นต้องมีในผลลัพธ์
    • ตัวแปรและนิเสธ (Literals) ก่อน → หลัง: จำนวนตัวแปรและนิเสธที่ลดลงได้จากการคำนวณ
    • วิธีการ: แสดงระบบการคำนวณ "Quine–McCluskey (การครอบคลุมขั้นต่ำที่แน่นอน)"

ขั้นตอนการลดรูปและตารางความจริง

ในส่วนขั้นตอนการลดรูป เครื่องมือจะอธิบายกระบวนการทางคณิตศาสตร์ทีละขั้น:

  • การวิเคราะห์ตัวแปร: แสดงจำนวนตัวแปรและจำนวนแถวในตารางความจริง เช่น "นิพจน์นี้ใช้ตัวแปร ‹count› ตัว (‹variables›) ดังนั้นตารางความจริงจึงมี ‹rows› แถว"
  • การระบุค่า: ระบุตำแหน่งแถวที่เป็นจริงและเท็จ เช่น "มีค่าเท่ากับ 1 ในแถว Σm(‹minterms›) และมีค่าเท่ากับ 0 ในแถว ΠM(‹maxterms›)"
  • การหาตัวประกอบ: แสดงการยุบรวมแถวข้างเคียง เช่น "การยุบรวมแถวที่มีค่าเป็น 1 ที่อยู่ข้างเคียงกันให้มากที่สุดเท่าที่จะทำได้ จะเหลือตัวประกอบร่วมเฉพาะ ‹count› ตัว: ‹list›"
  • การเลือกตัวประกอบที่จำเป็น: แสดงรายการตัวประกอบร่วมเฉพาะที่จำเป็น เช่น "ตัวประกอบร่วมเฉพาะที่จำเป็น — ซึ่งเป็นทางเลือกเดียวที่เหลืออยู่ในการครอบคลุมอย่างน้อยหนึ่งแถว: ‹list›" หรือแจ้งว่า "ไม่มีตัวประกอบร่วมเฉพาะที่จำเป็น: ทุกแถวที่มีค่าเป็น 1 สามารถครอบคลุมได้มากกว่าหนึ่งวิธี"
  • การครอบคลุมแถวที่เหลือ: แสดงการปิดแถวที่เหลือ เช่น "ตัวประกอบร่วมเฉพาะที่จำเป็นได้ครอบคลุมแถวที่มีค่าเป็น 1 ครบทุกแถวแล้ว ดังนั้นผลรวมจึงเสร็จสมบูรณ์" หรือ "แถวที่ยังไม่ถูกครอบคลุมจะถูกปิดด้วยพจน์เพิ่มเติมจำนวนน้อยที่สุด: ‹list›"
  • การหา POS: แสดงผลลัพธ์ของผลคูณของผลรวม เช่น "การยุบรวมแบบเดียวกันกับแถวที่มีค่าเป็น 0 จะได้ผลคูณของผลรวมที่ลดรูปที่สุดเป็น ‹pos›"
  • การตรวจสอบความถูกต้อง: ยืนยันผลลัพธ์ด้วยข้อความ "รูปแบบที่ลดรูปแล้วทั้งสองแบบตรงกับนิพจน์เริ่มต้นในตารางความจริงครบทั้ง ‹rows› แถว"

ตารางความจริงจะแสดงคอลัมน์ตัวแปรทั้งหมด เปรียบเทียบระหว่าง "นิพจน์เดิม" และ "SOP ที่ลดรูปแล้ว" เพื่อให้เห็นว่าผลลัพธ์ตรงกันทุกแถวอย่างชัดเจน


ข้อผิดพลาดและกรณีเฉพาะ

เครื่องมือจะแจ้งเตือนข้อผิดพลาดและสถานะพิเศษตามกฎเกณฑ์ทางคณิตศาสตร์ดังนี้:

  • นิพจน์เป็นค่าคงที่: หากสมการเป็นสัจนิรันดร์ (Tautology) จะแสดงข้อความ "นิพจน์นี้มีค่าเป็น 1 เสมอ: ทุกค่าตัวแปรผสมกันทำให้ผลลัพธ์เป็นจริงเสมอ" และหากเป็นข้อขัดแย้ง (Contradiction) จะแสดงข้อความ "นิพจน์นี้มีค่าเป็น 0 เสมอ: ไม่มีค่าตัวแปรผสมกันแบบใดที่ทำให้ผลลัพธ์เป็นจริงได้"
  • อยู่ในรูปแบบที่สั้นที่สุดแล้ว: หากไม่สามารถลดรูปได้อีก จะแสดงข้อความ "นิพจน์ของคุณอยู่ในรูปแบบผลรวมของผลคูณที่ลดรูปที่สุดอยู่แล้ว"
  • ข้อผิดพลาดทางไวยากรณ์:
    • หากไม่มีการป้อนข้อมูล: "โปรดป้อนนิพจน์บูลีน"
    • หากตัวอักษรเกินกำหนด: "โปรดป้อนนิพจน์ที่มีความยาวไม่เกิน 2,000 ตัวอักษร"
    • หากมีตัวอักษรที่ไม่รู้จัก: ""‹char›" (ตำแหน่งที่ ‹position›) ไม่ใช่ตัวดำเนินการบูลีน ตัวแปร หรือค่าคงที่"
    • หากตัวดำเนินการไม่ครบ: "ตัวดำเนินการขาดตัวถูกดำเนินการใกล้กับตำแหน่งที่ ‹position› โปรดตรวจสอบว่ามี + · หรือ ⊕ เกินมาหรือไม่"
    • หากวงเล็บไม่ครบคู่: "วงเล็บไม่สมดุลกัน โปรดเพิ่มหรือลบวงเล็บออก"
    • หากตัวแปรเกินกำหนด: "นิพจน์นี้ใช้ตัวแปรที่แตกต่างกัน ‹count› ตัว เครื่องมือลดรูปนี้รองรับได้สูงสุด 6 ตัว"

คำถามที่พบบ่อย (FAQ)

ทำไมจึงรองรับตัวแปรสูงสุดเพียง 6 ตัว?
ตัวแปร 6 ตัวจะสร้างตารางความจริงที่มีถึง 64 แถว ซึ่งเป็นขีดจำกัดสูงสุดที่มนุษย์ยังสามารถอ่านและตรวจสอบด้วยมือได้ ในทางทฤษฎีแล้ว การลดรูปยังคงทำงานได้กับตัวแปรที่มากกว่านี้ แต่ขั้นตอนการคำนวณและตารางความจริงที่สร้างขึ้นบนหน้านี้จะเริ่มไม่เหมาะสำหรับการแสดงให้เห็นจริง ซอฟต์แวร์ออกแบบวงจรตรรกะที่สามารถส่งออกไฟล์ได้จะเหมาะสมกว่าสำหรับฟังก์ชันที่มีตัวแปรจำนวนมาก

เครื่องมือนี้ค้นหารูปแบบที่ลดรูปที่สุดได้อย่างไร?
เครื่องมือนี้จะสร้างตารางความจริงแบบเต็ม จากนั้นจะยุบรวมแถวที่มีค่าเป็น 1 ที่อยู่ข้างเคียงกันให้เป็นตัวประกอบร่วมเฉพาะ (วิธี Quine–McCluskey) เลือกเก็บตัวประกอบร่วมเฉพาะที่จำเป็น และครอบคลุมแถวที่เหลือทั้งหมดด้วยจำนวนพจน์ที่น้อยที่สุดอย่างแม่นยำ ผลลัพธ์ที่ได้จึงรับประกันว่าเป็นรูปแบบผลรวมของผลคูณ (SOP) ที่สั้นที่สุดอย่างแท้จริง ไม่ใช่การคาดเดา และการใช้วิธีการเดียวกันนี้กับแถวที่มีค่าเป็น 0 จะทำให้ได้รูปแบบผลคูณของผลรวม (POS)

รองรับการเขียนนิพจน์ในรูปแบบใดบ้าง?
คุณสามารถใช้รูปแบบสัญลักษณ์ทั่วไปทั้งหมดผสมกันได้อย่างอิสระ ไม่ว่าจะเป็นรูปแบบทางวิศวกรรม (AB + A'C โดยละเครื่องหมาย AND และใช้เครื่องหมายขีดเดี่ยวสำหรับ NOT) รูปแบบการเขียนโปรแกรม (A &&!B || C, A ^ B) สัญลักษณ์ทางตรรกศาสตร์ (¬ ∧ ∨ ⊕ ⊼ ⊽) หรือคำศัพท์ภาษาอังกฤษทั่วไป (A AND B OR NOT C, NAND, NOR) การเขียนตัวอักษรติดกัน เช่น ABC จะหมายถึง A AND B AND C และคำว่า AND, OR, NOT, XOR, NAND, NOR จะถูกตีความว่าเป็นตัวดำเนินการเสมอ

ผลลัพธ์แบบ SOP และ POS แตกต่างกันอย่างไร?
ทั้งสองรูปแบบอธิบายฟังก์ชันเดียวกัน โดยผลรวมของผลคูณ (SOP) จะเชื่อมพจน์ที่คูณกัน (AND) ด้วยตัวดำเนินการบวก (OR) เช่น AB' + BC ซึ่งจะแปลงไปเป็นวงจรแบบ AND–OR ได้โดยตรง ส่วนผลคูณของผลรวม (POS) จะเชื่อมพจน์ที่บวกกัน (OR) ด้วยตัวดำเนินการคูณ (AND) เช่น (A + B)(B' + C) ซึ่งจะแปลงไปเป็นวงจรแบบ OR–AND ทั้งนี้ ขึ้นอยู่กับฟังก์ชันนั้นๆ ว่ารูปแบบใดจะใช้เกตจำนวนน้อยกว่า เครื่องมือนี้จึงแสดงทั้งสองรูปแบบให้คุณเสมอ