কোন ভাষা যা তার নিজস্ব সংকলক টিউরিং-সম্পূর্ণ প্রকাশ করতে পারে?


12

টেক্সট.এসএ সম্পর্কে একটি মন্তব্য আমাকে অবাক করে দিয়েছে। বিবৃতিটি মূলত:

যদি আমি এক্স ভাষায় এক্স ভাষার জন্য একটি কম্পাইলার লিখতে পারি তবে এক্স টিউরিং-সম্পূর্ণ।

গণনীয়তা এবং আনুষ্ঠানিক ভাষার পদগুলিতে, এটি হ'ল:

তাহলে সিদ্ধান্ত নেয় এবং , তারপর ।এল এল টি এমএম এল এফ এল = আর MLLTMMLFL=RE

এখানে all সমস্ত মেশিনের এনকোডিংগুলির ভাষা বোঝায় এবং মেশিনগুলি দ্বারা গণনা করা ফাংশনগুলির বোঝায় । এফ এল এলLTMFLL

এটা কি সত্য?


কাছাকাছি, ভাবেন / সম্মত হন এর মতো কিছু প্রকৃত কাছাকাছি অবশ্যই থাকতে হবে, যে কোনও "নন্ট্রাইভাল" বা "যথেষ্ট জটিল" ভাষা যা তার নিজস্ব সিমুলেটর প্রকাশ করতে পারে টিএম সম্পূর্ণ। একটি সংকলক সাধারণত একটি সিমুলেটারের NEC অংশ হয়। এটি সত্যই অনেকগুলি টিএম সম্পূর্ণতার প্রমাণগুলিতে পাওয়া "ডিজাইনের ধরণ" তবে সম্ভবত জেনারালাইজড / আনুষ্ঠানিককরণ করা হয়নি has কম্পিউটার সায়েন্স চ্যাটে আরও বিশ্লেষণ / আলোচনার জন্য একটি বিষয় হতে পারে । সন্দেহ / ধারণা অনুমান করার মতো আরও কিছু আকর্ষণীয় থিমও রয়েছে যেমন "প্রতিটি উত্তর / পর্যাপ্ত জটিল পুনরাবৃত্ত এবং পুনরাবৃত্তিমূলকভাবে গণনাকারী ভাষা একে অন্যের কাছে ম্যাপ করা / হ্রাস করা যায়"।
vzn

1
আমি ইন্টারপ্রেটমি নামে একটি গুপ্ত ভাষা তৈরি করেছি যা এটি তার নিজস্ব দোভাষীকে প্রকাশ করা ছাড়া আর কিছুই করতে পারে না , সুতরাং এটি অবশ্যই টুরিং সম্পূর্ণ নয়।
অবিচ্ছিন্ন বানান

আপনি দ্বিতীয় বিবৃতি ব্যাখ্যা করতে পারেন? কি ? এই বিবৃতিটি প্রথমটির সাথে কীভাবে সম্পর্কিত? M
রিনিয়ারপোস্ট

@ রিনিয়ারপোস্ট ল্যাঙ্গেল রেঙ্গেলটি সাধারণত (মান্যযোগ্য) এনকোডিং দেওয়া এর সংখ্যাকে বোঝায় । তাই, । দ্বারা আমি মেশিনের ভাষা দ্বারা গণনা করা ফাংশনগুলির সেটকে । এম এল টি এম = { এম | এম  একটি টুরিং মেশিন } এফ এল এলMMLTM={MM is a Turing machine}FLL
রাফেল

দাবিটি জানানোর আরও ভাল উপায় হ'ল: "যদি এবং with সহ একটি টিএম থাকে , তবে ।এম এল এল এম = এল এফ এল = আর MMLLM=LFL=RE
রাফেল

উত্তর:


13

নিম্নলিখিত প্রোগ্রামিং ভাষা দ্বারা প্রদর্শিত হিসাবে অনানুষ্ঠানিক বিবৃতি সত্য নয়। যে কোনও স্ট্রিং, বলুন, এএসসিআইআই অক্ষর একটি বৈধ প্রোগ্রাম এবং প্রতিটি প্রোগ্রামের অর্থ হ'ল "এমন একটি প্রোগ্রাম আউটপুট করুন যা তার ইনপুটটির অনুলিপি দেয় out" সুতরাং, এই ভাষার প্রতিটি প্রোগ্রাম ভাষার জন্য সংকলক তবে ভাষা টিউরিং-সম্পূর্ণ নয়।

