อ่าน 14 นาที
อัลกอริทึมของชูฟ
อัลกอริทึมของ Schoof เป็นอัลกอริทึมที่มีประสิทธิภาพในการนับจุดบน เส้นโค้งวงรี เหนือ ฟิลด์จำกัด อัลกอริทึมนี้มีประโยชน์ในด้าน การเข้ารหัสลับด้วยเส้นโค้งวงรี...
อัลกอริทึมของชูฟ
อัลกอริทึมของ Schoofเป็นอัลกอริทึมที่มีประสิทธิภาพในการนับจุดบนเส้นโค้งวงรีเหนือฟิลด์จำกัดอัลกอริทึมนี้มีประโยชน์ในด้านการเข้ารหัสลับด้วยเส้นโค้งวงรีซึ่งการทราบจำนวนจุดมีความสำคัญต่อการประเมินความยากของการแก้ปัญหาลอการิทึมแบบไม่ต่อเนื่องในกลุ่มจุดบนเส้นโค้งวงรี
อัลกอริทึมนี้ได้รับการตีพิมพ์โดยRené Schoofในปี 1985 และถือเป็นความก้าวหน้าทางทฤษฎี เนื่องจากเป็นอัลกอริทึมเชิงกำหนดแบบใช้เวลาพหุนามตัวแรกสำหรับการนับจุดบนเส้นโค้งวงรีก่อนหน้าอัลกอริทึมของ Schoof วิธีการนับจุดบนเส้นโค้งวงรี เช่น อัลกอริทึมแบบง่าย และ อัลกอริทึมแบบ ก้าวเล็กก้าวใหญ่ส่วนใหญ่แล้วยุ่งยากและใช้เวลาในการทำงานแบบเลขชี้กำลัง
บทความนี้อธิบายถึงแนวทางของ Schoof โดยเน้นที่แนวคิดทางคณิตศาสตร์ที่เป็นพื้นฐานของโครงสร้างอัลกอริทึม
การแนะนำ
ให้เป็นเส้นโค้งเชิงวงรีที่กำหนดบนฟิลด์จำกัดโดยที่สำหรับจำนวนเฉพาะ และจำนวนเต็มบนฟิลด์ที่มีลักษณะเฉพาะเส้นโค้งเชิงวงรีสามารถกำหนดได้ด้วยสมการไวเออร์สตรัส (แบบย่อ)
โดยที่เซตของจุดที่กำหนดบนประกอบด้วยคำตอบที่สอดคล้องกับสมการเส้นโค้งและจุดที่อนันต์โดยใช้กฎกลุ่มบนเส้นโค้งวงรีที่จำกัดเฉพาะเซตนี้ จะเห็นได้ว่าเซตนี้ก่อตัวเป็นกลุ่มอาเบเลียนโดยมีเป็นสมาชิกศูนย์ ในการนับจำนวนจุดบนเส้นโค้งวงรี เราคำนวณจำนวนสมาชิกของวิธีการของ Schoof ในการคำนวณจำนวนสมาชิกใช้ทฤษฎีบทของ Hasse เกี่ยวกับเส้นโค้งวงรีร่วมกับทฤษฎีบทเศษเหลือของจีนและพหุนามการหาร
ทฤษฎีบทของฮัสเซ่
ทฤษฎีบทของ Hasse กล่าวว่า ถ้าเป็นเส้นโค้งเชิงวงรีบนฟิลด์จำกัดแล้วจะสอดคล้องกับเงื่อนไข
ผลลัพธ์อันทรงพลังนี้ ซึ่งเสนอโดย Hasse ในปี 1934 ช่วยลดความซับซ้อนของปัญหาของเราโดยการจำกัดให้เหลือเพียงชุดความเป็นไปได้ที่จำกัด (แม้ว่าจะใหญ่ก็ตาม) โดยกำหนดให้เป็นและใช้ผลลัพธ์นี้ เราจะได้ว่า การคำนวณค่าของmodulo โดยที่เพียงพอสำหรับการกำหนดและดังนั้นแม้ว่าจะไม่มีวิธีที่มีประสิทธิภาพในการคำนวณโดยตรงสำหรับ ทั่วไปแต่ก็สามารถคำนวณสำหรับจำนวนเฉพาะขนาดเล็กได้อย่างมีประสิทธิภาพ เราเลือกเป็นเซตของจำนวนเฉพาะที่แตกต่างกัน โดยที่เมื่อกำหนดให้สำหรับทุกทฤษฎีบทเศษเหลือของจีนช่วยให้เราสามารถคำนวณได้
ในการคำนวณหาจำนวนเฉพาะเราใช้ทฤษฎีเอนโดมอร์ฟิซึมของโฟรเบนิอุสและพหุนามการหารโปรดทราบว่าการพิจารณาจำนวนเฉพาะนั้นไม่ใช่เรื่องเสียหาย เพราะเราสามารถเลือกจำนวนเฉพาะที่ใหญ่กว่ามาแทนที่ได้เสมอ เพื่อให้แน่ใจว่าผลคูณมีขนาดใหญ่พอ อย่างไรก็ตาม อัลกอริทึมของชูฟมักถูกนำมาใช้บ่อยที่สุดในการแก้ปัญหานี้เนื่องจากมีอัลกอริทึมที่มีประสิทธิภาพมากกว่า หรือที่เรียกว่าอัลกอริทึมแบบ adic สำหรับฟิลด์ที่มีลักษณะเฉพาะขนาดเล็ก
เอนโดมอร์ฟิซึมของฟรอเบนิอุส
เมื่อกำหนดเส้นโค้งวงรีที่นิยามไว้บนเราจะพิจารณาจุดบนบนซึ่งเป็นการปิดเชิงพีชคณิตของกล่าวคือ เราอนุญาตให้มีจุดที่มีพิกัดอยู่ใน การแปลงฟรอเบนิอุสของบนขยายไปยังเส้นโค้งวงรีโดย
แผนที่นี้คือเอกลักษณ์บนและสามารถขยายไปยังจุดที่อนันต์ได้ทำให้เป็นมอร์ฟิซึมกลุ่มจากไปยังตัวมันเอง
เอนโดมอร์ฟิซึมของฟรอเบนิอุสสอดคล้องกับพหุนามกำลังสอง ซึ่งเชื่อมโยงกับจำนวนสมาชิกของเซตโดยทฤษฎีบทต่อไปนี้:
ทฤษฎีบท:เอนโดมอร์ฟิซึมของฟรอเบนิอุสที่กำหนดโดยสอดคล้องกับสมการลักษณะเฉพาะ
- ที่ไหน
ดังนั้นเราจึงได้ว่าสำหรับทั้งหมดที่โดยที่ + หมายถึงการบวกบนเส้นโค้งวงรี และและ หมายถึงการคูณสเกลาร์ของด้วยและของ ด้วย ตาม ลำดับ
เราอาจลองคำนวณจุดเหล่านี้ในเชิงสัญลักษณ์โดยใช้ฟังก์ชันในวงแหวนพิกัดของ แล้วจึงค้นหาค่าของที่สอดคล้องกับสมการ อย่างไรก็ตาม ระดับดีกรีจะสูงมาก และวิธีการนี้จึงไม่สามารถนำไปใช้ได้จริง
แนวคิดของ Schoof คือการดำเนินการคำนวณนี้โดยจำกัดเฉพาะจุดที่มีลำดับสำหรับจำนวนเฉพาะขนาดเล็กต่างๆเมื่อกำหนดจำนวนเฉพาะคี่แล้วเราจะดำเนินการแก้ปัญหาการหาค่าซึ่งนิยามว่าสำหรับจำนวนเฉพาะที่กำหนดถ้าจุดอยู่ใน กลุ่ม ย่อยทอร์ชั่นแล้ว โดยที่คือจำนวนเต็มที่ไม่ซ้ำกันซึ่ง และสังเกตว่าและสำหรับจำนวนเต็มใดๆเราจะได้ดังนั้นจะมีลำดับเดียวกันกับดังนั้นสำหรับที่อยู่ในเราก็จะมีถ้าดังนั้นเราจึงลดปัญหาของเราลงเหลือการแก้สมการ
โดยที่และมีค่าเป็นจำนวนเต็มใน.
การคำนวณโมดูลัสจำนวนเฉพาะ
พหุนามการหารลำดับที่lมีลักษณะที่รากของมันคือ พิกัด xของจุดที่มีลำดับl อย่างแม่นยำ ดังนั้น การจำกัดการคำนวณให้อยู่ที่ จุด l -torsion หมายถึงการคำนวณนิพจน์เหล่านี้เป็นฟังก์ชันในวงแหวนพิกัดของE และมอดูลัสพหุนามการหารลำดับที่l กล่าว คือ เรากำลังทำงานในซึ่งหมายความว่าโดยเฉพาะอย่างยิ่ง ดีกรีของXและ Yที่กำหนดผ่าน มีค่าอย่าง มากที่สุด 1 ในyและอย่างมากที่สุด ในx
การคูณสเกลาร์สามารถทำได้โดยใช้ วิธีการ คูณสองเท่าแล้วบวกหรือโดยใช้พหุนามหารลำดับที่ th วิธีหลังให้ผลลัพธ์ดังนี้:
โดยที่เป็นพหุนามหารลำดับที่nโปรดทราบว่า เป็นฟังก์ชันในxเท่านั้น และใช้สัญลักษณ์แทน
เราต้องแบ่งปัญหาออกเป็นสองกรณี คือ กรณีที่และกรณีที่ โปรดทราบว่าความเท่าเทียมกันเหล่านี้ตรวจสอบโดยใช้โมดูลัส
กรณีที่ 1:
โดยใช้สูตรการบวกสำหรับกลุ่มเราจะได้:
โปรดทราบว่าการคำนวณนี้จะล้มเหลวหากสมมติฐานเรื่องความไม่เท่ากันนั้นไม่ถูกต้อง
ตอนนี้เราสามารถใช้ พิกัด xเพื่อจำกัดตัวเลือกให้เหลือเพียงสองความเป็นไปได้ คือ กรณีบวกและกรณีลบ จากนั้นจึงใช้ พิกัด yเพื่อพิจารณาว่ากรณีใดในสองกรณีนั้นเป็นจริง
ขั้นแรก เราจะแสดงว่าXเป็นฟังก์ชันของxเพียงอย่างเดียว พิจารณาเนื่องจากเป็นจำนวนคู่ โดยการแทนที่ด้วยเราจึงเขียนนิพจน์ใหม่ได้เป็น
และมีสิ่งนั้น
ถ้าหากสำหรับบางคนแล้ว ก็ถือว่าน่าพอใจ
สำหรับ จุดบิดlทั้งหมดP
ดังที่กล่าวไว้ก่อนหน้านี้ การใช้Yและตอนนี้เราสามารถระบุได้ว่าค่าใดในสองค่าของ( หรือ) ที่ใช้ได้ผล ซึ่งจะให้ค่าของอัลกอริทึมของ Schoof จะเก็บค่าของ ไว้ในตัวแปร สำหรับจำนวนเฉพาะ lแต่ละตัวที่พิจารณา
กรณีที่ 2:
เราเริ่มต้นด้วยสมมติฐานที่ว่า. เนื่องจากlเป็นจำนวนเฉพาะคี่ จึงเป็นไปไม่ได้ที่และดังนั้น. สมการลักษณะเฉพาะให้ผลลัพธ์ว่า. และด้วยเหตุนี้ว่า. ซึ่งหมายความว่าqเป็นกำลังสองมอดูล lให้ . คำนวณในและตรวจสอบว่า. ถ้าเป็นเช่นนั้นจะขึ้นอยู่กับพิกัด y
ถ้าqไม่ใช่กำลังสองมอดูล lหรือถ้าสมการไม่เป็นจริงสำหรับwและ ใดๆ สมมติฐานของเราที่ว่า นั้นเป็นเท็จ ดังนั้นสมการลักษณะเฉพาะให้ผลลัพธ์เป็น
กรณีเพิ่มเติม
ถ้าจำได้ การพิจารณาเบื้องต้นของเราละเว้นกรณีของเนื่องจากเราถือว่าqเป็นจำนวนคี่และโดยเฉพาะอย่างยิ่งก็ต่อเมื่อมีสมาชิกที่มีอันดับ 2 เท่านั้น ตามนิยามของการบวกในกลุ่ม สมาชิกใดๆ ที่มีอันดับ 2 จะต้องอยู่ในรูปดังนั้นก็ต่อเมื่อพหุนามมีรากในก็ต่อเมื่อ
อัลกอริทึม
ป้อนข้อมูล: 1. เส้นโค้งวงรี 2. จำนวนเต็มqสำหรับฟิลด์จำกัดที่มี. ผลลัพธ์: จำนวนจุดของEหารด้วย. เลือกเซตของจำนวนเฉพาะคี่Sที่ไม่มีp อยู่ใน เซตโดยกำหนดให้ถ้ามิฉะนั้นคำนวณพหุนามการหาร การคำนวณทั้งหมดในลูปด้านล่างดำเนินการในริงFor do : ให้ เป็นจำนวนเต็มที่ไม่ซ้ำกันซึ่ง และคำนวณ, และถ้าแล้วคำนวณสำหรับdo : ถ้าแล้วถ้าแล้วมิฉะนั้น มิฉะนั้นถ้าqเป็นกำลังสองมอดูล l แล้วคำนวณwด้วยคำนวณถ้าแล้วมิฉะนั้น ถ้าแล้วมิฉะนั้นมิฉะนั้น ใช้ ทฤษฎีบทเศษเหลือ ของจีนเพื่อคำนวณtมอดูลN จากสมการโดยที่ เอาต์พุต
ความซับซ้อน
การคำนวณส่วนใหญ่เกิดขึ้นจากการประเมินค่าของและสำหรับจำนวนเฉพาะแต่ละตัวนั่นคือการคำนวณ, , , สำหรับจำนวนเฉพาะแต่ละตัวซึ่งเกี่ยวข้องกับการยกกำลังในริงและต้องใช้การคูณ เนื่องจากดีกรีของคือแต่ละองค์ประกอบในริงจึงเป็นพหุนามดีกรีตามทฤษฎีบทจำนวนเฉพาะมีจำนวนเฉพาะขนาด ประมาณ ซึ่งทำให้ได้ว่าและเราได้ว่าดังนั้นการคูณแต่ละครั้งในริงต้องใช้การคูณซึ่งต้องใช้การดำเนินการบิต ในทั้งหมด จำนวนการดำเนินการบิตสำหรับจำนวนเฉพาะแต่ละตัวคือเนื่องจากการคำนวณนี้ต้องดำเนินการสำหรับจำนวนเฉพาะแต่ละตัว ความซับซ้อนโดยรวมของอัลกอริทึมของ Schoof จึงกลายเป็นการใช้เลขคณิตพหุนามและจำนวนเต็มที่รวดเร็วจะลดความซับซ้อนนี้เหลือ
การปรับปรุงอัลกอริทึมของ Schoof
ในช่วงทศวรรษ 1990 โนอัม เอลคีส์และต่อมาเอโอแอล แอตกิน ได้ คิดค้นการปรับปรุงอัลกอริทึมพื้นฐานของชูฟ โดยจำกัดเซตของจำนวนเฉพาะที่พิจารณาก่อนหน้านี้ให้เหลือเฉพาะจำนวนเฉพาะประเภทหนึ่ง ซึ่งต่อมาเรียกว่าจำนวนเฉพาะเอลคีส์และจำนวนเฉพาะแอตกิน ตามลำดับ จำนวนเฉพาะเรียกว่าจำนวนเฉพาะเอลคีส์ ถ้าสมการลักษณะเฉพาะ: แยกออกได้เหนือในขณะที่จำนวนเฉพาะแอตกินคือจำนวนเฉพาะที่ไม่ใช่จำนวนเฉพาะเอลคีส์ แอตกินแสดงให้เห็นวิธีการรวมข้อมูลที่ได้จากจำนวนเฉพาะแอตกินกับข้อมูลที่ได้จากจำนวนเฉพาะเอลคีส์เพื่อสร้างอัลกอริทึมที่มีประสิทธิภาพ ซึ่งต่อมาเป็นที่รู้จักในชื่ออัลกอริทึมชูฟ-เอลคีส์-แอตกินปัญหาแรกที่ต้องแก้ไขคือการพิจารณาว่าจำนวนเฉพาะที่กำหนดให้เป็นจำนวนเฉพาะเอลคีส์หรือแอตกิน ในการทำเช่นนั้น เราใช้พหุนามมอดูลาร์ ซึ่งมาจากการศึกษาฟอร์มมอดูลาร์และการตีความเส้นโค้งวงรีเหนือจำนวนเชิงซ้อนเป็นแลตทิซ เมื่อเรากำหนดได้แล้วว่าเราอยู่ในกรณีใด แทนที่จะใช้พหุนามหารเราสามารถใช้พหุนามที่มีดีกรีต่ำกว่าพหุนามหารที่สอดคล้องกันได้แทนที่จะ ใช้พหุนาม หาร เพื่อการใช้งานที่มีประสิทธิภาพ จะใช้อัลกอริธึมการหาค่ารากแบบความน่าจะเป็น ซึ่งทำให้เป็นอัลกอริธึมลาสเวกัสแทนที่จะเป็นอัลกอริธึมแบบกำหนด ภายใต้สมมติฐานเชิงอนุมานว่าประมาณครึ่งหนึ่งของจำนวนเฉพาะจนถึงขอบเขตที่กำหนดเป็นจำนวนเฉพาะเอลกีส์ จะได้อัลกอริธึมที่มีประสิทธิภาพมากกว่าของชูฟ โดยมีเวลาการทำงานที่คาดหวังคือ เมื่อใช้เลขคณิตแบบง่าย และเมื่อใช้เลขคณิตแบบเร็ว แม้ว่าสมมติฐานเชิงอนุมานนี้จะเป็นที่ทราบกันว่าใช้ได้กับเส้นโค้งวงรีส่วนใหญ่ แต่ก็ไม่เป็นที่ทราบกันว่าใช้ได้ในทุกกรณี แม้ภายใต้GRHก็ตาม
การนำไปใช้
ไมค์ สก็อตต์ ได้เขียนโปรแกรมอัลกอริธึมหลายตัวด้วยภาษาC++โปรแกรมเหล่านี้ใช้งานได้ฟรี (ไม่มีข้อกำหนดและเงื่อนไขใดๆ) และใช้ ไลบรารี MIRACLซึ่งเผยแพร่ภายใต้ลิขสิทธิ์ AGPLv3
- การนำอัลกอริทึมของ Schoof มาใช้กับจำนวนเฉพาะ
- การนำอัลกอริทึมของ Schoof ไป ใช้สำหรับ.
ดูเพิ่มเติม
สรุปเนื้อหา
ข้อมูลสำคัญจากบทความ
ข้อมูลสำคัญเกี่ยวกับ อัลกอริทึมของชูฟ
อัลกอริทึมของ Schoof เป็นอัลกอริทึมที่มีประสิทธิภาพในการนับจุดบน เส้นโค้งวงรี เหนือ ฟิลด์จำกัด อัลกอริทึมนี้มีประโยชน์ในด้าน การเข้ารหัสลับด้วยเส้นโค้งวงรี...
การแนะนำ
ให้เป็น เส้นโค้งเชิงวงรี ที่กำหนดบนฟิลด์จำกัดโดยที่สำหรับจำนวนเฉพาะ และจำนวนเต็มบนฟิลด์ที่มีลักษณะเฉพาะเส้นโค้งเชิงวงรีสามารถกำหนดได้ด้วยสมการไวเออร์สตรัส (แบบย่อ) อี {\displaystyle E} เอฟ q {\displaystyle \mathbb {F} _{q}} q = พี n {\displaystyle q=p^{n}} พี...
ทฤษฎีบทของฮัสเซ่
ทฤษฎีบทของ Hasse กล่าวว่า ถ้าเป็นเส้นโค้งเชิงวงรีบนฟิลด์จำกัดแล้วจะสอดคล้องกับเงื่อนไข อี / เอฟ q {\displaystyle E/\mathbb {F} _{q}} เอฟ q {\displaystyle \mathbb {F} _{q}} # อี ( เอฟ q ) {\displaystyle \#E(\mathbb {F} _{q})}
เอนโดมอร์ฟิซึมของฟรอเบนิอุส
เมื่อกำหนดเส้นโค้งวงรีที่นิยามไว้บนเราจะพิจารณาจุดบนบนซึ่งเป็นการ ปิดเชิงพีชคณิต ของกล่าวคือ เราอนุญาตให้มีจุดที่มีพิกัดอยู่ใน การแปลงฟ รอเบนิอุส ของบนขยายไปยังเส้นโค้งวงรีโดย อี {\displaystyle E} เอฟ q {\displaystyle \mathbb {F} _{q}} อี {\displaystyle E}...