কলেজে আমরা সাধারণভাবে গণনার তত্ত্ব এবং টিউরিং মেশিনগুলি আরও বিশেষভাবে শিখছি। দুর্দান্ত তাত্ত্বিক ফলাফলগুলির মধ্যে একটি হ'ল সম্ভাব্য আকারের বড় বর্ণমালা (চিহ্নগুলি) এর ব্যয়ে, আপনি রাষ্ট্রের সংখ্যা হ্রাস করতে পারেন মাত্র 2 এ।
আমি বিভিন্ন টিউরিং মেশিনের উদাহরণ খুঁজছিলাম এবং উপস্থাপিত একটি সাধারণ উদাহরণ হ'ল প্যারেন্টেসিস ম্যাচার / চেকার। মূলত এটি পরীক্ষা করে যে প্রথম বন্ধনীগুলির একটি স্ট্রিং (()()()))()()()
যেমন ভারসাম্যযুক্ত হয় (পূর্ববর্তী উদাহরণটি ভারসাম্যহীনতার জন্য 0 ফিরে আসবে)।
আমি কেবল এটি তিনটি রাষ্ট্রের মেশিন হিসাবে পেতে পারি হিসাবে চেষ্টা করুন। আমি এটি জানতে চাই যে কেউ এটিকে তাত্ত্বিক সর্বনিম্ন 2 এর মধ্যে কমাতে পারে এবং তাদের পদ্ধতির / রাষ্ট্রগুলি / চিহ্নগুলি কী ছিল!
কেবল স্পষ্ট করে বলতে গেলে, প্রথম বন্ধনে ফাঁকা টেপের মধ্যে "স্যান্ডউইচড" তাই উপরের উদাহরণে
- - - - - - - (()()()))()()() - - - - - - -
টেপের ইনপুট হবে। বর্ণমালা অন্তর্ভুক্ত করা হবে (
, )
, 1
, 0
, -
, এবং *halt*
রাষ্ট্র একটি রাষ্ট্র হিসেবে গণনা করা হয় না।
রেফারেন্সের জন্য আমার কাছে তিনটি রাষ্ট্রের পদ্ধতির নীচে রয়েছে: রাজ্যের বিবরণ:
State s1: Looks for Closing parenthesis
State s2: Looks for Open parenthesis
State s3: Checks the tape to ensure everything is matched
Symbols: ),(,X
রূপান্তরগুলি তালিকাভুক্ত:
Action: State Symbol NewState WriteSymbol Motion
// Termination behavior
Action: s2 - *halt* 0 -
Action: s1 - s3 - r
//Transitions of TM
Action: s1 ( s1 ( l
Action: s1 ) s2 X r
Action: s1 X s1 X l
Action: s2 ( s1 X l
Action: s2 X s2 X r
Action: s3 ( *halt* 0 -
Action: s3 X s3 X r
Action: s3 - *halt* 1 -
এই সমস্ত লিখতে অনানুষ্ঠানিক উপায় ক্ষমা করুন। আমি এখনও এর পিছনে তাত্ত্বিক নির্মাণগুলি শিখছি।