কম্পিউটার টিউটোরিয়াল

টারিং মেশিন কনস্ট্রাক্ট: ভাষা L = {0ⁿ1ⁿ2ⁿ | n≥1}


এখানে আমরা দেখব কীভাবে ভাষা L = {0ⁿ1ⁿ2ⁿ | n ≥ 1} এর জন্য একটি টারিং মেশিন তৈরি করা যায়। এটি একটি ধরনের ভাষা উপস্থাপন করে যেখানে শুধু তিনটি ক্যারেক্টার ০, ১ এবং ২ ব্যবহার করা হয়। w হলো একটি স্ট্রিং। তাই যদি w = 000111222 হয়, তবে টারিং মেশিনটি এটিকে একসেপ্ট করবে।

এটি সমাধানের জন্য আমরা এই পদ্ধতি ব্যবহার করব। প্রথমে সামনে থেকে একটি ০ কে x-তে রিপ্লেস করব, তারপর ডান দিকে যাব যতক্ষণ না একটি ১ পাওয়া যায় এবং এই ১ কে y-তে রিপ্লেস করব। আবার, ডান দিকে যাব যতক্ষণ না একটি ২ পাওয়া যায়, এটিকে z-তে রিপ্লেস করব এবং বাম দিকে যাব। এখন বাম দিকে যাব যতক্ষণ না একটি x পাওয়া যায়। পাওয়া গেলে এক ধাপ ডান যাব, তারপর উপরের প্রসেসটি আবার ফলো করব।

একটি কন্ডিশন আসবে যখন আমরা একটি x কে অবিলম্বে একটি y-এর পর পাব। এই পয়েন্টে আমরা ডান দিকে যাব এবং চেক করব সকল ১ এবং ২ কি y এবং z-তে কনভার্ট হয়েছে কিনা। যদি না হয়, তবে স্ট্রিং একসেপ্ট করা হবে না। যদি $ পৌঁছায়, তবে স্ট্রিং একসেপ্ট করা হবে।

স্টেট ট্রানজিশন ডায়াগ্রাম

টারিং মেশিন কনস্ট্রাক্ট: ভাষা L = {0ⁿ1ⁿ2ⁿ | n≥1}


  1. টারিং মেশিন কনস্ট্রাক্ট: ভাষা L = {aⁱbʲcᵏ | i<j<k; i ≥ 1}

  2. টারিং মেশিন কনস্ট্রাক্ট: ভাষা L = {aⁱbʲcᵏ | i×j=k; i,j,k ≥ 1}

  3. লিনাক্সের জন্য ৩টি চমৎকার ভাষা অনুবাদ টুল

  4. লিনাক্সের জন্য ৪টি Time Machine অ্যাল্টারনেটিভ