ऐसा इसलिए है क्योंकि भाषाएं "समस्या" की अवधारणा को औपचारिक रूप देने का सबसे अच्छा (केवल?) तरीका है।
एक एल्गोरिथ्म (ट्यूरिंग मशीन) में प्रदर्शन होता है, जिसे हम बड़े-ओ जटिलता के माध्यम से व्यक्त करते हैं। एक समस्या (भाषा) एक जटिलता वर्ग की है। इन्हें आमतौर पर अस्तित्व द्वारा परिभाषित किया जाता है: यदि किसी भाषा स्वीकार करने वाली मशीन मौजूद है जो दिए गए प्रदर्शन (स्थान या समय) में चलती है, तो भाषा संबंधित जटिलता वर्ग से संबंधित है।एल
इसके कुछ कारण हैं। पहला यह कि भाषाएँ प्लेटफ़ॉर्म स्वतंत्र हैं। आप इस बारे में चिंता नहीं कर रहे हैं कि एक पूर्णांक 32 या 64 बिट्स है, या क्या फ़्लोटिंग पॉइंट ऑपरेशन अन्य ऑपरेशनों के समानांतर चलता है। ये चीजें माइक्रो-लेवल पर परफॉर्मेंस स्पीडअप देती हैं, लेकिन मैक्रो लेवल में कॉम्प्लेक्सिटी एनालिसिस की दिलचस्पी होती है। जैसा कि आप 100 से से 10 9 से 10 12 इनपुट के पैमाने पर हैं, एल्गोरिथ्म का प्रदर्शन कैसे बदलता है? क्या यह ब्रह्मांड में परमाणुओं की तुलना में 1 मिलियन टेप कोशिकाओं का उपयोग करके या 1 मिलियन से अधिक कोशिकाओं तक जाता है?1061091012
दूसरा यह है कि डेटा के लिए भाषा केवल एक अच्छा अमूर्त है। आपको कुछ ऐसी चीज़ों की ज़रूरत है जिनके बारे में आप प्रमाण कर सकें, कुछ ऐसी जो आप औपचारिक रूप से मॉडल कर सकते हैं। अपने इनपुट और आउटपुट को एक स्ट्रिंग के रूप में एन्कोड करने का मतलब है कि अब आप मेमोरी में बिट्स के साथ नहीं, बल्कि विशिष्ट गुणों वाले गणितीय ऑब्जेक्ट के साथ काम कर रहे हैं। आप उनके बारे में तर्क कर सकते हैं और औपचारिक, और बहुत सरल अर्थों में उनके बारे में प्रमाण साबित कर सकते हैं।
जटिलता सिद्धांत निर्णय की समस्याओं पर ध्यान केंद्रित करता है क्योंकि वे अंत में मुश्किल होते हैं। जब ट्रैवल सेल्समैन का निर्णय संस्करण एनपी-पूर्ण होता है (यानी लंबाई तुलना में छोटा है ), तो जाहिर है कि सबसे छोटा रास्ता कठिन है। फ़ंक्शन / ऑप्टिमाइज़ेशन समस्याओं पर उतना ध्यान केंद्रित नहीं है क्योंकि अभी भी बहुत सारे खुले प्रश्न हैं और सरल निर्णय समस्याओं के बारे में अनसुलझी समस्याएं हैं।क
मुझे लगता है कि यहां मेरी चुनौती आपके लिए है: गणितीय रूप से उन समस्याओं का वर्णन करें जो भाषा नहीं है। मुझे नहीं पता कि भाषाएँ विशेष हैं, लेकिन मुझे लगता है कि वे सबसे सरल उपकरण हैं जो हमें मिला है, जिससे निपटने के लिए सबसे आसान है।