নিয়ম (Rules) প্রোলগে একটি অত্যন্ত গুরুত্বপূর্ণ উপাদান, যা শর্ত বা শর্তযুক্ত সম্পর্ক তৈরি করতে ব্যবহৃত হয়। নিয়মের মাধ্যমে আমরা একটি লজিক্যাল স্টেটমেন্ট বা যুক্তিগত সম্পর্ক তৈরি করতে পারি, যা আরও জটিল সমস্যার সমাধান করার জন্য ব্যবহার করা হয়। প্রোলগে নিয়ম তৈরি করতে আমরা সাধারণত :- (colon dash) সিম্বলটি ব্যবহার করি, যা শর্তের মধ্যে সম্পর্ক স্থাপন করে।
প্রোলগে নিয়ম (Rules) এর গঠন:
নিয়ম সাধারণত দুইটি অংশ নিয়ে গঠিত:
- হেড (Head): যে অংশটি শর্ত এবং ফলাফল সরাসরি নির্দেশ করে।
- বডি (Body): শর্ত বা লজিক্যাল সম্পর্ক যা হেডে উল্লেখিত ফলাফল তৈরি করতে সাহায্য করে। যদি বডির শর্তগুলি পূর্ণ হয়, তবে হেডের ফলাফল সত্য হবে।
সাধারণ গঠন:
Head :- Body.এখানে, Head হলো সেই লজিক্যাল স্টেটমেন্ট বা ফলাফল, যা Body এর শর্ত পূর্ণ হলে সত্য হয়।
উদাহরণ ১: সহজ নিয়ম
ধরা যাক, আমরা একটি পিতা-সন্তান সম্পর্ক তৈরি করতে চাই। যদি আমরা জানি যে, অজিজ এর পিতা রহমান এবং রহমান এর পিতা শাওন, তাহলে আমরা নিচের মতো একটি নিয়ম তৈরি করতে পারি:
পিতা(X, Y) :- পিতা(Y, Z).এটি এমনভাবে কাজ করবে:
পিতা(X, Y)যদিপিতা(Y, Z)হয়, তাহলে প্রোলগXএবংYএর মধ্যে সম্পর্ক তৈরি করবে।- সহজভাবে বলতে গেলে,
Xএর পিতা যদিYহয়, এবংYএর পিতা যদিZহয়, তবেXএর পিতার পিতা হবে **Z**।
এখন, যদি আমরা ফ্যাক্টগুলো যোগ করি:
পিতা(অজিজ, রহমান).
পিতা(রহমান, শাওন).এখন, আমরা যদি জানতে চাই:
?- পিতা(অজিজ, X), পিতা(X, Y).এখানে, প্রথমে প্রোলগ অজিজ এর পিতা খুঁজে বের করবে এবং তারপর সেই পিতার পিতা খুঁজে বের করবে।
উত্তর:
X = রহমান,
Y = শাওন.এটি বলে যে, অজিজ এর পিতা রহমান এবং রহমান এর পিতা শাওন।
উদাহরণ ২: কুয়েরি ও নিয়মের মাধ্যমে সম্পর্ক তৈরি
ধরা যাক, আমরা পিতা সম্পর্কের পাশাপাশি মা সম্পর্কও যুক্ত করতে চাই। আমরা দুটি ফ্যাক্ট এবং একটি নিয়ম তৈরি করব:
পিতা(অজিজ, রহমান).
মা(রহমান, নুসরাত).
বাবা_ও_মা(X, Y) :- পিতা(X, Y), মা(X, Y).এটি বলে যে, যদি X এর Y এর পিতা এবং মা উভয়ই হয়, তবে তাদের বাবা এবং মা সম্পর্ক তৈরি হবে।
এখন, যদি আমরা জানতে চাই:
?- বাবা_ও_মা(অজিজ, রহমান).উত্তর হবে:
false.কারণ, অজিজ এর মা হিসেবে নুসরাত উল্লেখ করা হয়নি, ফলে এটি সত্য হবে না।
এভাবে, প্রোলগের নিয়মের মাধ্যমে আমরা আরও জটিল সম্পর্ক তৈরি করতে পারি, যেমন বাবা-মা সম্পর্ক, ভাই-বোন সম্পর্ক, বা অন্য কোনো সম্পর্ক যা শর্তের ভিত্তিতে তৈরি হয়।
উদাহরণ ৩: একাধিক শর্তযুক্ত নিয়ম
এখন, আমরা একটি নিয়ম তৈরি করব যাতে একাধিক শর্তের মধ্যে সম্পর্ক তৈরি করা হবে।
ধরা যাক, আমরা একটি নিয়ম তৈরি করব যা বলে:
"যদি কোনো ব্যক্তি পুরুষ (male) হয় এবং তার পিতা একটি নির্দিষ্ট ব্যক্তি হয়, তবে তাকে ছেলে (son) বলা হবে।"
পুরুষ(রহমান).
পিতা(রহমান, শাওন).
ছেলে(X) :- পুরুষ(X), পিতা(X, Y).এখন, যদি আমরা জানতে চাই:
?- ছেলে(রহমান).এটি উত্তর দেবে:
true.এখানে, প্রোলগ রহমান কে ছেলে বলে চিহ্নিত করেছে কারণ সে পুরুষ এবং তার পিতা শাওন।
সারসংক্ষেপ:
নিয়ম (Rules) প্রোলগে একটি শক্তিশালী উপাদান, যা শর্ত (conditions) এবং ফলাফল (result) এর মধ্যে সম্পর্ক স্থাপন করে। এটি লজিক্যাল স্টেটমেন্ট তৈরি করতে ব্যবহৃত হয় এবং শর্তগুলি পূর্ণ হলে ফলাফল সত্য হয়। প্রোলগের মাধ্যমে আপনি যেকোনো সম্পর্কের ভিত্তিতে বিস্তারিত লজিক তৈরি করতে পারেন যা বিভিন্ন ধরনের প্রশ্নের উত্তর বা ফলাফল নির্ধারণে সহায়ক হয়।
Read more