ให้และy ที่สองเลขฐานสองกับnบิตและZ = x ⋅ Yเลขฐานสอง (ความยาว2 n ) ของผลิตภัณฑ์ของxและy ที่ เราต้องการที่จะคำนวณ siginifcant บิตมากที่สุดZ 2 n - 1ของผลิตภัณฑ์Z = Z 2 n - 1 ... Z 0
เพื่อวิเคราะห์ความซับซ้อนของฟังก์ชั่นนี้ในรูปแบบของแผนภาพการตัดสินใจไบนารี (โดยเฉพาะอย่างยิ่งการอ่านครั้งเดียวแตกแขนงโปรแกรม) ผมพยายามที่จะมองหาการแสดงออกเทียบเท่าบางอย่างสำหรับกรณี 1 สิ่งแรกที่ชัดเจนคือz 2 n - 1 = 1 ⇔ x ⋅ y ≥ 2 2 n - 1 (ที่นี่xและyเป็นจำนวนเต็มที่สอดคล้องกับเลขฐานสอง) ฉันอยากได้สัญชาตญาณว่าจะเกิดอะไรขึ้นถ้าฉันตั้งค่าอินพุตบิตคงที่ เช่นถ้าฉันตั้งบิตที่สำคัญที่สุดจากและ yถึง 0 ฉันได้รับฟังก์ชั่นคงที่ 0 แต่บิตที่มีนัยสำคัญต่ำกว่านั้นก็ไม่ได้มีอิทธิพลต่อผลลัพธ์ดังกล่าว
มีนิพจน์ที่เทียบเท่าอื่น ๆ สำหรับเคสซึ่งช่วยได้มากขึ้นในการดูว่าเกิดอะไรขึ้นถ้าฉันแก้ไขบิตอินพุตบางส่วน? มีวิธีการกลั่นกรองเพื่อคำนวณผลิตภัณฑ์ของเลขฐานสองสองตัวที่สามารถช่วยได้หรือไม่? หรือคุณมีวิธีอื่นในการแก้ไขปัญหานี้?