What Monads Can and Cannot Do with a Few Extra Pages
Møgelberg, Zwart
The delay monad provides a way to introduce general recursion in type theory. To write programs that use a wide range of computational effects directly in type theory, we need to combine the delay monad with the monads of these effects. Here we present a first systematic study of such combinations.
We study both the coinductive delay monad and its guarded recursive cousin, giving concrete examples of combining these with well-known computational effects. We also provide general theorems stating which algebraic effects distribute over the delay monad, and which do not. Lastly, we salvage some of the impossible cases by considering distributive laws up to weak bisimilarity.
academic
মোনাডগুলি কয়েকটি অতিরিক্ত পৃষ্ঠা দিয়ে কী করতে পারে এবং কী করতে পারে না
বিলম্ব মোনাড (delay monad) টাইপ তত্ত্বে সাধারণ পুনরাবৃত্তি প্রবর্তনের একটি পদ্ধতি প্রদান করে। টাইপ তত্ত্বে সরাসরি ব্যাপক গণনা প্রভাব ব্যবহার করে এমন প্রোগ্রাম লেখার জন্য, আমাদের বিলম্ব মোনাডকে এই প্রভাবগুলির মোনাডের সাথে একত্রিত করতে হবে। এই নিবন্ধটি প্রথমবারের মতো এই সংমিশ্রণটি পদ্ধতিগতভাবে অধ্যয়ন করে। নিবন্ধটি সহ-আবেগপূর্ণ বিলম্ব মোনাড এবং এর সুরক্ষিত পুনরাবৃত্তি রূপান্তরগুলি অধ্যয়ন করে, এই মোনাডগুলিকে পরিচিত গণনা প্রভাবের সাথে একত্রিত করার জন্য নির্দিষ্ট উদাহরণ প্রদান করে। একই সাথে, সাধারণ উপপাদ্য প্রদান করে যা ব্যাখ্যা করে কোন বীজগাণিতিক প্রভাব বিলম্ব মোনাডে বিতরণ করে এবং কোনগুলি বিতরণ করে না। অবশেষে, দুর্বল দ্বি-অনুকরণের অধীনে বিতরণ আইন বিবেচনা করে কিছু অসম্ভব ক্ষেত্রে সংরক্ষণ করে।
সমাধান করার সমস্যা: Martin-Löf টাইপ তত্ত্ব যুক্তিগত ব্যাখ্যার সঠিকতা বজায় রাখতে সমস্ত প্রোগ্রামের সমাপ্তির প্রয়োজন করে, কিন্তু বাস্তব প্রোগ্রামিংয়ে সাধারণ পুনরাবৃত্তির প্রয়োজন। বিলম্ব মোনাড পুনরাবৃত্তিকে এনক্যাপসুলেট করে এই সমস্যার সমাধান করে, কিন্তু বিলম্ব মোনাডকে অন্যান্য গণনা প্রভাবের সাথে একত্রিত করার তত্ত্বের অভাব রয়েছে।
সমস্যার গুরুত্ব: আধুনিক কার্যকরী প্রোগ্রামিং ভাষাগুলিকে একাধিক গণনা প্রভাব (ব্যতিক্রম, অবস্থা, অনির্ধারণতা ইত্যাদি) পরিচালনা করতে হবে। টাইপ তত্ত্বে সরাসরি এই প্রভাবগুলি প্রোগ্রাম করা এবং যুক্তি দেওয়ার জন্য বিলম্ব মোনাড এবং অন্যান্য মোনাডের মিথস্ক্রিয়া বর্ণনা করার জন্য একটি গাণিতিক তত্ত্ব প্রয়োজন।
বিদ্যমান পদ্ধতির সীমাবদ্ধতা:
বিলম্ব মোনাড এবং অন্যান্য মোনাডের সংমিশ্রণের পদ্ধতিগত অধ্যয়নের অভাব
ডোমেইন তত্ত্বে সম্পর্কিত ফলাফলগুলি খুব জটিল এবং টাইপ তত্ত্ব সেটিংয়ের জন্য উপযুক্ত নয়
কিছু সংমিশ্রণ (যেমন সীমিত শক্তি সেট মোনাড) অসম্ভব বলে পরিচিত, কিন্তু সাধারণ তত্ত্বের অভাব রয়েছে
গবেষণার প্রেরণা: বিলম্ব মোনাড এবং অন্যান্য গণনা প্রভাবের সংমিশ্রণের সম্পূর্ণ গাণিতিক তত্ত্ব প্রতিষ্ঠা করা, টাইপ তত্ত্বে উন্নত কার্যকরী প্রোগ্রামিংয়ের জন্য তাত্ত্বিক ভিত্তি প্রদান করা।
পদ্ধতিগত গবেষণা কাঠামো: বিলম্ব মোনাড এবং অন্যান্য মোনাডের সংমিশ্রণের প্রথম পদ্ধতিগত অধ্যয়ন, সহ-আবেগপূর্ণ এবং সুরক্ষিত পুনরাবৃত্তি উভয় রূপান্তর অন্তর্ভুক্ত।
নির্দিষ্ট সংমিশ্রণ উদাহরণ: বিলম্ব মোনাডকে মান গণনা প্রভাবের সাথে (ব্যতিক্রম, পাঠক, বৈশ্বিক অবস্থা, ধারাবাহিকতা, নির্বাচন) কীভাবে একত্রিত করতে হয় তা প্রদর্শন করে।
বিতরণ আইনের সাধারণ উপপাদ্য:
ক্রমিক বিতরণ সুষম সমীকরণের বীজগাণিতিক মোনাডের জন্য প্রমাণ করে
বিনিময়যোগ্য নিরপেক্ষ ক্রিয়াকলাপের মোনাডের জন্য কোন বিতরণ আইন নেই তা প্রমাণ করে
সমীকরণ প্রকার এবং বিতরণ আইনের অস্তিত্বের মধ্যে সামঞ্জস্য প্রতিষ্ঠা করে
দুর্বল দ্বি-অনুকরণ তত্ত্ব: সেট বিভাগে কাজ করে, দুর্বল দ্বি-অনুকরণ অর্থে কোন ড্রপ সমীকরণ ছাড়াই বীজগাণিতিক মোনাডের জন্য বিতরণ আইন তৈরি করা যায় তা প্রমাণ করে।
আনুষ্ঠানিক যাচাইকরণ: Agda-তে আংশিক ফলাফল আনুষ্ঠানিক করা হয়েছে, যাচাইযোগ্য বাস্তবায়ন প্রদান করে।
বিতরণ আইনের অস্তিত্ব অধ্যয়ন করুন TD → DT, যেখানে T যেকোনো মোনাড এবং D বিলম্ব মোনাড। বিতরণ আইন T এর ক্রিয়াকলাপগুলিকে গণনা পদক্ষেপে বিতরণ করে, যাতে যৌগিক DT একটি মোনাড কাঠামো রাখে।
এই নিবন্ধটি 69টি গুরুত্বপূর্ণ সংদর্ভ উদ্ধৃত করে, যা টাইপ তত্ত্ব, বিভাগ তত্ত্ব, গণনা প্রভাব এবং অন্যান্য ক্ষেত্রের ক্লাসিক কাজ অন্তর্ভুক্ত করে, বিশেষ করে Beck (1969) এর বিতরণ আইন তত্ত্ব, Capretta (2005) এর বিলম্ব মোনাড এবং Nakano (2000) এর সুরক্ষিত পুনরাবৃত্তি ইত্যাদি ভিত্তিস্থাপক কাজ।