আমি নিশ্চিত নই যে আপনার "কম্পিউটাবিলিটি থিওরি সংস্করণ" সমান কিনা তবে এটিও সত্য নয়। দ্বারা Kleene দ্বিতীয় পুনরাবৃত্তির উপপাদ্য , টুরিং মেশিনে কোনো কোডিং জন্য, একটি টি এম করেন যা নিজের কোডিং গ্রহণ এবং অন্যান্য প্রত্যাখ্যান করে। 1 এই মেশিনটি প্রস্তাবের প্রতিবিম্ব ample আরও দৃ concrete়ভাবে, আমরা একটি কোডিং নির্বাচন করে ফলাফল অর্জন করতে পারি। উদাহরণস্বরূপ, মেশিন দ্বারা নির্ধারিত প্রতিটি বিজোড় নম্বর কোডটি  "যদি আমার ইনপুটটি বিজোড় হয় তবে তা গ্রহণ করুন; অন্যথায়, প্রত্যাখ্যান করুন" এবং ট্যুরিং মেশিনগুলির জন্য আপনার নিজের পছন্দসই কোডিং স্কিমটিতে দ্বারা কোড করা মেশিনটিকে  নম্বর দিন  ।  ভাষায় হয়  দ্বারা গৃহীত  কিন্তুM2xxMLMFL  সম্পূর্ণ নয়।


1 ক্লিনির দ্বিতীয় পুনরাবৃত্তি উপপাদ্যটি বলেছে যে কোনও জন্য আংশিক পুনরাবৃত্তি ফাংশনগুলির (যেমন, পূর্ণসংখ্যার হিসাবে প্রোগ্রামগুলির কোনও কোডিংয়ের জন্য), এবং কোনও আংশিক পুনরাবৃত্তি ফাংশন  , এখানে একটি পূর্ণসংখ্যা  রয়েছে যে  হ'ল ফাংশন যা কে মানচিত্র করে । সুতরাং, বিশেষতঃ এমন ফাংশন হিসাবে ধরা যাক যদি গ্রহণ করে এবং অন্যথায় প্রত্যাখ্যান করে। উপপাদ্য দ্বারা, একটি পূর্ণসংখ্যা  যা প্রোগ্রামটি কোড করে । অর্থাৎ, তার নিজস্ব কোডিং গ্রহণ করে  Q ( x , y ) পি ϕ পি(ϕi)i0Q(x,y)pϕpyQ(p,y)Qx=ypϕp(y)=Q(p,y)ϕpp এবং অন্যান্য সমস্ত ইনপুট প্রত্যাখ্যান করে।


1
কোন অর্থে সেই ভাষার প্রতিটি প্রোগ্রামই সেই ভাষার জন্য একটি সংকলক? প্রতিটি প্রোগ্রামই এমন একটি প্রোগ্রাম যা সেই ভাষায় একটি প্রোগ্রামকে ইনপুট করে এবং সেই ভাষায় একটি আলাদা প্রোগ্রাম আউটপুট করে, হ্যাঁ, তবে কুইনগুলি সাধারণত সংকলক হিসাবে বিবেচিত হয় না।
ব্যবহারকারী 253751

1
আমি মনে করি @immibis একটি বিন্দু আছে: আপনার কম্পাইলার হয় যেহেতু ভাষায় সব প্রোগ্রাম হয় , তাই পরিষ্কারভাবে নয় ভাষায়। আমি কিছু অনুপস্থিত করছি? ( পি ) = { x r টি ইউ আর এন পি } পি ( এক্স ) = পি সিcc(P)={xreturn P}P(x)=Pc
রাফেল

1
@ মিম্বিস আমি (বিচ্ছিন্নভাবে) মনে করি আপনি ঠিক বলেছেন। দেখে মনে হচ্ছে যে আমি যা লিখতে চেয়েছি তা হ'ল প্রতিটি প্রোগ্রামের শব্দার্থক শব্দগুলি কেবল "আপনার ইনপুট আউটপুট"। এটি আমি যা লিখেছিলাম তার কাছাকাছি মনে হয় এটি সম্ভবত আমি প্রথম স্থানে বলতে চেয়েছিলাম। অথবা আমি অত্যন্ত ভাগ্যবান যে সঠিক উত্তর আমার ভুল উত্তর থেকে সম্পাদনা দূরত্ব এত ছোট ছিল। :-)
ডেভিড রিচার্বি

1
উত্তর এখন বলেছে "এর ইনপুট উপেক্ষা করে এর ইনপুটটির একটি অনুলিপি আউটপুট করে" - আপনি দুটোই করতে পারবেন না।
ব্যবহারকারী 253751

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.