कोड बीजगणित का प्रतिनिधित्व

वोट
5

मैं छोटे एल्गोरिदम कि मैं एक समाचार पत्र में लिख चाहते हैं की एक संख्या है। वे अपेक्षाकृत कम, और संक्षिप्त कर रहे हैं। हालांकि, बजाय उन्हें छद्म कोड में लेखन (ए ला Cormen या यहाँ तक कि नुथ) की, मैं उनमें से एक बीजीय प्रतिनिधित्व (अधिक रैखिक और बेहतर LaTeX प्रतिपादन) लिखने के लिए करना चाहते हैं। हालांकि, मैं नहीं संसाधनों इसके लिए सबसे अच्छा अंकन के रूप में, पा सकते हैं कुछ भी नहीं है अगर: जैसे मैं कैसे एक पाश का प्रतिनिधित्व करते हैं? अगर? किसी सूची में कोई टपल के अलावा?

आप में से किसी को इस समस्या का सामना करना पड़ा है, और किसी भी तरह इसे हल?

धन्यवाद।

संपादित करें : धन्यवाद, लोग। मुझे लगता है कि मैं सवाल phrasing पर एक गरीब काम किया है। यहाँ फिर से चला जाता है, मैं इसे स्पष्ट करने की उम्मीद कर: एक गणितीय संकेतन में लूप और अगर-तो खंड के बारे में बात के लिए आम अंकन क्या है? उदाहरण के लिए, मैं उपयोग कर सकते हैं $acc \leftarrow acc \cup \langle i,i+1 \rangle$एक सूची की विधि जोड़ें का प्रतिनिधित्व करने के लिए।

28/01/2010 को 20:50
का स्रोत उपयोगकर्ता
अन्य भाषाओं में...                            


8 जवाब

वोट
0

कुछ इस तरह वेबसाइट वर्णन करता है?

28/01/2010 को 20:57
का स्रोत उपयोगकर्ता

वोट
1

आप हास्केल पर एक नज़र हो सकता है। हास्केल अच्छी तरह से लेटेक्स में स्वरूपों, एक अच्छा बीजीय वाक्य रचना है, और तुम भी कोड में लपेटा जाता है प्रदान की है, उस में हास्केल के साथ एक लेटेक्स फ़ाइल संकलन कर सकते हैं \begin{code}और \end{code}। यहाँ देखें: http://www.haskell.org/haskellwiki/Literate_programming । संभवतः अन्य भाषाओं के लिए साक्षर प्रोग्रामिंग उपकरण हैं।

28/01/2010 को 20:59
का स्रोत उपयोगकर्ता

वोट
2

मैं नुथ कॉपी चाहते हैं। कुछ एक कंप्यूटर विज्ञान की स्थापना में उसे की तुलना में बेहतर संवाद करने के लिए कैसे पता है।

28/01/2010 को 21:00
का स्रोत उपयोगकर्ता

वोट
-1

एपीएल ? केवल समस्या यह है कि कुछ लोगों को यह पढ़ सकते हैं।

28/01/2010 को 21:00
का स्रोत उपयोगकर्ता

वोट
8

ऐसा मत करो। आप लोग क्या देख सकते हैं कि एल्गोरिदम के बारे में एक समाचार पत्र को पढ़ने की उम्मीद से भी घूम रहे हैं। आप की उम्मीद प्रथाओं का पालन करना चाहिए; अपने विचारों को और अधिक ध्यान है कि वे हकदार मिलने की संभावना है। जब रोम में हो तो वैसा ही करो जैसा की रोमन करते हैं।

एक LaTeXed पत्र में कोड (या स्यूडोकोड यह हो सकता है के रूप में) का प्रारूपण बहुत आसान है। उदाहरण के लिए देखें,, LaTeX में कोड का प्रारूपण

28/01/2010 को 21:03
का स्रोत उपयोगकर्ता

वोट
1

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

लेकिन मुझे नहीं लगता कि यह आपके लिए के बाद से कंप्यूटिंग मॉडल है कि लिस्प का वर्णन करता है छोरों नहीं है वास्तव में क्या देख रहे है: प्रत्यावर्तन के बजाय प्रयोग किया जाता है। वाक्य रचना बीजगणित जहां ब्रेसिज़ निरूपित का मूल्यांकन-यह और स्थानापन्न-परिणाम से निकला है। दरअसल, कंप्यूटिंग के तुतलाना के मॉडल मूल रूप से प्रतिस्थापन है - क्या बीजगणित अनिवार्य है।

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

आप निश्चित रूप से गणितज्ञों के लिए लिस्प और हास्केल वाक्य रचना की व्याख्या कर सकते हैं और वे एक "खेल" के रूप में यह इलाज होगा। की तरह छोरों, प्रत्यावर्तन और सशर्त, भाषा निर्माणों खेल आँख बंद करके अन्य भाषाओं में तरह कार्यान्वित करने के बजाय के नियमों से बाहर साबित हो सकता है। यह combinatronics के स्थानों, गणित के किसी अन्य शाखा में आप नेतृत्व करेंगे। दरअसल, combinatronics में, यहां तक ​​कि संख्या की अवधारणा को खेल के नियमों से बाहर नहीं बल्कि भाषा (गूगल चर्च अंकों) के मूल निवासी हिस्सा होने से निर्माण किया जा सकता।

तो लिस्प / योजना, Erlang और हास्केल पर एक नज़र यदि आप चाहते हैं। Erlang विशेष रूप से आप क्या चाहते करने के लिए वाक्य रचना करीब है:

add(a,b) -> a + b

लेकिन मेरी सिफारिश सी-तरह स्यूडोकोड में लिखने के लिए है। यह प्रोग्रामिंग भाषाओं में सबसे कम आम विभाजक की तरह है। एक वाक्य रचना काफी समझने में आसान और साफ है कि है। और समारोह वाक्य रचना भी गणित के क्षेत्र में काम करता है से निकला है। याद रखें f(x)?

(मैं कुछ है जो कभी नहीं किया है पता है एक प्लस के रूप में, गणितज्ञों सी लिखने के लिए उपयोग किया जाता है, सांख्यिकीविदों सी लेखन के लिए उपयोग किया जाता है (हालांकि आम तौर पर वे आर पसंद करते हैं), भौतिकविदों सी लिखने के लिए उपयोग किया जाता है, प्रोग्रामर कम से कम सी को देखकर किया जाता है छुआ सी)।

वास्तव में, कि खरोंच। आप उल्लेख है कि आपके लक्षित दर्शकों के सांख्यिकीविदों हैं। में लिखें आर

28/01/2010 को 21:47
का स्रोत उपयोगकर्ता

वोट
7

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

यहाँ है कैसे एकरमैन समारोह उदाहरण के लिए विकिपीडिया पर परिभाषित किया गया है,:

एक (एम, एन) = n + 1 यदि मीटर = 0;  एक (एम-1, 1) यदि मीटर> 0 और एन = 0;  और एक (एम -1, ए (मी, n-1)) यदि मीटर> 0 और n> 0।

इस चित्र अच्छा है क्योंकि यह स्वाद में गणितीय महसूस करता है और अभी तक आप स्पष्ट रूप से उस में लगभग ठीक लिखा के रूप में लिखते हैं और एक कार्यान्वयन हो सकता है। ऐसा नहीं है कि प्राप्त करने के लिए हमेशा संभव नहीं है।

अन्य गणितीय अंकन कि छोरों के अनुरूप शामिल योग के लिए Σ-अंकन और सेट बिल्डर अंकन

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

29/01/2010 को 00:21
का स्रोत उपयोगकर्ता

वोट
2

सामान्य छोरों के लिए एक प्रतीक मौजूद नहीं है; आमतौर पर आप का उपयोग करेगा योग ऑपरेटर । "अगर" का उपयोग कर प्रस्तुत किया जाता है निहितार्थ , और "एक सूची के लिए एक टपल जोड़ें" करने के लिए आप का प्रयोग करेंगे संघ

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

इसके बारे में सोचो: जब आप GCD के लिए यूक्लिड के एल्गोरिथ्म, या एरेटोस्थेनेज की चलनी पर एक गणित पाठ पुस्तक पढ़ें, यह कैसे लिखा जाता है? आमतौर पर, एल्गोरिथ्म ही है, गद्य में है, जबकि एल्गोरिथ्म का सबूत है जहां गणितीय प्रतीकों झूठ बोलते हैं।

29/01/2010 को 02:00
का स्रोत उपयोगकर्ता

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more