สมมติว่าฉันมีวงจรบูลีน ที่คำนวณฟังก์ชันบางอย่าง . สมมติว่าวงจรประกอบด้วย AND, OR และ NOT เกตกับ fan-in และ fan-out ไม่เกิน 2
ปล่อย เป็นอินพุตที่ได้รับ ป.ร. ให้ไว้ และ ฉันต้องการประเมิน บน อินพุตที่แตกต่างจาก ในตำแหน่งบิตเดียวคือการคำนวณ ค่า ที่ไหน เป็นเช่นเดียวกับ ยกเว้นว่ามัน บิตที่ถูกพลิก
มีวิธีการทำสิ่งนี้ที่มีประสิทธิภาพมากกว่าที่ประเมินโดยอิสระหรือไม่ ครั้งใน อินพุตแตกต่างกันอย่างไร
สมมติ มี ประตู จากนั้นประเมินอิสระ ในทุก อินพุตจะใช้ เวลา. มีวิธีคำนวณหรือไม่ ใน เวลา?
บริบททางเลือก: ถ้าเรามีวงจรเลขคณิต (ซึ่งมีเกตเป็นการคูณการบวกและการปฏิเสธ)แล้วมันจะเป็นไปได้ที่จะคำนวณ อนุพันธ์ทิศทาง ใน เวลา. โดยพื้นฐานแล้วเราสามารถใช้วิธีมาตรฐานสำหรับการคำนวณการไล่ระดับสี (กฎการแพร่กระจายกลับ / ห่วงโซ่) ในเวลา. ใช้งานได้เพราะฟังก์ชั่นที่เกี่ยวข้องนั้นมีความต่อเนื่องและแตกต่างกัน ฉันสงสัยว่าสิ่งที่คล้ายกันสามารถทำได้สำหรับวงจรบูลีน วงจรบูลีนนั้นไม่ต่อเนื่องและสร้างความแตกต่างดังนั้นคุณจึงไม่สามารถทำแบบเดียวกันได้ แต่อาจมีเทคนิคที่ฉลาดอื่น ๆ อาจเป็นกลอุบายของฟูริเยร์หรือบางอย่าง?
(คำถามที่แตกต่าง: ถ้าเรามีประตูบูลีนที่มีแฟน - อินและไม่มีแฟนคลับ จำกัด คุณสามารถทำได้ดีกว่าการประเมิน ครั้ง?)