আমি শিখছি কীভাবে এনএফএগুলিকে ডিএফএতে রূপান্তর করতে হয় এবং আমি নিশ্চিত করতে চাই যে আমি এটি সঠিকভাবে করছি। স্পষ্টতই, অন্য দিকে ফিরে যাওয়া কোনও জিনিস নয়। ডিএফএ একটি এনএফএ এর সমতুল্য কিনা তা পরীক্ষা করতে কেউ কি অ্যালগরিদম সম্পর্কে জানেন?
আমি শিখছি কীভাবে এনএফএগুলিকে ডিএফএতে রূপান্তর করতে হয় এবং আমি নিশ্চিত করতে চাই যে আমি এটি সঠিকভাবে করছি। স্পষ্টতই, অন্য দিকে ফিরে যাওয়া কোনও জিনিস নয়। ডিএফএ একটি এনএফএ এর সমতুল্য কিনা তা পরীক্ষা করতে কেউ কি অ্যালগরিদম সম্পর্কে জানেন?
উত্তর:
এটি একটি সমস্যাযুক্ত প্রশ্ন। অটোমাতার সমতুল্যতা যাচাই করার একটি উপায় রয়েছে, যা আমি এখন ব্যাখ্যা করব, তবে আমি ভয় করি যে এটি আপনাকে সাহায্য করবে না, কারণ আপনি শেষে দেখবেন।
মনে রাখবেন যে দুটি সেট এবং B সমান if if A ⊆ B এবং B ⊆ A (এটি সেট সমতার সংজ্ঞা)। সুতরাং, এটি যথেষ্ট আপনি যে যাচাই করার জন্য এল ( ডি ) ⊆ এল ( এন ) এবং এল ( এন ) ⊆ এল ( ডি ) , যেখানে ডি এবং এন , আপনার DFA তে এবং NFA হয় যথাক্রমে।
মূলত, আপনার প্রশ্নের সমস্যাটি আরও গভীর: আপনি যাচাই করতে চান যে আপনি (একটি অপরিজ্ঞাত গণনা মডেল) একটি সঠিকভাবে সংজ্ঞায়িত অ্যালগরিদমকে সঠিকভাবে সম্পাদন করেছেন। সুতরাং এটি আসলে কম্পিউটার-বিজ্ঞানের সমস্যা নয়।
এগিয়ে যাওয়ার এক উপায় হল এনএফএকে ডিএফএতে রূপান্তর করা এবং তারপরে দুটি ডিএফএর সমতুল্যতা পরীক্ষা করা, যার জন্য একটি রৈখিক অ্যালগরিদম [1] রয়েছে।
নিম্নলিখিত কাগজ দুটি এনএফএ-এর সমতুল্যতার আরও সাধারণ ক্ষেত্রে বিবেচনা করে (অবশ্যই এটি আপনার ক্ষেত্রেও প্রযোজ্য)।
ফিলিপ্পো বনচি, ড্যামিয়েন পুউস, প্রোগ্রামিং ল্যাঙ্গুয়েজসের মূলসূত্র (পিওপিএল), জানুয়ারী ২০১৩, রোমা, ইতালি পর্যন্ত বিসিএমুলেশনের সাথে এনএফএ সমতা পরীক্ষা করে । এসিএম, পিপি 4657-468, 2013।
বিমূর্ত । আমরা অ-নিরোধক সসীম অটোমেটার ভাষার সমতা প্রমাণ করার কৌশল হিসাবে একত্রিত হয়ে বিসিমুলেশন চালু করি। এই কৌশলটি অন্বেষণ করে আমরা হপক্রফ্ট এবং কার্পের দ্বারা শাস্ত্রীয় অ্যালগরিদমের অপ্টিমাইজেশন তৈরি করেছি [1]। আমরা অন্তর্নিহিত দুটি সমন্বয়মূলক প্রমাণ পদ্ধতিগুলি বিশ্লেষণ করে এবং সম্পর্কিত করে সম্প্রতি প্রবর্তিত এন্টিচাইন অ্যালগরিদমগুলির সাথে আমাদের পদ্ধতির তুলনা করি। আমরা দৃ concrete় উদাহরণ দিই যেখানে অ্যান্টিচেইনগুলির তুলনায় আমরা তাত্পর্যপূর্ণভাবে উন্নতি করি; পরীক্ষামূলক ফলাফলগুলি তদারকযোগ্য উন্নতিগুলি দেখায়।
[1] জে হপক্রফ্ট এবং আরএম কার্প। সীমাবদ্ধ অটোমেটার সমতুল্যতা পরীক্ষা করার জন্য একটি লিনিয়ার অ্যালগরিদম। টিআর 114, কর্নেল ইউনিভ।, ডিসেম্বর 1971।
এই কাগজের ওয়েব পরিশিষ্টগুলিও দেখুন , যাতে ফলাফলগুলির কক প্রুফ স্ক্রিপ্ট রয়েছে, একটি বাস্তবায়নের লিঙ্ক এবং একটি ইন্টারেক্টিভ অ্যাপলেট।
এই প্রশ্নটি একটি তাত্ত্বিক প্রশ্নের চেয়ে প্রয়োগের সফ্টওয়্যার পরীক্ষার এবং অনুশীলনে যথার্থতা যাচাইয়ের বিষয়ে বেশি।
আপনি আপনার ফলাফল যাচাই করার জন্য পরীক্ষিত পূর্বের পরীক্ষিত সফ্টওয়্যারটির উপর নির্ভর করতে পারেন। যেমন এটিএন্ডটি এফএসএম গ্রন্থাগার
অন্য ধারণা: এলোমেলোভাবে পরীক্ষা। আপনার ভাষার মধ্যে এলোমেলো স্ট্রিং চয়ন করুন। স্ট্রিংগুলি ডিএফএ / এনএফএ দ্বারা গৃহীত বা অগ্রহণযোগ্য কিনা তা নির্ধারণ করুন। যদি দুটি সমান না হয় তবে উচ্চ সম্ভাবনার সাথে আপনি সেই স্ট্রিংগুলি দেখতে পাবেন যা মিলছে না।
আরেকটি ধারণা: আপনি ডিএফএ এবং এনএফএর সমস্ত শাখা কিছু নির্দিষ্ট গভীরতায় অতিক্রম করতে কোড লিখতে পারেন এবং অমিল খুঁজে পেতে পারেন। এটি প্রদত্ত দৈর্ঘ্যের সমস্ত সম্ভাব্য স্বীকৃত স্ট্রিংগুলি গণনার সমতুল্য।