Algebraic semantics (computer science)
কম্পিউটার বিজ্ঞানে, বীজগাণিতিক শব্দার্থবিজ্ঞান একটি আনুষ্ঠানিক পদ্ধতিতে প্রোগ্রামের নির্দিষ্টকরণ সম্পর্কে বর্ণনা এবং যুক্তি দেওয়ার জন্য বীজগাণিতিক আইনের উপর ভিত্তি করে স্বতঃসিদ্ধ শব্দার্থবিজ্ঞানের একটি রূপ। একটি বীজগাণিতিক নির্দিষ্টকরণের বাক্যবিন্যাস দুটি ধাপে প্রণয়ন করা হয়ঃ (1) তথ্যের ধরন এবং ক্রিয়াকলাপের প্রতীকগুলির একটি আনুষ্ঠানিক স্বাক্ষর সংজ্ঞায়িত করা, এবং (2) সেট এবং ফাংশনের মাধ্যমে স্বাক্ষরের ব্যাখ্যা করা। একটি স্বাক্ষরের সংজ্ঞা একটি বীজগাণিতিক নির্দিষ্টকরণের স্বাক্ষর তার আনুষ্ঠানিক বাক্য গঠনকে সংজ্ঞায়িত করে। "স্বাক্ষর" শব্দটি বাদ্যযন্ত্রের স্বরলিপিতে "মূল স্বাক্ষর" ধারণার মতো ব্যবহৃত হয়। একটি স্বাক্ষর ডেটা প্রকারের একটি সেট নিয়ে গঠিত, যা সাজানো হিসাবে পরিচিত, সেটগুলির একটি পরিবারের সাথে, প্রতিটি সেট অপারেশন প্রতীক (বা কেবল প্রতীক) ধারণ করে যা প্রকারের সাথে সম্পর্কিত। আমরা সাজানোর সাথে সম্পর্কিত অপারেশন প্রতীকগুলির সেটকে বোঝাতে ব্যবহার করি। উদাহরণস্বরূপ, পূর্ণসংখ্যা স্ট্যাকের স্বাক্ষরের জন্য, আমরা দুটি ধরণের সংজ্ঞায়িত করি, যথা, এবং, এবং অপারেশন প্রতীকগুলির নিম্নলিখিত পরিবারঃ যেখানে খালি স্ট্রিং বোঝায়। স্বাক্ষরের সেট-তাত্ত্বিক ব্যাখ্যা একটি বীজগণিত প্রকার এবং ক্রিয়াকলাপের প্রতীকগুলিকে সেট এবং ফাংশন হিসাবে ব্যাখ্যা করে। প্রতিটি বিন্যাসকে একটি সেট হিসাবে ব্যাখ্যা করা হয়, যাকে বলা হয় বিন্যাসের বাহক, এবং প্রতিটি প্রতীককে একটি ফাংশনে ম্যাপ করা হয়, যাকে বলা হয় অপারেশন অফ। পূর্ণসংখ্যা স্ট্যাকের স্বাক্ষরের ক্ষেত্রে, আমরা বিন্যাসকে পূর্ণসংখ্যার সেট হিসাবে ব্যাখ্যা করি এবং বিন্যাসকে পূর্ণসংখ্যা স্ট্যাকের সেট হিসাবে ব্যাখ্যা করি। আমরা অপারেশন প্রতীকগুলির পরিবারকে নিম্নলিখিত ফাংশন হিসাবে ব্যাখ্যা করিঃ শব্দার্থবিজ্ঞান অর্থ বা আচরণকে বোঝায়। একটি বীজগাণিতিক নির্দিষ্টকরণ প্রশ্নযুক্ত বস্তুর অর্থ এবং আচরণ উভয়ই সরবরাহ করে। সমীকরণগত স্বতঃসিদ্ধ একটি বীজগাণিতিক নির্দিষ্টকরণের শব্দার্থবিজ্ঞান শর্তাধীন সমীকরণের আকারে স্বতঃসিদ্ধ দ্বারা সংজ্ঞায়িত করা হয়। পূর্ণসংখ্যা স্ট্যাকের স্বাক্ষরের ক্ষেত্রে, আমাদের নিম্নলিখিত স্বতঃসিদ্ধগুলি রয়েছেঃ যে কোনও এবং যেখানে "পাওয়া যায়নি" নির্দেশ করে। গাণিতিক শব্দার্থবিজ্ঞান একটি নির্দিষ্টকরণের গাণিতিক শব্দার্থবিজ্ঞান (ডেনোটেশনাল শব্দার্থবিজ্ঞান নামেও পরিচিত) তার গাণিতিক অর্থকে বোঝায়। একটি বীজগাণিতিক নির্দিষ্টকরণের গাণিতিক শব্দার্থবিজ্ঞান হল সমস্ত বীজগণিতের শ্রেণী যা নির্দিষ্টকরণকে সন্তুষ্ট করে। বিশেষ করে, গোগুয়েন এবং অন্যান্যদের ক্লাসিক পদ্ধতি। প্রাথমিক বীজগণিতকে (আইসোমরফিজম পর্যন্ত অনন্য) বীজগাণিতিক নির্দিষ্টকরণের "সর্বাধিক প্রতিনিধিত্বমূলক" মডেল হিসাবে গ্রহণ করে। কার্যকরী শব্দার্থবিজ্ঞান একটি নির্দিষ্টকরণের কার্যকরী শব্দার্থবিজ্ঞানের অর্থ হল কীভাবে এটিকে গণনামূলক পদক্ষেপের ক্রম হিসাবে ব্যাখ্যা করা যায়। আমরা একটি মৌলিক শব্দকে চলকবিহীন বীজগাণিতিক অভিব্যক্তি হিসাবে সংজ্ঞায়িত করি। একটি বীজগাণিতিক নির্দিষ্টকরণের কার্যকরী শব্দার্থবিদ্যা বোঝায় যে কীভাবে প্রদত্ত সমতুল্য স্বতঃসিদ্ধগুলিকে বাম থেকে ডান পুনর্লিখন নিয়ম হিসাবে ব্যবহার করে স্থল পদগুলিকে রূপান্তরিত করা যেতে পারে, যতক্ষণ না এই পদগুলি তাদের স্বাভাবিক আকারে পৌঁছায়, যেখানে আর পুনর্লিখন সম্ভব নয়। পূর্ণসংখ্যা স্ট্যাকের স্বতঃসিদ্ধগুলি বিবেচনা করুন। ধরা যাক "ডেনোট" পুনর্লিখন করা হয়েছে। একটি বীজগাণিতিক নির্দিষ্টকরণকে কনফ্লুয়েন্ট (চার্চ-রসার নামেও পরিচিত) বলা হয় যদি কোনও মৌলিক পদের পুনর্লিখন একই স্বাভাবিক রূপের দিকে পরিচালিত করে। বলা হয় যে, যদি কোনও মৌলিক পদের পুনর্লিখন সীমিত সংখ্যক ধাপের পরে একটি স্বাভাবিক রূপের দিকে পরিচালিত করে তবে এটি শেষ হয়ে যাবে। বীজগাণিতিক নির্দিষ্টকরণকে ক্যানোনিকাল (অভিসারী হিসাবেও পরিচিত) বলা হয় যদি এটি সংমিশ্রণ এবং সমাপ্তি উভয়ই হয়। অন্য কথায়, যদি কোনও মৌলিক পদের পুনর্লিখন সীমিত সংখ্যক ধাপের পরে একটি অনন্য স্বাভাবিক রূপের দিকে পরিচালিত করে তবে এটি অনুমোদিত। যে কোনও ক্যানোনিকাল বীজগাণিতিক নির্দিষ্টকরণের পরিপ্রেক্ষিতে, গাণিতিক শব্দার্থবিজ্ঞান কার্যকরী শব্দার্থবিজ্ঞানের সাথে একমত। ফলস্বরূপ, প্রোগ্রামের সঠিকতার সমস্যাগুলি সমাধানের জন্য ক্যানোনিকাল বীজগাণিতিক নির্দিষ্টকরণগুলি ব্যাপকভাবে প্রয়োগ করা হয়েছে। উদাহরণস্বরূপ, অসংখ্য গবেষক অবজেক্ট-ওরিয়েন্টেড প্রোগ্রামিংয়ে বস্তুর পর্যবেক্ষণমূলক সমতুল্যতার পরীক্ষায় এই ধরনের নির্দিষ্টকরণ প্রয়োগ করেছেন। চেন এবং সে-কে একটি গৌণ উৎস হিসাবে দেখুন যা 1981 থেকে 2013 সাল পর্যন্ত বিশিষ্ট গবেষণার একটি ঐতিহাসিক পর্যালোচনা প্রদান করে। আরও দেখুন বীজগাণিতিক শব্দার্থবিদ্যা (গাণিতিক যুক্তি) ওবিজে (প্রোগ্রামিং ভাষা) জোসেফ গোগুয়েন রেফারেন্স আনুষ্ঠানিক পদ্ধতি কম্পিউটার বিজ্ঞানে যুক্তি আনুষ্ঠানিক নির্দিষ্টকরণ ভাষা প্রোগ্রামিং ভাষা শব্দার্থবিদ্যা