कंप्यूटर बीजगणित: Difference between revisions

From Vigyanwiki
No edit summary
 
(21 intermediate revisions by 5 users not shown)
Line 1: Line 1:
{{short description|Scientific area at the interface between computer science and mathematics}}[[File:RischIntegration.PNG|thumb|500px|बीजगणितीय कार्य का प्रतीकात्मक एकीकरण {{math|1=f(x) = {{sfrac|x|{{sqrt|x<sup>4</sup> + 10x<sup>2</sup> - 96x - 71}}}}}} कंप्यूटर बीजगणित प्रणाली Axiom का उपयोग करना]]
{{short description|Scientific area at the interface between computer science and mathematics}}[[File:RischIntegration.PNG|thumb|500px|बीजगणितीय कार्य का प्रतीकात्मक एकीकरण {{math|1=f(x) = {{sfrac|x|{{sqrt|x<sup>4</sup> + 10x<sup>2</sup> - 96x - 71}}}}}} कंप्यूटर बीजगणित प्रणाली Axiom का उपयोग करना]]
गणित और कंप्यूटर विज्ञान में,<ref>{{Cite web |title=ACM Association in computer algebra |url=https://www.sigsam.org/cca/}}</ref> कंप्यूटर बीजगणित, जिसे प्रतीकात्मक गणना या बीजगणितीय गणना भी कहा जाता है, एक वैज्ञानिक क्षेत्र है जो गणितीय अभिव्यक्तियों और अन्य गणितीय वस्तुओं में हेरफेर करने के लिए एल्गोरिदम और सॉफ्टवेयर के अध्ययन और विकास को संदर्भित करता है। यद्यपि कंप्यूटर बीजगणित को वैज्ञानिक कंप्यूटिंग का एक उप -क्षेत्र माना जा सकता है, उन्हें आम तौर पर अलग -अलग क्षेत्र के रूप में माना जाता है क्योंकि वैज्ञानिक कंप्यूटिंग आमतौर पर अनुमानित फ़्लोटिंग पॉइंट नंबरों के साथ संख्यात्मक गणना पर आधारित होती है, जबकि प्रतीकात्मक गणना चर के साथ सटीक 'गणना पर जोर देती है, जो कि चर युक्त अभिव्यक्तियों के साथ होती है। कोई दिया गया मूल्य नहीं है और प्रतीकों के रूप में हेरफेर किया जाता है।
गणित और कंप्यूटर विज्ञान में,<ref>{{Cite web |title=ACM Association in computer algebra |url=https://www.sigsam.org/cca/}}</ref> कंप्यूटर बीजगणित, जिसे प्रतीकात्मक संगणना या बीजगणितीय संगणना भी कहा जाता है, एक वैज्ञानिक क्षेत्र है जो गणितीय अभिव्यक्तियों और अन्य गणितीय वस्तुओं में हेरफेर करने के लिए एल्गोरिदम और सॉफ़्टवेयर के अध्ययन और विकास को संदर्भित करता है। यद्यपि कंप्यूटर बीजगणित को वैज्ञानिक संगणना का एक उप-क्षेत्र माना जा सकता है, उन्हें आम तौर पर अलग -अलग क्षेत्र के रूप में माना जाता है क्योंकि वैज्ञानिक संगणना आमतौर पर चल बिन्दु संख्या के साथ संख्यात्मक गणना पर आधारित होती है, जबकि सांकेतिक गणना उन चरों वाले अभिव्यक्तियों के साथ सटीक गणना पर जोर देती है जिनके पास कोई मूल्य नहीं है और प्रतीकों के रूप में हेरफेर किया जाता है।


प्रतीकात्मक गणना करने वाले सॉफ़्टवेयर अनुप्रयोगों को कंप्यूटर बीजगणित सिस्टम  कहा जाता है, सिस्टम 'शब्द के साथ मुख्य अनुप्रयोगों की जटिलता के लिए, जिसमें शामिल हैं, कम से कम, कंप्यूटर में गणितीय डेटा का प्रतिनिधित्व करने की एक विधि, एक उपयोगकर्ता, एक उपयोगकर्ता प्रोग्रामिंग भाषा (आमतौर पर कार्यान्वयन के लिए उपयोग की जाने वाली भाषा से अलग), एक समर्पित मेमोरी मैनेजर, गणितीय अभिव्यक्तियों के इनपुट/आउटपुट के लिए एक उपयोगकर्ता इंटरफ़ेस, सामान्य संचालन करने के लिए दिनचर्या का एक बड़ा सेट, जैसे कि अभिव्यक्तियों का सरलीकरण, चेन नियम का उपयोग करके भेदभाव , बहुपद कारक, अनिश्चित एकीकरण, आदि।
सांकेतिक गणना करने वाले सॉफ्टवेयर अनुप्रयोगों को कंप्यूटर बीजगणित प्रणाली कहा जाता है, जिसमें शब्द प्रणाली मुख्य अनुप्रयोगों की जटिलता की ओर संकेत करती है, जिसमें कम से कम, कंप्यूटर में गणितीय आँकड़े का प्रतिनिधित्व करने की एक विधि, एक उपयोगकर्ता प्रोग्रामिंग भाषा (आमतौर पर कार्यान्वयन के लिए उपयोग की भाषा से अलग), सक्षम स्मृति प्रबंधक, गणितीय अभिव्यक्तियों के इनपुट/आउटपुट के लिए उपयोगकर्ता इंटरफेस, सामान्य संचालन करने के लिए एक बड़ा ढाचा, श्रृंखला नियम का उपयोग करते हुए भिन्नकरण, बहुपदकरण, अनिश्चितकालीन एकीकरण आदि शामिल हैं।


कंप्यूटर बीजगणित का उपयोग गणित में प्रयोग करने और संख्यात्मक कार्यक्रमों में उपयोग किए जाने वाले सूत्रों को डिजाइन करने के लिए व्यापक रूप से किया जाता है। इसका उपयोग पूर्ण वैज्ञानिक संगणनाओं के लिए भी किया जाता है, जब विशुद्ध रूप से संख्यात्मक तरीके विफल होते हैं, जैसे कि सार्वजनिक कुंजी क्रिप्टोग्राफी में, या कुछ गैर-रैखिक समस्याओं के लिए।
कंप्यूटर बीजगणित व्यापक रूप से गणित में प्रयोग करने और संख्यात्मक कार्यक्रमों में उपयोग किए जाने वाले सूत्रों को डिजाइन करने के लिए उपयोग किया जाता है। इसका उपयोग पूर्ण वैज्ञानिक संगणनाओं जैसे कि सार्वजनिक कुंजी क्रिप्टोग्राफी या कुछ गैर-रैखिक समस्याओं में लिए भी किया जाता है, जब पूर्ण रुप से संख्यात्मक तरीके विफल होते हैं।


== शब्दावली ==
== शब्दावली ==


कुछ लेखक गणितीय सूत्रों के साथ गणना के अलावा प्रतीकात्मक गणना के प्रकारों को संदर्भित करने के लिए बाद के नाम का उपयोग करके प्रतीकात्मक गणना से कंप्यूटर बीजगणित को अलग करते हैं।कुछ लेखक गणितीय पहलू के लिए विषय और कंप्यूटर बीजगणित के कंप्यूटर विज्ञान पहलू के लिए प्रतीकात्मक गणना का उपयोग करते हैं।<ref>{{cite conference | first = Stephen M. | last = Watt | date = 2006 | url = http://www.csd.uwo.ca/~watt/pub/reprints/2006-tc-sympoly.pdf | title = Making Computer Algebra More Symbolic (Invited) | conference = Proc. Transgressive Computing 2006: A conference in honor of Jean Della Dora, (TC 2006) | pages = 43–49 }}</ref> कुछ भाषाओं में क्षेत्र का नाम इसके अंग्रेजी नाम का प्रत्यक्ष अनुवाद नहीं है।आमतौर पर, इसे फ्रेंच में गणना फॉर्मल कहा जाता है, जिसका अर्थ औपचारिक गणना है।यह नाम इस क्षेत्र में औपचारिक तरीकों के साथ संबंधों को दर्शाता है।
कुछ लेखक गणितीय सूत्र के साथ गणना के अलावा अन्य प्रतीकात्मक गणना के प्रकारों को संदर्भित करने के लिए दूसरेे नाम का उपयोग करके कंप्यूटर बीजगणित को प्रतीकात्मक गणना से अलग करते हैं। कुछ लेखक गणितीय पहलू के लिए कंप्यूटर विज्ञान और कंप्यूटर बीजगणित के लिए प्रतीकात्मक गणना का उपयोग करते हैं।<ref>{{cite conference | first = Stephen M. | last = Watt | date = 2006 | url = http://www.csd.uwo.ca/~watt/pub/reprints/2006-tc-sympoly.pdf | title = Making Computer Algebra More Symbolic (Invited) | conference = Proc. Transgressive Computing 2006: A conference in honor of Jean Della Dora, (TC 2006) | pages = 43–49 }}</ref> कुछ भाषाओं में क्षेत्र का नाम उसके अंग्रेज़ी नाम का सीधा अनुवाद नहीं है। आमतौर पर, इसे फ्रेंच में कैलकुलेशन फॉर्मेल कहा जाता है, जिसका अर्थ "औपचारिक गणना" है। यह नाम औपचारिक तरीकों के साथ इस क्षेत्र के संबंधों को दर्शाता है।


प्रतीकात्मक गणना को भी, अतीत में, प्रतीकात्मक हेरफेर, बीजगणितीय हेरफेर, प्रतीकात्मक प्रसंस्करण, प्रतीकात्मक गणित, या प्रतीकात्मक बीजगणित के रूप में संदर्भित किया गया है, लेकिन ये शब्द, जो गैर-कम्प्यूटेशनल हेरफेर का भी उल्लेख करते हैं, अब कंप्यूटर के संदर्भ में उपयोग नहीं किए जाते हैं।बीजगणित।
प्रतीकात्मक अभिकलन को पूर्व में, बीजगणितीय हेरफेर, प्रतीकात्मक प्रसंस्करण, प्रतीकात्मक गणित, या प्रतीकात्मक बीजगणित के रूप में भी संदर्भित किया गया है, लेकिन ये शब्द, जो गैर-संगणनात्मक हेरफेर को भी संदर्भित करते हैं, अब कंप्यूटर के संदर्भ में उपयोग नहीं किए जाते हैं।


== वैज्ञानिक समुदाय ==
== वैज्ञानिक समुदाय ==
कोई सीखा समाज नहीं है जो कंप्यूटर बीजगणित के लिए विशिष्ट हो, लेकिन इस फ़ंक्शन को एसोसिएशन फॉर कम्प्यूटिंग मशीनरी के विशेष रुचि समूह द्वारा SIGSAM (विशेष रुचि समूह (विशेष रुचि समूह (
ऐसा कोई विद्वान समाज नहीं है जो कंप्यूटर बीजगणित के लिए विशिष्ट हो, लेकिन यह कार्य SIGSAM (प्रतीकात्मक और बीजगणितीय हेरफेर पर विशेष रुचि समूह) नामक संगणना उपकरण समिति के विशेष समूह द्वारा स्वीकृत किया जाता है।<ref>[http://www.sigsam.org SIGSAM official site]</ref>
प्रतीकात्मक और बीजगणितीय हेरफेर पर)<ref>[http://www.sigsam.org SIGSAM official site]</ref>


कंप्यूटर बीजगणित पर कई वार्षिक सम्मेलन होते हैं, जिनमें प्रमुख ISSAC (प्रतीकात्मक और बीजगणितीय संगणना पर अंतर्राष्ट्रीय संगोष्ठी) है, जो नियमित रूप से SIGSAM द्वारा प्रायोजित किया जाता है।<ref>{{Cite web |url=http://www.sigsam.org/conferences/index.phtml |title=SIGSAM list of conferences |access-date=2012-11-15 |archive-url=https://web.archive.org/web/20130808052201/http://www.sigsam.org/conferences/index.phtml |archive-date=2013-08-08 |url-status=dead }}</ref>


यहां कंप्यूटर बीजगणित पर कई वार्षिक सम्मेलन हैं, प्रीमियर ISSAC (प्रतीकात्मक और बीजगणितीय गणना पर अंतर्राष्ट्रीय संगोष्ठी) है, जो नियमित रूप से सिग्सम द्वारा प्रायोजित है।<ref>{{Cite web |url=http://www.sigsam.org/conferences/index.phtml |title=SIGSAM list of conferences |access-date=2012-11-15 |archive-url=https://web.archive.org/web/20130808052201/http://www.sigsam.org/conferences/index.phtml |archive-date=2013-08-08 |url-status=dead }}</ref>
यहां कंप्यूटर बीजगणित में विशेषज्ञता वाली कई पत्रिकाएँ हैं, जिनमें से सर्वश्रेष्ठ एक जर्नल ऑफ़ सिम्बोलिक कंप्यूटेशन है जिसकी स्थापना 1985 में ब्रूनो बुचबर्गर (Bruno Buchberge) ने की थी।<ref>{{cite book |title=Computer Algebra and Symbolic Computation: Mathematical Methods |url=https://archive.org/details/computeralgebras00cohe_792 |url-access=limited |last=Cohen |first=Joel S. | date = 2003 |publisher=AK Peters, Ltd. |isbn=978-1-56881-159-8 |page=[https://archive.org/details/computeralgebras00cohe_792/page/n33 14] }}</ref> कई अन्य पत्रिकाएँ भी हैं जो नियमित रूप से कंप्यूटर बीजगणित में लेख प्रकाशित करती हैं।<ref>[http://www.sigsam.org/journals.phtml SIGSAM list of journals]</ref>
 
 
यहां कंप्यूटर बीजगणित में विशेषज्ञता वाले कई पत्रिकाएँ हैं, जो शीर्ष एक जर्नल ऑफ प्रतीकात्मक संगणना है जो 1985 में ब्रूनो बुचबर्गर द्वारा स्थापित किया गया था।<ref>{{cite book |title=Computer Algebra and Symbolic Computation: Mathematical Methods |url=https://archive.org/details/computeralgebras00cohe_792 |url-access=limited |last=Cohen |first=Joel S. | date = 2003 |publisher=AK Peters, Ltd. |isbn=978-1-56881-159-8 |page=[https://archive.org/details/computeralgebras00cohe_792/page/n33 14] }}</ref> कई अन्य पत्रिकाएँ भी हैं जो नियमित रूप से कंप्यूटर बीजगणित में लेख प्रकाशित करती हैं।<ref>[http://www.sigsam.org/journals.phtml SIGSAM list of journals]</ref>


== कंप्यूटर विज्ञान पहलू ==
== कंप्यूटर विज्ञान पहलू ==


==== '''डेटा प्रतिनिधित्व''' ====
चूंकि संख्यात्मक सॉफ्टवेयर अनुमानित संख्यात्मक गणना के लिए अत्यधिक कुशल है, कंप्यूटर बीजगणित में, सटीक रूप से प्रतिनिधित्व किए गए आँकड़े के साथ सटीक गणना पर जोर देना आम बात है। इस तरह के एक सटीक प्रतिनिधित्व का मतलब है कि, भले ही आउटपुट का आकार छोटा हो, गणना के दौरान उत्पन्न मध्यवर्ती आँकड़े अप्रत्याशित तरीके से बढ़ सकता है। इस व्यवहार को अभिव्यक्ति कहा जाता है। इस समस्या को दूर करने के लिए, आँकड़े के प्रतिनिधित्व के साथ-साथ उन्हें हेरफेर करने वाले एल्गोरिदम में विभिन्न तरीकों का उपयोग किया जाता है।


=== डेटा प्रतिनिधित्व ===
==== नंबर ====
 
संख्यात्मक गणना में इस्तेमाल की जाने वाली सामान्य संख्या प्रणाली स्थिर परिबद्ध आकार के फ्लोटिंग पाइंट नंबर और पूर्णांक हैं। इनमें से कोई भी अभिव्यक्ति के कारण कंप्यूटर बीजगणित के लिए सुविधाजनक नहीं है।{{Citation needed|date=February 2019}}
चूंकि संख्यात्मक सॉफ्टवेयर अनुमानित संख्यात्मक गणना के लिए अत्यधिक कुशल है, यह कंप्यूटर बीजगणित में, बिल्कुल प्रतिनिधित्व किए गए डेटा के साथ सटीक गणना पर जोर देने के लिए आम है।इस तरह के एक सटीक प्रतिनिधित्व का अर्थ है कि, तब भी जब आउटपुट का आकार छोटा होता है, एक गणना के दौरान उत्पन्न मध्यवर्ती डेटा अप्रत्याशित तरीके से बढ़ सकता है।इस व्यवहार को अभिव्यक्ति प्रफुल्लित कहा जाता है।इस समस्या को कम करने के लिए, डेटा के प्रतिनिधित्व में विभिन्न तरीकों का उपयोग किया जाता है, साथ ही साथ एल्गोरिदम जो उन्हें हेरफेर करते हैं।


==== नंबर ====
इसलिए, कंप्यूटर बीजगणित में उपयोग किए जाने वाले मूल संख्या गणितज्ञों के पूर्णांक हैं, आमतौर पर गणना के कुछ आधार में अंकों के एक असीम हस्ताक्षरित अनुक्रम के द्वारा प्रतिनिधित्व किया जाता है, आमतौर पर मशीन शब्द द्वारा अनुमत सबसे बड़ा आधार है। ये पूर्णांक उन परिमेय संख्याओं को परिभाषित करने की अनुमति देते हैं, जो दो पूर्णांकों के अपरिवर्तनीय अंश हैं।
संख्यात्मक संगणना में उपयोग किए जाने वाले सामान्य संख्या प्रणाली एक निश्चित बाउंड आकार के तैरने वाले बिंदु संख्या और पूर्णांक हैं।इनमें से कोई भी कंप्यूटर बीजगणित के लिए सुविधाजनक नहीं है, अभिव्यक्ति प्रफुल्लित होने के कारण।{{Citation needed|date=February 2019}}
इसलिए, कंप्यूटर बीजगणित में उपयोग किए जाने वाले बुनियादी संख्या गणितज्ञों के पूर्णांक हैं, जिन्हें आमतौर पर अंक के कुछ आधार में अंकों के एक अनबाउंड हस्ताक्षरित अनुक्रम द्वारा दर्शाया गया है, आमतौर पर मशीन शब्द द्वारा अनुमत सबसे बड़ा आधार।ये पूर्णांक तर्कसंगत संख्याओं को परिभाषित करने की अनुमति देते हैं, जो दो पूर्णांक के अप्रासंगिक अंश हैं।


प्रोग्रामिंग अंकगणितीय संचालन का एक कुशल कार्यान्वयन एक कठिन काम है।इसलिए, अधिकांश मुफ्त कंप्यूटर बीजगणित प्रणाली और कुछ वाणिज्यिक जैसे कि मैथेमेटिका और मेपल (सॉफ्टवेयर), जीएमपी लाइब्रेरी का उपयोग करते हैं, जो इस प्रकार एक वास्तविक मानक है।
अंकगणितीय संक्रियाओं के कुशल कार्यान्वयन की प्रोग्रामिंग करना एक कठिन कार्य है। इसलिए, अधिकांश मुफ्त कंप्यूटर बीजगणित प्रणाली और कुछ व्यावसायिक जैसे गणित और मेपल (Maple) (सॉफ्टवेयर), GMP  पुस्तकालय का उपयोग करते हैं, जो इस प्रकार एक वास्तविक मानक है।


==== अभिव्यक्ति ====
==== अभिव्यक्ति ====


[[File:Cassidy.1985.015.gif|thumb|400px|1985 के मास्टर की थीसिस से, लिस्प ट्री के रूप में अभिव्यक्ति (8-6)*(3+1) का प्रतिनिधित्व।<ref>{{cite thesis | type=Master's thesis | url=https://commons.wikimedia.org/wiki/File:The_feasibility_of_automatic_storage_reclamation_with_concurrent_program_execution_in_a_LISP_environment._(IA_feasibilityofaut00cass).pdf | author=Kevin G. Cassidy | title=The Feasibility of Automatic Storage Reclamation with Concurrent Program Execution in a LISP Environment | institution=Naval Postgraduate School, Monterey/CA | date=Dec 1985 }} Here: p.15</ref>]]
[[File:Cassidy.1985.015.gif|thumb|400px|1985 के मास्टर की थीसिस से, लिस्प ट्री के रूप में अभिव्यक्ति (8-6)*(3+1) का प्रतिनिधित्व।<ref>{{cite thesis | type=Master's thesis | url=https://commons.wikimedia.org/wiki/File:The_feasibility_of_automatic_storage_reclamation_with_concurrent_program_execution_in_a_LISP_environment._(IA_feasibilityofaut00cass).pdf | author=Kevin G. Cassidy | title=The Feasibility of Automatic Storage Reclamation with Concurrent Program Execution in a LISP Environment | institution=Naval Postgraduate School, Monterey/CA | date=Dec 1985 }} Here: p.15</ref>]]
संख्याओं और चर को छोड़कर, प्रत्येक गणितीय अभिव्यक्ति को एक ऑपरेटर के प्रतीक के रूप में देखा जा सकता है, जिसके बाद ऑपरेंड्स के अनुक्रम के बाद।कंप्यूटर बीजगणित सॉफ्टवेयर में, अभिव्यक्तियों को आमतौर पर इस तरह से दर्शाया जाता है।यह प्रतिनिधित्व बहुत लचीला है, और कई चीजें जो पहली नज़र में गणितीय अभिव्यक्ति नहीं लगती हैं, का प्रतिनिधित्व और हेरफेर किया जा सकता है।उदाहरण के लिए, एक समीकरण एक ऑपरेटर के रूप में "=" के साथ एक अभिव्यक्ति है, एक मैट्रिक्स को एक ऑपरेटर के रूप में "मैट्रिक्स" के साथ एक अभिव्यक्ति के रूप में दर्शाया जा सकता है और इसकी पंक्तियों को ऑपरेटर के रूप में।
संख्याओं और चरों को छोड़कर, प्रत्येक गणितीय व्यंजक को एक संकारक के प्रतीक के रूप में देखा जा सकता है जिसके बाद संकार्यों का एक क्रम होता है। कंप्यूटर बीजगणित सॉफ्टवेयर में, अभिव्यक्तियों को आमतौर पर इस तरह से दर्शाया जाता है। यह प्रतिनिधित्व बहुत लचीला है, और कई चीजें जो पहली नज़र में गणितीय अभिव्यक्ति नहीं लगती हैं, उनका प्रतिनिधित्व और हेरफेर किया जा सकता है। उदाहरण के लिए, एक समीकरण एक ऑपरेटर के रूप में "=" के साथ एक अभिव्यक्ति है, एक मैट्रिक्स को एक ऑपरेटर के रूप में "मैट्रिक्स" के साथ एक अभिव्यक्ति के रूप में और इसकी पंक्तियों को ऑपरेंड के रूप में दर्शाया जा सकता है।


यहां तक कि कार्यक्रमों को ऑपरेटर "प्रक्रिया" और, कम से कम, दो ऑपरेंड, मापदंडों और शरीर की सूची के साथ अभिव्यक्ति के रूप में माना जा सकता है, जो एक ऑपरेटर के रूप में "शरीर" के साथ एक अभिव्यक्ति है और ऑपरेंड के रूप में निर्देशों का एक अनुक्रम है।इसके विपरीत, किसी भी गणितीय अभिव्यक्ति को एक कार्यक्रम के रूप में देखा जा सकता है।उदाहरण के लिए, अभिव्यक्ति {{math|''a'' + ''b''}} इसके अलावा के लिए एक कार्यक्रम के रूप में देखा जा सकता है {{mvar|''a''}} तथा {{mvar|''b''}} मापदंडों के रूप में।इस कार्यक्रम को निष्पादित करने के लिए दिए गए मूल्यों के लिए अभिव्यक्ति का मूल्यांकन करना शामिल है {{mvar|''a''}} तथा {{mvar|''b''}};यदि उनके पास कोई मूल्य नहीं है - तो वे अनिश्चित हैं-, मूल्यांकन का परिणाम केवल इसका इनपुट है।
यहां तक कि कार्यक्रमों को भी प्रचालक के साथ अभिव्यक्तियों के रूप में माना जा सकता है और प्रदर्शित किया जा सकता है और कम से कम दो संकार्य, मापदंडों की सूची और समूह, जो स्वयं एक ऑपरेटर के रूप में ‘समूह’ के साथ एक अभिव्यक्ति है और संकार्य के रूप में निर्देशों का एक अनुक्रम है। इसके विपरीत, किसी भी गणितीय अभिव्यक्ति को एक कार्यक्रम के रूप में देखा जा सकता है।उदाहरण के लिए, “a + b ” अभिव्यक्‍ति को इसके अतिरिक्‍त कार्यक्रम के रूप में देखा जा सकता है, जिसमें a और b पैरामीटर हैं ।इस कार्यक्रम को निष्पादित करने में दिए गए मानों के लिए अभिव्यक्ति का मूल्यांकन करना शामिल है a और b; यदि उनके पास कोई मूल्य नहीं है - यानी वे अनिश्चित हैं - मूल्यांकन का परिणाम केवल इसका इनपुट है।


विलंबित मूल्यांकन की यह प्रक्रिया कंप्यूटर बीजगणित में मौलिक है।उदाहरण के लिए, समीकरणों का ऑपरेटर "=" भी है, अधिकांश कंप्यूटर बीजगणित प्रणालियों में, समानता परीक्षण के कार्यक्रम का नाम: आम तौर पर, एक समीकरण का मूल्यांकन एक समीकरण में होता है, लेकिन, जब एक समानता परीक्षण की आवश्यकता होती है, - या तो स्पष्ट रूप से उपयोगकर्ता द्वारा "एक बूलियन के मूल्यांकन" कमांड के माध्यम से, या किसी कार्यक्रम के अंदर एक परीक्षण के मामले में सिस्टम द्वारा स्वचालित रूप से शुरू किया गया है - फिर एक बूलियन 0 या 1 के मूल्यांकन को निष्पादित किया जाता है।
विलंबित मूल्यांकन की यह प्रक्रिया कंप्यूटर बीजगणित में मौलिक है। उदाहरण के लिए, समीकरणों का संचालिका "=" भी, अधिकांश कंप्यूटर बीजगणित प्रणालियों में, समानता परीक्षण के कार्यक्रम का नाम होता है: आम तौर पर, समीकरण का मूल्यांकन एक समीकरण में परिणत होता है, लेकिन, जब एक समानता परीक्षण की आवश्यकता होती है ,—या तो स्पष्ट रूप से उपयोगकर्ता द्वारा "बूलियन का मूल्यांकन" कमांड के माध्यम से पूछा जाता है, या प्रोग्राम के अंदर परीक्षण के मामले में सिस्टम द्वारा स्वचालित रूप से शुरू किया जाता है-फिर एक बूलियन 0 या 1 का मूल्यांकन निष्पादित किया जाता है।  


चूंकि एक अभिव्यक्ति के ऑपरेंड्स का आकार अप्रत्याशित है और एक कामकाजी सत्र के दौरान बदल सकता है, ऑपरेंड्स के अनुक्रम को आमतौर पर या तो पॉइंटर्स (जैसे मैकसिमा में) या हैश टेबल में प्रविष्टियों के अनुक्रम के रूप में दर्शाया जाता है (जैसे मेपल में)।
चूंकि एक अभिव्यक्ति के ऑपरेंड्स का आकार अप्रत्याशित है और एक कार्य सत्र के दौरान बदल सकता है, इसलिए संकार्य के अनुक्रम को आमतौर पर या तो पॉइंटर्स (pointers) (जैसे मैकसिमा में) या हैश टेबल (जैसे मेपल में) में प्रविष्टियों के रूप में दर्शाया जाता है।


=== सरलीकरण ===
=== सरलीकरण ===


के संबंध में भेदभाव के बुनियादी नियमों का कच्चा अनुप्रयोग {{math|''x''}} अभिव्यक्ति पर <math>a^x</math> परिणाम देता है
{{math|''x''}} के संबंध में विभेदीकरण के मूल नियमों का अपरिष्कृत अनुप्रयोग <math>a^x</math> परिणाम देता है
:<math> x\cdot a^{x-1}\cdot 0 + a^x\cdot \left (1\cdot \log a + x\cdot \frac{0}{a} \right).</math> इस तरह की एक जटिल अभिव्यक्ति स्पष्ट रूप से स्वीकार्य नहीं है, और सामान्य अभिव्यक्तियों के साथ काम करने के लिए सरलीकरण की एक प्रक्रिया की आवश्यकता होती है।
:<math> x\cdot a^{x-1}\cdot 0 + a^x\cdot \left (1\cdot \log a + x\cdot \frac{0}{a} \right).</math>  
:इस तरह की जटिल अभिव्यक्ति स्पष्ट रूप से स्वीकार्य नहीं है, और जैसे ही कोई सामान्य अभिव्यक्तियों के साथ काम करता है, सरलीकरण की प्रक्रिया की आवश्यकता होती है।


यह सरलीकरण आम तौर पर पुनर्लेखन नियमों के माध्यम से किया जाता है।<ref>Buchberger, Bruno, and Rüdiger Loos. "[https://www.risc.jku.at/people/buchberg/papers/1982-00-00-B.pdf Algebraic simplification]." Computer algebra. Springer, Vienna, 1982. 11-43.</ref> पुनर्लेखन नियमों के कई वर्ग हैं जिन पर विचार किया जाना है।सबसे सरल पुनर्लेखन नियमों में होता है जो हमेशा अभिव्यक्ति के आकार को कम करते हैं, जैसे {{math|''E'' &minus; ''E'' → 0}} या {{math|sin(0) → 0}}।वे कंप्यूटर बीजगणित प्रणालियों में व्यवस्थित रूप से लागू होते हैं।
यह सरलीकरण आम तौर पर पुनर्लेखन नियमों के माध्यम से किया जाता है।<ref>Buchberger, Bruno, and Rüdiger Loos. "[https://www.risc.jku.at/people/buchberg/papers/1982-00-00-B.pdf Algebraic simplification]." Computer algebra. Springer, Vienna, 1982. 11-43.</ref> पुनर्लेखन नियमों के कई वर्गों पर विचार किया जाना है। सरलतम रूप में पुनर्लेखन नियमों में शामिल हैं जो हमेशा अभिव्यक्ति के आकार को कम करते हैं, जैसे कि {{math|''E'' &minus; ''E'' → 0}} या {{math|sin(0) → 0}}। वे कंप्यूटर बीजगणित प्रणालियों में व्यवस्थित रूप से लागू होते हैं।


पहली कठिनाई जोड़ और गुणन जैसे साहचर्य संचालन के साथ होती है।एसोसिएटिविटी से निपटने का मानक तरीका यह है कि इसके अलावा और गुणन में एक मनमानी संख्या है, जो कि है {{math|''a'' + ''b'' + ''c''}} के रूप में प्रतिनिधित्व किया जाता है {{math|"+"(''a'', ''b'', ''c'')}}।इस प्रकार {{math|''a'' + (''b'' + ''c'')}} तथा {{math|(''a'' + ''b'') + ''c''}} दोनों को सरल बनाया गया है {{math|"+"(''a'', ''b'', ''c'')}}, जो प्रदर्शित होता है {{math|''a'' + ''b'' + ''c''}}।व्हाट अबाउट {{math|''a'' &minus; ''b'' + ''c''}}?इस समस्या से निपटने के लिए, सबसे सरल तरीका व्यवस्थित रूप से फिर से लिखना है {{math|&minus;''E''}}, {{math|''E'' &minus; ''F''}}, {{math|''E''/''F''}} के रूप में, क्रमशः, {{math|(&minus;1)⋅''E''}}, {{math|''E'' + (&minus;1)⋅''F''}}, {{math|''E''⋅''F''<sup>&minus;1</sup>}}दूसरे शब्दों में, अभिव्यक्तियों के आंतरिक प्रतिनिधित्व में, संख्याओं के प्रतिनिधित्व के बाहर न तो कोई घटाव है और न ही विभाजन और न ही माइनस है।
पहली समस्या जोड़ और गुणन जैसे सहयोगी संचालन के साथ होती है। सहयोगीता से निपटने का मानक तरीका यह है कि जोड़ और गुणन में एक मनमानी संख्या जो कि है {{math|''a'' + ''b'' + ''c''}} को {{math|"+"(''a'', ''b'', ''c'')}} के रूप में दर्शाया गया है। इस प्रकार {{math|''a'' + (''b'' + ''c'')}} तथा {{math|(''a'' + ''b'') + ''c''}} दोनों को {{math|"+"(''a'', ''b'', ''c'')}} के लिए सरलीकृत किया जाता है जो कि {{math|''a'' + ''b'' + ''c''}} प्रदर्शित होता है।  {{math|''a'' &minus; ''b'' + ''c''}} के बारे में क्या? इस समस्या से निपटने के लिए, सबसे सरल तरीका व्यवस्थित रूप से {{math|&minus;''E''}}, {{math|''E'' &minus; ''F''}}, {{math|''E''/''F''}} क्रमशः, {{math|(&minus;1)⋅''E''}}, {{math|''E'' + (&minus;1)⋅''F''}}, {{math|''E''⋅''F''<sup>&minus;1</sup>}} के रूप में फिर से लिखना। दूसरे शब्दों में, अभिव्यक्ति के आंतरिक प्रतिनिधित्व में, संख्याओं के प्रतिनिधित्व के बाहर कोई घटाव या विभाजन नहीं है।


एक दूसरी कठिनाई जोड़ और गुणन की कम्यूटिविटी के साथ होती है। समस्या यह है कि उन्हें संयोजित या रद्द करने के लिए जल्दी से शर्तों को पहचानना है। वास्तव में, शर्तों की तरह खोजने की विधि, प्रत्येक जोड़ी के परीक्षण से मिलकर, बहुत लंबी रकम और उत्पादों के साथ व्यावहारिक होने के लिए बहुत महंगा है। इस समस्या को हल करने के लिए, MacSyma तुलना के एक समारोह के साथ Sums और उत्पादों के संचालन को क्रमबद्ध करता है जो कि क्रम में डिज़ाइन किया गया है कि जैसे शब्द लगातार स्थानों पर हैं, और इस प्रकार आसानी से पता लगाया गया है। मेपल में, हैश फ़ंक्शन को टकराव उत्पन्न करने के लिए डिज़ाइन किया गया है जब शर्तों को दर्ज किया जाता है, तो उन्हें जैसे ही उन्हें मिलाने के लिए उन्हें संयोजित करने की अनुमति मिलती है। हैश फ़ंक्शन का यह डिज़ाइन एक गणना में कई बार दिखाई देने वाले अभिव्यक्तियों या उप -प्रासंगिकों को तुरंत पहचानने और उन्हें केवल एक बार संग्रहीत करने की अनुमति देता है। यह न केवल कुछ मेमोरी स्पेस को बचाने की अनुमति देता है, बल्कि कई समान अभिव्यक्तियों पर एक ही संचालन की पुनरावृत्ति से बचने के लिए गणना को गति देने के लिए भी।
एक दूसरी कठिनाई जोड़ और गुणन की क्रमविनिमेयता के साथ होती है। समस्या यह है कि उन्हें जोड़ने या रद्द करने के लिए जैसे शब्दों को जल्दी पहचानें। वास्तव में, प्रत्येक दो शब्दों का परीक्षण करने की विधि, बहुत लंबी राशियों और उत्पादों के साथ व्यावहारिक होने के लिए बहुत महंगी है। इस समस्या को हल करने के लिए, मैकसिमा (Macsyma) तुलना के एक फ़ंक्शन के साथ योगों और उत्पादों के संचालन को क्रमबद्ध करता है जिसे इस क्रम में डिज़ाइन किया गया है कि समान शब्द लगातार स्थानों पर हैं, और इस प्रकार आसानी से पता लगाया जाता है। मेपल (maple) में, हैश फ़ंक्शन को टकराव पैदा करने के लिए डिज़ाइन किया गया है जब जैसे शब्द भरे जाते हैं, उन्हें पेश किए जाने के तुरंत बाद संयोजित करने की अनुमति देते हैं। हैश फ़ंक्शन का यह डिज़ाइन उन अभिव्यक्तियों या उप-अभिव्यक्तियों को तुरंत पहचानने की अनुमति देता है जो एक संगणना में कई बार दिखाई देते हैं और उन्हें केवल एक बार संग्रहीत करते हैं। यह न केवल कुछ मेमोरी स्पेस को बचाने की अनुमति देता है, बल्कि कई समान अभिव्यक्तियों पर एक ही संचालन की पुनरावृत्ति से बचने के द्वारा गणना को गति प्रदान करता है।


कुछ पुनर्लेखन नियम कभी -कभी बढ़ते हैं और कभी -कभी उन अभिव्यक्तियों के आकार को कम करते हैं जिन पर उन्हें लागू किया जाता है। यह वितरण या त्रिकोणमितीय पहचान का मामला है#उत्पाद-से-राशि और योग-से-उत्पाद पहचान | त्रिकोणमितीय पहचान। उदाहरण के लिए, वितरण कानून पुनर्लेखन की अनुमति देता है <math>(x+1)^4 \rightarrow x^4+4x^3+6x^2+4x+1</math> तथा <math>(x-1)(x^4+x^3+x^2+x+1) \rightarrow x^5-1.</math> चूंकि इस तरह के एक पुनर्लेखन नियम को लागू करने या न करने का एक अच्छा सामान्य विकल्प बनाने का कोई तरीका नहीं है, ऐसे पुनर्लेखन केवल तभी किए जाते हैं जब उपयोगकर्ता द्वारा स्पष्ट रूप से पूछा जाता है।वितरण के लिए, इस पुनर्लेखन नियम को लागू करने वाले कंप्यूटर फ़ंक्शन को आमतौर पर विस्तार कहा जाता है।रिवर्स रिवाइटिंग नियम, जिसे फैक्टर कहा जाता है, को एक गैर-तुच्छ एल्गोरिथ्म की आवश्यकता होती है, जो इस प्रकार कंप्यूटर बीजगणित प्रणालियों में एक महत्वपूर्ण कार्य है (बहुपद कारक देखें)।
कुछ पुनर्लेखन नियम कभी-कभी बढ़ते हैं और कभी-कभी उन अभिव्यक्तियों के आकार को कम करते हैं जिन पर उन्हें लागू किया जाता है। यह वितरण या त्रिकोणमिती पहचान का मामला है। उदाहरण के लिए, वितरण कानून फिर से लिखने की अनुमति देता है <math>(x+1)^4 \rightarrow x^4+4x^3+6x^2+4x+1</math> तथा <math>(x-1)(x^4+x^3+x^2+x+1) \rightarrow x^5-1.</math> चूंकि इस तरह के एक पुनर्लेखन नियम को लागू करने या न करने का एक अच्छा सामान्य विकल्प बनाने का कोई तरीका नहीं है, ऐसे पुनर्लेखन केवल तभी किए जाते हैं जब उपयोगकर्ता द्वारा स्पष्ट रूप से पूछा जाए। वितरण के लिए, इस पुनर्लेखन नियम को लागू करने वाले कंप्यूटर फ़ंक्शन को आमतौर पर विस्तार कहा जाता है। रिवर्स रिवाइटिंग नियम, जिसे "कारक" कहा जाता है, को एक नॉन-ट्रियल एल्गोरिथ्म की आवश्यकता होती है, जो इस प्रकार कंप्यूटर बीजगणित प्रणाली (polynomial factorization देखें) में एक प्रमुख कार्य है।


== गणितीय पहलू ==
== गणितीय पहलू ==


इस खंड में हम कुछ मौलिक गणितीय प्रश्नों पर विचार करते हैं जो जैसे ही कोई कंप्यूटर में गणितीय अभिव्यक्तियों में हेरफेर करना चाहता है।हम मुख्य रूप से बहुभिन्नरूपी तर्कसंगत अंशों के मामले पर विचार करते हैं।यह एक वास्तविक प्रतिबंध नहीं है, क्योंकि, जैसे ही एक अभिव्यक्ति में दिखाई देने वाले तर्कहीन कार्यों को सरल बनाया जाता है, उन्हें आमतौर पर नए अनिश्चितता के रूप में माना जाता है।उदाहरण के लिए,
इस खंड में हम कुछ मौलिक गणितीय प्रश्नों पर विचार करते हैं जो कंप्यूटर में गणितीय अभिव्यक्तियों में हेरफेर करने के तुरंत बाद उत्पन्न होते हैं। हम मुख्य रूप से बहुभिन्नरूपी परिमेय भिन्नों के मामले पर विचार करते हैं। यह एक वास्तविक प्रतिबंध नहीं है, क्योंकि जैसे ही एक अभिव्यक्ति में दिखाई देने वाले अपरिमेय कार्यों को सरल किया जाता है, उन्हें आमतौर पर नए अनिश्चय के रूप में माना जाता है। उदाहरण के लिए,
:<math>(\sin(x+y)^2+ \log(z^2-5))^3</math> में एक बहुपद के रूप में देखा जाता है <math>\sin(x+y)</math> तथा <math>\log(z^2-5)</math>
:<math>(\sin(x+y)^2+ \log(z^2-5))^3</math> में एक बहुपद के रूप में देखा जाता है <math>\sin(x+y)</math> तथा <math>\log(z^2-5)</math>




=== समानता ===
=== समानता ===
गणितीय अभिव्यक्तियों के लिए समानता की दो धारणाएं हैं।वाक्यविन्यास समानता उन अभिव्यक्तियों की समानता है जिसका अर्थ है कि वे उसी तरह से लिखे गए हैं (या कंप्यूटर में प्रतिनिधित्व करते हैं)।तुच्छ होने के नाते, वाक्यविन्यास समानता को शायद ही कभी गणितज्ञों द्वारा माना जाता है, हालांकि यह एकमात्र समानता है जो एक कार्यक्रम के साथ परीक्षण करना आसान है।'' शब्दार्थ समानता '' तब होती है जब दो भाव एक ही गणितीय वस्तु का प्रतिनिधित्व करते हैं, जैसे
गणितीय अभिव्यक्तियों के लिए समानता की दो धारणाएं हैं। वाक्यात्मक समानता उन अभिव्यक्तियों की समानता है जिसका अर्थ है कि वे उसी तरह से लिखे गए हैं (या कंप्यूटर में प्रतिनिधित्व करते हैं)। साधारण होने के कारण, वाक्यात्मक समानता को शायद ही कभी गणितज्ञों द्वारा माना जाता है, हालांकि यह एकमात्र समानता है जो एक कार्यक्रम के साथ परीक्षण करना आसान है। अर्थ समानता तब है जब दो अभिव्यक्ति एक ही गणितीय वस्तु का प्रतिनिधित्व करते हैं, जैसे में
:<math> (x+y)^2=x^2+2xy+y^2.</math>
:<math> (x+y)^2=x^2+2xy+y^2.</math>
यह रिचर्डसन के प्रमेय से जाना जाता है कि वहाँ एक एल्गोरिथ्म मौजूद नहीं हो सकता है जो यह तय करता है कि यदि दो अभिव्यक्तियाँ संख्याओं का प्रतिनिधित्व करती हैं, तो अभिव्यक्तियों में घातीय और लघुगणक की अनुमति है।इसलिए, (शब्दार्थ) समानता का परीक्षण केवल कुछ वर्गों जैसे कि बहुपद और तर्कसंगत अंशों पर किया जा सकता है।
रिचर्डसन के प्रमेय से यह ज्ञात होता है कि एक एल्गोरिथ्म मौजूद नहीं हो सकता है जो यह तय करता है कि क्या संख्याओं का प्रतिनिधित्व करने वाले दो भाव शब्दार्थ रूप से समान हैं, यदि घातीय और लघुगणक की अनुमति है। इसलिए समानता का परीक्षण केवल कुछ वर्गों के व्यंजकों जैसे बहुपद और परिमेय भिन्नों पर किया जा सकता है।


विशिष्ट एल्गोरिदम को डिजाइन करने के बजाय, दो अभिव्यक्तियों की समानता का परीक्षण करने के लिए, कुछ कैनोनिकल रूप में अभिव्यक्तियों को रखना या उनके अंतर को सामान्य रूप में रखना, और परिणाम के वाक्यविन्यास समानता का परीक्षण करना सामान्य है।
विशिष्ट एल्गोरिदम डिजाइन करने के बजाय, दो अभिव्यक्तियों की समानता का परीक्षण करने के लिए, कुछ विहित रूप में अभिव्यक्तियों को रखना या उनके अंतर को सामान्य रूप में रखना और परिणाम की वाक्यात्मक समानता का परीक्षण करना सामान्य है।


सामान्य गणित के विपरीत, कैनोनिकल फॉर्म और सामान्य रूप कंप्यूटर बीजगणित में पर्यायवाची नहीं हैं।<ref>Davenport, J. H., Siret, Y., & Tournier, É. (1988). Computer algebra. London: Academic.</ref> एक विहित रूप ऐसा होता है कि कैनोनिकल रूप में दो अभिव्यक्तियाँ शब्दार्थी रूप से समान होती हैं यदि और केवल अगर वे वाक्यविन्यास रूप से समान हैं, जबकि एक सामान्य रूप ऐसा है कि सामान्य रूप में एक अभिव्यक्ति शब्दार्थी रूप से शून्य है, तो यह तभी शून्य है जब यह वाक्यात्मक रूप से शून्य है।दूसरे शब्दों में, शून्य का सामान्य रूप में अभिव्यक्तियों द्वारा एक अद्वितीय प्रतिनिधित्व है।
सामान्य गणित के विपरीत, सामान्य रूप और सामान्य रूप कंप्यूटर बीजगणित के पर्याय नहीं हैं।<ref>Davenport, J. H., Siret, Y., & Tournier, É. (1988). Computer algebra. London: Academic.</ref> सूत्र एक ऐसा रूप है जिसमे दो अभिव्यक्तियाँ शब्दार्थ रूप से समान हैं यदि और केवल यदि वे वाक्यात्मक रूप से समान हैं, जबकि एक सामान्य रूप ऐसा है कि सामान्य रूप में एक अभिव्यक्ति शब्दार्थ रूप से शून्य है, यदि यह वाक्यात्मक रूप से शून्य है। दूसरे शब्दों में, सामान्य रूप में अभिव्यक्तियों द्वारा शून्य का एक अद्वितीय प्रतिनिधित्व होता है।


सामान्य रूपों को आमतौर पर कई कारणों से कंप्यूटर बीजगणित में पसंद किया जाता है।सबसे पहले, विहित रूप सामान्य रूपों की तुलना में गणना करने के लिए अधिक महंगा हो सकता है।उदाहरण के लिए, एक बहुपद को विहित रूप में रखने के लिए, किसी को प्रत्येक उत्पाद को वितरण द्वारा विस्तार करना पड़ता है, जबकि यह एक सामान्य रूप के साथ आवश्यक नहीं है (नीचे देखें)।दूसरे, यह मामला हो सकता है, जैसे कि कट्टरपंथियों से जुड़े भावों के लिए, कि एक विहित रूप, यदि यह मौजूद है, तो कुछ मनमानी विकल्पों पर निर्भर करता है और ये विकल्प दो अभिव्यक्तियों के लिए अलग हो सकते हैं जिनकी स्वतंत्र रूप से गणना की गई है।यह एक विहित रूप के उपयोग को अव्यावहारिक बना सकता है।
सामान्य रूप से कई कारणों से कंप्यूटर बीजगणित में पसंद किए जाते हैं। सबसे पहले, सामान्य रूपों की तुलना में सूत्र रूपों की गणना करना अधिक महंगा हो सकता है। उदाहरण के लिए, बहुपद को सूत्र रूप में रखने के लिए, प्रत्येक उत्पाद को वितरण द्वारा विस्तारित करना पड़ता है, जबकि सामान्य रूप से यह आवश्यक नहीं है (नीचे देखें)। दूसरा, ऐसा हो सकता है, जैसे कि रेडिकल्स से जुड़ी अभिव्यक्तियों के लिए, यह कुछ मनमाने विकल्पों पर निर्भर करता है और ये विकल्प स्वतंत्र रूप से गणना की गई दो अभिव्यक्तियों के लिए अलग हो सकते हैं। यह सूत्र के उपयोग को अव्यावहारिक बना सकता है।


== इतिहास ==
== इतिहास ==
कंप्यूटर बीजगणित की शुरुआत में, 1970 में, जब लंबे समय से ज्ञात एल्गोरिदम को पहली बार कंप्यूटर पर रखा गया था, तो वे अत्यधिक अक्षम हो गए।<ref>{{Citation|first1=Erich|last1=Kaltofen|chapter=Factorization of polynomials|title=Computer Algebra|publisher=Springer Verlag|year=1982|pages=95–113|editor1-first =B. |editor1-last =Buchberger|editor2-first=R. |editor2-last=Loos|editor3-first=G. |editor3-last=Collins|citeseerx = 10.1.1.39.7916 }}</ref> इसलिए, क्षेत्र में शोधकर्ताओं के काम का एक बड़ा हिस्सा इस प्रभावशीलता को लागू करने के लिए इसे प्रभावी बनाने और कुशल एल्गोरिदम की खोज करने के लिए शास्त्रीय बीजगणित को फिर से देखना शामिल था।इस तरह के काम का एक विशिष्ट उदाहरण बहुपद महानतम सामान्य विभाजकों की गणना है, जो कि अंशों को सरल बनाने के लिए आवश्यक है।हैरानी की बात यह है कि शास्त्रीय यूक्लिड का एल्गोरिथ्म अनंत क्षेत्रों पर बहुपद के लिए अक्षम हो गया, और इस प्रकार नए एल्गोरिदम को विकसित करने की आवश्यकता है।रैखिक बीजगणित से शास्त्रीय एल्गोरिदम के लिए भी यही सच था।
लगभग 1970, कंप्यूटर बीजगणित की शुरुआत में, जब लंबे समय से ज्ञात एल्गोरिदम को पहली बार कंप्यूटर पर रखा गया था, तो वे अप्रभावी साबित हुए।<ref>{{Citation|first1=Erich|last1=Kaltofen|chapter=Factorization of polynomials|title=Computer Algebra|publisher=Springer Verlag|year=1982|pages=95–113|editor1-first =B. |editor1-last =Buchberger|editor2-first=R. |editor2-last=Loos|editor3-first=G. |editor3-last=Collins|citeseerx = 10.1.1.39.7916 }}</ref> इसलिए, इस क्षेत्र में शोधकर्ताओं के काम का एक बड़ा हिस्सा शास्त्रीय बीजगणित को फिर से समझने में शामिल था ताकि इसे प्रभावी बनाया जा सके और इस प्रभावशीलता को लागू करने के लिए कुशल एल्गोरिदम की खोज की जा सके। इस प्रकार के कार्य का एक विशिष्ट उदाहरण बहुपद सबसे बड़े सामान्य भाजक की गणना है, जो भिन्नों को सरल बनाने के लिए आवश्यक है। आश्चर्यजनक रूप से, शास्त्रीय यूक्लिड का एल्गोरिथ्म अनंत क्षेत्रों पर बहुपदों के लिए अप्रभावी साबित हुआ, और इस प्रकार नए एल्गोरिदम को विकसित करने की आवश्यकता थी। यही रैखिक बीजगणित से शास्त्रीय एल्गोरिदम के लिए भी सच था।


== यह भी देखें ==
== यह भी देखें ==
Line 103: Line 100:


{{Computer science}}
{{Computer science}}
{{Areas of mathematics |collapsed}}
{{Authority control}}
{{Authority control}}
[[Category: कंप्यूटर बीजगणित | कंप्यूटर बीजगणित ]]
[[Category:Machine Translated Page]]
 


[[Category: Machine Translated Page]]
[[Category:AC with 0 elements]]
[[Category:All articles with unsourced statements]]
[[Category:Articles with invalid date parameter in template]]
[[Category:Articles with short description]]
[[Category:Articles with unsourced statements from February 2019]]
[[Category:CS1 maint]]
[[Category:Pages with empty portal template]]
[[Category:Pages with script errors]]
[[Category:Portal-inline template with redlinked portals]]
[[Category:Short description with empty Wikidata description]]
[[Category:Template documentation pages|Documentation/doc]]
[[Category:Templates used by AutoWikiBrowser|Cite web]]
[[Category:Templates using TemplateData]]
[[Category:कंप्यूटर बीजगणित| कंप्यूटर बीजगणित ]]

Latest revision as of 16:02, 22 August 2023

बीजगणितीय कार्य का प्रतीकात्मक एकीकरण f(x) = x/x4 + 10x2 - 96x - 71 कंप्यूटर बीजगणित प्रणाली Axiom का उपयोग करना

गणित और कंप्यूटर विज्ञान में,[1] कंप्यूटर बीजगणित, जिसे प्रतीकात्मक संगणना या बीजगणितीय संगणना भी कहा जाता है, एक वैज्ञानिक क्षेत्र है जो गणितीय अभिव्यक्तियों और अन्य गणितीय वस्तुओं में हेरफेर करने के लिए एल्गोरिदम और सॉफ़्टवेयर के अध्ययन और विकास को संदर्भित करता है। यद्यपि कंप्यूटर बीजगणित को वैज्ञानिक संगणना का एक उप-क्षेत्र माना जा सकता है, उन्हें आम तौर पर अलग -अलग क्षेत्र के रूप में माना जाता है क्योंकि वैज्ञानिक संगणना आमतौर पर चल बिन्दु संख्या के साथ संख्यात्मक गणना पर आधारित होती है, जबकि सांकेतिक गणना उन चरों वाले अभिव्यक्तियों के साथ सटीक गणना पर जोर देती है जिनके पास कोई मूल्य नहीं है और प्रतीकों के रूप में हेरफेर किया जाता है।

सांकेतिक गणना करने वाले सॉफ्टवेयर अनुप्रयोगों को कंप्यूटर बीजगणित प्रणाली कहा जाता है, जिसमें शब्द प्रणाली मुख्य अनुप्रयोगों की जटिलता की ओर संकेत करती है, जिसमें कम से कम, कंप्यूटर में गणितीय आँकड़े का प्रतिनिधित्व करने की एक विधि, एक उपयोगकर्ता प्रोग्रामिंग भाषा (आमतौर पर कार्यान्वयन के लिए उपयोग की भाषा से अलग), सक्षम स्मृति प्रबंधक, गणितीय अभिव्यक्तियों के इनपुट/आउटपुट के लिए उपयोगकर्ता इंटरफेस, सामान्य संचालन करने के लिए एक बड़ा ढाचा, श्रृंखला नियम का उपयोग करते हुए भिन्नकरण, बहुपदकरण, अनिश्चितकालीन एकीकरण आदि शामिल हैं।

कंप्यूटर बीजगणित व्यापक रूप से गणित में प्रयोग करने और संख्यात्मक कार्यक्रमों में उपयोग किए जाने वाले सूत्रों को डिजाइन करने के लिए उपयोग किया जाता है। इसका उपयोग पूर्ण वैज्ञानिक संगणनाओं जैसे कि सार्वजनिक कुंजी क्रिप्टोग्राफी या कुछ गैर-रैखिक समस्याओं में लिए भी किया जाता है, जब पूर्ण रुप से संख्यात्मक तरीके विफल होते हैं।

शब्दावली

कुछ लेखक गणितीय सूत्र के साथ गणना के अलावा अन्य प्रतीकात्मक गणना के प्रकारों को संदर्भित करने के लिए दूसरेे नाम का उपयोग करके कंप्यूटर बीजगणित को प्रतीकात्मक गणना से अलग करते हैं। कुछ लेखक गणितीय पहलू के लिए कंप्यूटर विज्ञान और कंप्यूटर बीजगणित के लिए प्रतीकात्मक गणना का उपयोग करते हैं।[2] कुछ भाषाओं में क्षेत्र का नाम उसके अंग्रेज़ी नाम का सीधा अनुवाद नहीं है। आमतौर पर, इसे फ्रेंच में कैलकुलेशन फॉर्मेल कहा जाता है, जिसका अर्थ "औपचारिक गणना" है। यह नाम औपचारिक तरीकों के साथ इस क्षेत्र के संबंधों को दर्शाता है।

प्रतीकात्मक अभिकलन को पूर्व में, बीजगणितीय हेरफेर, प्रतीकात्मक प्रसंस्करण, प्रतीकात्मक गणित, या प्रतीकात्मक बीजगणित के रूप में भी संदर्भित किया गया है, लेकिन ये शब्द, जो गैर-संगणनात्मक हेरफेर को भी संदर्भित करते हैं, अब कंप्यूटर के संदर्भ में उपयोग नहीं किए जाते हैं।

वैज्ञानिक समुदाय

ऐसा कोई विद्वान समाज नहीं है जो कंप्यूटर बीजगणित के लिए विशिष्ट हो, लेकिन यह कार्य SIGSAM (प्रतीकात्मक और बीजगणितीय हेरफेर पर विशेष रुचि समूह) नामक संगणना उपकरण समिति के विशेष समूह द्वारा स्वीकृत किया जाता है।[3]

कंप्यूटर बीजगणित पर कई वार्षिक सम्मेलन होते हैं, जिनमें प्रमुख ISSAC (प्रतीकात्मक और बीजगणितीय संगणना पर अंतर्राष्ट्रीय संगोष्ठी) है, जो नियमित रूप से SIGSAM द्वारा प्रायोजित किया जाता है।[4]

यहां कंप्यूटर बीजगणित में विशेषज्ञता वाली कई पत्रिकाएँ हैं, जिनमें से सर्वश्रेष्ठ एक जर्नल ऑफ़ सिम्बोलिक कंप्यूटेशन है जिसकी स्थापना 1985 में ब्रूनो बुचबर्गर (Bruno Buchberge) ने की थी।[5] कई अन्य पत्रिकाएँ भी हैं जो नियमित रूप से कंप्यूटर बीजगणित में लेख प्रकाशित करती हैं।[6]

कंप्यूटर विज्ञान पहलू

डेटा प्रतिनिधित्व

चूंकि संख्यात्मक सॉफ्टवेयर अनुमानित संख्यात्मक गणना के लिए अत्यधिक कुशल है, कंप्यूटर बीजगणित में, सटीक रूप से प्रतिनिधित्व किए गए आँकड़े के साथ सटीक गणना पर जोर देना आम बात है। इस तरह के एक सटीक प्रतिनिधित्व का मतलब है कि, भले ही आउटपुट का आकार छोटा हो, गणना के दौरान उत्पन्न मध्यवर्ती आँकड़े अप्रत्याशित तरीके से बढ़ सकता है। इस व्यवहार को अभिव्यक्ति कहा जाता है। इस समस्या को दूर करने के लिए, आँकड़े के प्रतिनिधित्व के साथ-साथ उन्हें हेरफेर करने वाले एल्गोरिदम में विभिन्न तरीकों का उपयोग किया जाता है।

नंबर

संख्यात्मक गणना में इस्तेमाल की जाने वाली सामान्य संख्या प्रणाली स्थिर परिबद्ध आकार के फ्लोटिंग पाइंट नंबर और पूर्णांक हैं। इनमें से कोई भी अभिव्यक्ति के कारण कंप्यूटर बीजगणित के लिए सुविधाजनक नहीं है।[citation needed]

इसलिए, कंप्यूटर बीजगणित में उपयोग किए जाने वाले मूल संख्या गणितज्ञों के पूर्णांक हैं, आमतौर पर गणना के कुछ आधार में अंकों के एक असीम हस्ताक्षरित अनुक्रम के द्वारा प्रतिनिधित्व किया जाता है, आमतौर पर मशीन शब्द द्वारा अनुमत सबसे बड़ा आधार है। ये पूर्णांक उन परिमेय संख्याओं को परिभाषित करने की अनुमति देते हैं, जो दो पूर्णांकों के अपरिवर्तनीय अंश हैं।

अंकगणितीय संक्रियाओं के कुशल कार्यान्वयन की प्रोग्रामिंग करना एक कठिन कार्य है। इसलिए, अधिकांश मुफ्त कंप्यूटर बीजगणित प्रणाली और कुछ व्यावसायिक जैसे गणित और मेपल (Maple) (सॉफ्टवेयर), GMP पुस्तकालय का उपयोग करते हैं, जो इस प्रकार एक वास्तविक मानक है।

अभिव्यक्ति

1985 के मास्टर की थीसिस से, लिस्प ट्री के रूप में अभिव्यक्ति (8-6)*(3+1) का प्रतिनिधित्व।[7]

संख्याओं और चरों को छोड़कर, प्रत्येक गणितीय व्यंजक को एक संकारक के प्रतीक के रूप में देखा जा सकता है जिसके बाद संकार्यों का एक क्रम होता है। कंप्यूटर बीजगणित सॉफ्टवेयर में, अभिव्यक्तियों को आमतौर पर इस तरह से दर्शाया जाता है। यह प्रतिनिधित्व बहुत लचीला है, और कई चीजें जो पहली नज़र में गणितीय अभिव्यक्ति नहीं लगती हैं, उनका प्रतिनिधित्व और हेरफेर किया जा सकता है। उदाहरण के लिए, एक समीकरण एक ऑपरेटर के रूप में "=" के साथ एक अभिव्यक्ति है, एक मैट्रिक्स को एक ऑपरेटर के रूप में "मैट्रिक्स" के साथ एक अभिव्यक्ति के रूप में और इसकी पंक्तियों को ऑपरेंड के रूप में दर्शाया जा सकता है।

यहां तक कि कार्यक्रमों को भी प्रचालक के साथ अभिव्यक्तियों के रूप में माना जा सकता है और प्रदर्शित किया जा सकता है और कम से कम दो संकार्य, मापदंडों की सूची और समूह, जो स्वयं एक ऑपरेटर के रूप में ‘समूह’ के साथ एक अभिव्यक्ति है और संकार्य के रूप में निर्देशों का एक अनुक्रम है। इसके विपरीत, किसी भी गणितीय अभिव्यक्ति को एक कार्यक्रम के रूप में देखा जा सकता है।उदाहरण के लिए, “a + b ” अभिव्यक्‍ति को इसके अतिरिक्‍त कार्यक्रम के रूप में देखा जा सकता है, जिसमें a और b पैरामीटर हैं ।इस कार्यक्रम को निष्पादित करने में दिए गए मानों के लिए अभिव्यक्ति का मूल्यांकन करना शामिल है a और b; यदि उनके पास कोई मूल्य नहीं है - यानी वे अनिश्चित हैं - मूल्यांकन का परिणाम केवल इसका इनपुट है।

विलंबित मूल्यांकन की यह प्रक्रिया कंप्यूटर बीजगणित में मौलिक है। उदाहरण के लिए, समीकरणों का संचालिका "=" भी, अधिकांश कंप्यूटर बीजगणित प्रणालियों में, समानता परीक्षण के कार्यक्रम का नाम होता है: आम तौर पर, समीकरण का मूल्यांकन एक समीकरण में परिणत होता है, लेकिन, जब एक समानता परीक्षण की आवश्यकता होती है ,—या तो स्पष्ट रूप से उपयोगकर्ता द्वारा "बूलियन का मूल्यांकन" कमांड के माध्यम से पूछा जाता है, या प्रोग्राम के अंदर परीक्षण के मामले में सिस्टम द्वारा स्वचालित रूप से शुरू किया जाता है-फिर एक बूलियन 0 या 1 का मूल्यांकन निष्पादित किया जाता है।

चूंकि एक अभिव्यक्ति के ऑपरेंड्स का आकार अप्रत्याशित है और एक कार्य सत्र के दौरान बदल सकता है, इसलिए संकार्य के अनुक्रम को आमतौर पर या तो पॉइंटर्स (pointers) (जैसे मैकसिमा में) या हैश टेबल (जैसे मेपल में) में प्रविष्टियों के रूप में दर्शाया जाता है।

सरलीकरण

x के संबंध में विभेदीकरण के मूल नियमों का अपरिष्कृत अनुप्रयोग परिणाम देता है

इस तरह की जटिल अभिव्यक्ति स्पष्ट रूप से स्वीकार्य नहीं है, और जैसे ही कोई सामान्य अभिव्यक्तियों के साथ काम करता है, सरलीकरण की प्रक्रिया की आवश्यकता होती है।

यह सरलीकरण आम तौर पर पुनर्लेखन नियमों के माध्यम से किया जाता है।[8] पुनर्लेखन नियमों के कई वर्गों पर विचार किया जाना है। सरलतम रूप में पुनर्लेखन नियमों में शामिल हैं जो हमेशा अभिव्यक्ति के आकार को कम करते हैं, जैसे कि EE → 0 या sin(0) → 0। वे कंप्यूटर बीजगणित प्रणालियों में व्यवस्थित रूप से लागू होते हैं।

पहली समस्या जोड़ और गुणन जैसे सहयोगी संचालन के साथ होती है। सहयोगीता से निपटने का मानक तरीका यह है कि जोड़ और गुणन में एक मनमानी संख्या जो कि है a + b + c को "+"(a, b, c) के रूप में दर्शाया गया है। इस प्रकार a + (b + c) तथा (a + b) + c दोनों को "+"(a, b, c) के लिए सरलीकृत किया जाता है जो कि a + b + c प्रदर्शित होता है। ab + c के बारे में क्या? इस समस्या से निपटने के लिए, सबसे सरल तरीका व्यवस्थित रूप से E, EF, E/F क्रमशः, (−1)⋅E, E + (−1)⋅F, EF−1 के रूप में फिर से लिखना। दूसरे शब्दों में, अभिव्यक्ति के आंतरिक प्रतिनिधित्व में, संख्याओं के प्रतिनिधित्व के बाहर कोई घटाव या विभाजन नहीं है।

एक दूसरी कठिनाई जोड़ और गुणन की क्रमविनिमेयता के साथ होती है। समस्या यह है कि उन्हें जोड़ने या रद्द करने के लिए जैसे शब्दों को जल्दी पहचानें। वास्तव में, प्रत्येक दो शब्दों का परीक्षण करने की विधि, बहुत लंबी राशियों और उत्पादों के साथ व्यावहारिक होने के लिए बहुत महंगी है। इस समस्या को हल करने के लिए, मैकसिमा (Macsyma) तुलना के एक फ़ंक्शन के साथ योगों और उत्पादों के संचालन को क्रमबद्ध करता है जिसे इस क्रम में डिज़ाइन किया गया है कि समान शब्द लगातार स्थानों पर हैं, और इस प्रकार आसानी से पता लगाया जाता है। मेपल (maple) में, हैश फ़ंक्शन को टकराव पैदा करने के लिए डिज़ाइन किया गया है जब जैसे शब्द भरे जाते हैं, उन्हें पेश किए जाने के तुरंत बाद संयोजित करने की अनुमति देते हैं। हैश फ़ंक्शन का यह डिज़ाइन उन अभिव्यक्तियों या उप-अभिव्यक्तियों को तुरंत पहचानने की अनुमति देता है जो एक संगणना में कई बार दिखाई देते हैं और उन्हें केवल एक बार संग्रहीत करते हैं। यह न केवल कुछ मेमोरी स्पेस को बचाने की अनुमति देता है, बल्कि कई समान अभिव्यक्तियों पर एक ही संचालन की पुनरावृत्ति से बचने के द्वारा गणना को गति प्रदान करता है।

कुछ पुनर्लेखन नियम कभी-कभी बढ़ते हैं और कभी-कभी उन अभिव्यक्तियों के आकार को कम करते हैं जिन पर उन्हें लागू किया जाता है। यह वितरण या त्रिकोणमिती पहचान का मामला है। उदाहरण के लिए, वितरण कानून फिर से लिखने की अनुमति देता है तथा चूंकि इस तरह के एक पुनर्लेखन नियम को लागू करने या न करने का एक अच्छा सामान्य विकल्प बनाने का कोई तरीका नहीं है, ऐसे पुनर्लेखन केवल तभी किए जाते हैं जब उपयोगकर्ता द्वारा स्पष्ट रूप से पूछा जाए। वितरण के लिए, इस पुनर्लेखन नियम को लागू करने वाले कंप्यूटर फ़ंक्शन को आमतौर पर विस्तार कहा जाता है। रिवर्स रिवाइटिंग नियम, जिसे "कारक" कहा जाता है, को एक नॉन-ट्रियल एल्गोरिथ्म की आवश्यकता होती है, जो इस प्रकार कंप्यूटर बीजगणित प्रणाली (polynomial factorization देखें) में एक प्रमुख कार्य है।

गणितीय पहलू

इस खंड में हम कुछ मौलिक गणितीय प्रश्नों पर विचार करते हैं जो कंप्यूटर में गणितीय अभिव्यक्तियों में हेरफेर करने के तुरंत बाद उत्पन्न होते हैं। हम मुख्य रूप से बहुभिन्नरूपी परिमेय भिन्नों के मामले पर विचार करते हैं। यह एक वास्तविक प्रतिबंध नहीं है, क्योंकि जैसे ही एक अभिव्यक्ति में दिखाई देने वाले अपरिमेय कार्यों को सरल किया जाता है, उन्हें आमतौर पर नए अनिश्चय के रूप में माना जाता है। उदाहरण के लिए,

में एक बहुपद के रूप में देखा जाता है तथा


समानता

गणितीय अभिव्यक्तियों के लिए समानता की दो धारणाएं हैं। वाक्यात्मक समानता उन अभिव्यक्तियों की समानता है जिसका अर्थ है कि वे उसी तरह से लिखे गए हैं (या कंप्यूटर में प्रतिनिधित्व करते हैं)। साधारण होने के कारण, वाक्यात्मक समानता को शायद ही कभी गणितज्ञों द्वारा माना जाता है, हालांकि यह एकमात्र समानता है जो एक कार्यक्रम के साथ परीक्षण करना आसान है। अर्थ समानता तब है जब दो अभिव्यक्ति एक ही गणितीय वस्तु का प्रतिनिधित्व करते हैं, जैसे में

रिचर्डसन के प्रमेय से यह ज्ञात होता है कि एक एल्गोरिथ्म मौजूद नहीं हो सकता है जो यह तय करता है कि क्या संख्याओं का प्रतिनिधित्व करने वाले दो भाव शब्दार्थ रूप से समान हैं, यदि घातीय और लघुगणक की अनुमति है। इसलिए समानता का परीक्षण केवल कुछ वर्गों के व्यंजकों जैसे बहुपद और परिमेय भिन्नों पर किया जा सकता है।

विशिष्ट एल्गोरिदम डिजाइन करने के बजाय, दो अभिव्यक्तियों की समानता का परीक्षण करने के लिए, कुछ विहित रूप में अभिव्यक्तियों को रखना या उनके अंतर को सामान्य रूप में रखना और परिणाम की वाक्यात्मक समानता का परीक्षण करना सामान्य है।

सामान्य गणित के विपरीत, सामान्य रूप और सामान्य रूप कंप्यूटर बीजगणित के पर्याय नहीं हैं।[9] सूत्र एक ऐसा रूप है जिसमे दो अभिव्यक्तियाँ शब्दार्थ रूप से समान हैं यदि और केवल यदि वे वाक्यात्मक रूप से समान हैं, जबकि एक सामान्य रूप ऐसा है कि सामान्य रूप में एक अभिव्यक्ति शब्दार्थ रूप से शून्य है, यदि यह वाक्यात्मक रूप से शून्य है। दूसरे शब्दों में, सामान्य रूप में अभिव्यक्तियों द्वारा शून्य का एक अद्वितीय प्रतिनिधित्व होता है।

सामान्य रूप से कई कारणों से कंप्यूटर बीजगणित में पसंद किए जाते हैं। सबसे पहले, सामान्य रूपों की तुलना में सूत्र रूपों की गणना करना अधिक महंगा हो सकता है। उदाहरण के लिए, बहुपद को सूत्र रूप में रखने के लिए, प्रत्येक उत्पाद को वितरण द्वारा विस्तारित करना पड़ता है, जबकि सामान्य रूप से यह आवश्यक नहीं है (नीचे देखें)। दूसरा, ऐसा हो सकता है, जैसे कि रेडिकल्स से जुड़ी अभिव्यक्तियों के लिए, यह कुछ मनमाने विकल्पों पर निर्भर करता है और ये विकल्प स्वतंत्र रूप से गणना की गई दो अभिव्यक्तियों के लिए अलग हो सकते हैं। यह सूत्र के उपयोग को अव्यावहारिक बना सकता है।

इतिहास

लगभग 1970, कंप्यूटर बीजगणित की शुरुआत में, जब लंबे समय से ज्ञात एल्गोरिदम को पहली बार कंप्यूटर पर रखा गया था, तो वे अप्रभावी साबित हुए।[10] इसलिए, इस क्षेत्र में शोधकर्ताओं के काम का एक बड़ा हिस्सा शास्त्रीय बीजगणित को फिर से समझने में शामिल था ताकि इसे प्रभावी बनाया जा सके और इस प्रभावशीलता को लागू करने के लिए कुशल एल्गोरिदम की खोज की जा सके। इस प्रकार के कार्य का एक विशिष्ट उदाहरण बहुपद सबसे बड़े सामान्य भाजक की गणना है, जो भिन्नों को सरल बनाने के लिए आवश्यक है। आश्चर्यजनक रूप से, शास्त्रीय यूक्लिड का एल्गोरिथ्म अनंत क्षेत्रों पर बहुपदों के लिए अप्रभावी साबित हुआ, और इस प्रकार नए एल्गोरिदम को विकसित करने की आवश्यकता थी। यही रैखिक बीजगणित से शास्त्रीय एल्गोरिदम के लिए भी सच था।

यह भी देखें

  • स्वचालित प्रमेय समर्थक
  • कंप्यूटर-असिस्टेड प्रूफ
  • कम्प्यूटेशनल बीजीय ज्यामिति
  • कंप्यूटर बीजगणित प्रणाली
  • प्रूफ चेकर
  • मॉडल चेकर
  • प्रतीकात्मक-प्रतिष्ठित गणना
  • प्रतीकात्मक सिमुलेशन
  • प्रतीकात्मक कृत्रिम बुद्धिमत्ता

संदर्भ

  1. "ACM Association in computer algebra".
  2. Watt, Stephen M. (2006). Making Computer Algebra More Symbolic (Invited) (PDF). Proc. Transgressive Computing 2006: A conference in honor of Jean Della Dora, (TC 2006). pp. 43–49.
  3. SIGSAM official site
  4. "SIGSAM list of conferences". Archived from the original on 2013-08-08. Retrieved 2012-11-15.
  5. Cohen, Joel S. (2003). Computer Algebra and Symbolic Computation: Mathematical Methods. AK Peters, Ltd. p. 14. ISBN 978-1-56881-159-8.
  6. SIGSAM list of journals
  7. Kevin G. Cassidy (Dec 1985). The Feasibility of Automatic Storage Reclamation with Concurrent Program Execution in a LISP Environment (PDF) (Master's thesis). Naval Postgraduate School, Monterey/CA. Here: p.15
  8. Buchberger, Bruno, and Rüdiger Loos. "Algebraic simplification." Computer algebra. Springer, Vienna, 1982. 11-43.
  9. Davenport, J. H., Siret, Y., & Tournier, É. (1988). Computer algebra. London: Academic.
  10. Kaltofen, Erich (1982), "Factorization of polynomials", in Buchberger, B.; Loos, R.; Collins, G. (eds.), Computer Algebra, Springer Verlag, pp. 95–113, CiteSeerX 10.1.1.39.7916

अग्रिम पठन

For a detailed definition of the subject:

For textbooks devoted to the subject: