2015-10-26 5 views
7

में मॉड्यूलर समीकरण मैं एक चर में हास्केल में रैखिक और वर्गिक मॉड्यूलर समीकरण हल करना चाहता हूं। जिस तरह से मैं इसे अभी कर रहा हूं, समीकरण में x = [1..] डालने और शेष (expr `rem` p == 0, यदि समीकरण मॉड्यूलो p (आवश्यक रूप से एक प्राइम नहीं है) जहां expr में x है)। मुझे विश्वास है कि यह एक बहुत ही अक्षम प्रक्रिया है। तो क्या ऐसा करने का कोई बेहतर तरीका है?हास्केल

+0

[यह मदद कर सकता है] (http://math.stackexchange.com/a/261900/88047) –

+0

@BartekBanachewicz मैं एक रहा हूँ सामान्य विधि असल में अभिव्यक्ति में अन्य स्थिरांक भी हैं जो अन्य माध्यमों का उपयोग करके निर्धारित किए जाते हैं, इसलिए मैं इसे मैन्युअल रूप से हल नहीं कर सकता और फिर उन परिणामों का उपयोग कर सकता हूं। – Iguana

+0

क्या यह एक संख्यात्मक विधि/algrotihm है? यदि हां, तो आप संबंधित टैग जोड़ना चाहेंगे। –

उत्तर

5

सुलझाने मॉड्यूलर द्विघात समीकरण के संयोजन शामिल है:

हास्केल के लिए arithmoi पैकेज कार्यान्वयन है इन एल्गोरिदम के। विशेष रूप से, chineseRemainder, sqrtModP और sqrtModPP फ़ंक्शंस देखें।

यहाँ आप कुछ उदाहरण देख सकते काम किया:

http://www.mersennewiki.org/index.php/Modular_Square_Root

+2

बहुत सावधान रहें 'arithmoi' पैकेज। इसके प्राइम सिवाय कोड में कम से कम एक बग है जो अंतःविषय विभाजन दोषों का कारण बनता है। कोड * बेहद * बालों वाले और खराब दस्तावेज है, और नए रखरखाव वाले पैकेज के बावजूद कोई संकेत नहीं है कि यह जल्द ही किसी भी समय सुधार करेगा। – dfeuer