অপরিহার্য প্রোগ্রামিং এর তাত্ত্বিক ভিত্তি কী?


48

লাম্বদা ক্যালকুলাস এবং সংমিশ্রিত যুক্তিতে কার্যকরী প্রোগ্রামিংয়ের একটি তাত্ত্বিক ভিত্তি রয়েছে । স্ট্যাটিস্টিকাল কম্পিউটিংয়ের সাথে যুক্ত কেউ হিসাবে, আমি এই ধারণাগুলি মডেলিংয়ের জন্য খুব দরকারী বলে মনে করি।

অত্যাবশ্যক প্রোগ্রামিং এর সমান গাণিতিক ভিত্তি আছে , বা এটি কেবল মেশিন ল্যাঙ্গুয়েজে ব্যবহারিক হার্ডওয়্যার অ্যাপ্লিকেশন এবং ফরটারনের পরবর্তী বিকাশের ফলে বৃদ্ধি পেয়েছে ?

উত্তর:


27

সাধারণভাবে, যখন গণিতটি কিছু এক্স অধ্যয়নের জন্য ব্যবহৃত হয় , প্রথমে এক্সের একটি মডেলের প্রয়োজন হয় এবং তারপরে একটি তত্ত্ব বিকাশ করে, সেই মডেল সম্পর্কে ফলাফলের একটি সেট। আমার ধারণা যে তত্ত্বটি এক্স এর জন্য একটি "তাত্ত্বিক ভিত্তি" হিসাবে বলা যেতে পারে । এখন এক্স = গণনা সেট করুন। আছে অনেক গুনতি মডেল, অনেক জড়িত "রাষ্ট্র"। প্রতিটি মডেলের নিজস্ব "তত্ত্ব" থাকে এবং কখনও কখনও মডেলগুলির মধ্যে "অনুবাদ" করা সম্ভব হয়। আমি বিশ্বাস করি কোন মডেলটি আরও বেশি "বেসিক" তা বলা শক্ত --- এগুলি কেবল বিভিন্ন লক্ষ্য মাথায় রেখেই তৈরি করা হয়েছে।

টুরিং মেশিন কি সংজ্ঞায়িত করতে ডিজাইন করা হয়েছে গণনীয় । সুতরাং আপনি যদি কোনও নির্দিষ্ট সমস্যার জন্য অ্যালগরিদম আছে কি না সেদিকে খেয়াল রাখলে তারা একটি ভাল মডেল তৈরি করে। এই মডেলটি কখনও কখনও অ্যালগরিদমগুলির দক্ষতা বা সমস্যার কঠোরতা অধ্যয়নের জন্য দুর্ব্যবহার করা হয় , এটি যথেষ্ট ভাল the র‌্যাম মডেলটি একটি বাস্তব কম্পিউটারের কাছাকাছি এবং অতএব আপনি যদি একটি অ্যালগরিদমের সুনির্দিষ্ট বিশ্লেষণ চান তবে আরও ভাল। সমস্যার কঠোরতার উপর নিম্ন সীমা স্থাপন করা না করাই ভালআজকের কম্পিউটারগুলির সাথে সাদৃশ্যপূর্ণ এমন একটি মডেল ব্যবহার করুন কারণ আপনি সম্ভাব্য কম্পিউটারগুলির বিস্তৃত অংশটি কভার করতে চান, যদিও এখনও কেবল বহু-বহিরাগত / অ-বহু-সাম্প্রতিকর চেয়ে আরও সুনির্দিষ্ট। এই প্রসঙ্গে আমি উদাহরণস্বরূপ ব্যবহৃত সেল-প্রোব মডেলটি দেখেছি।

আপনি যদি সঠিকতা সম্পর্কে যত্নশীল হন , তবে এখনও অন্য মডেলগুলি কার্যকর। এখানে আপনার অপারেশনাল শব্দার্থক শব্দ (যা আমি বলব রাষ্ট্রীয় গণনার জন্য ল্যাম্বডা ক্যালকুলাসের অ্যানালগ), অ্যাকিয়োমেটিক সিনটিক্স (১৯69 Ho সালে হোয়ারের দ্বারা ১৯ Flo67 সালে ফ্লোয়েডের প্ররোচনামূলক উক্তির উপর ভিত্তি করে তৈরি করা হয়েছিল, যা আর্ট অফ কম্পিউটার প্রোগ্রামিং-এ নথ দ্বারা জনপ্রিয় , ভলিউম 1) এবং অন্যান্য।

সংক্ষিপ্তসার হিসাবে, আমি আপনাকে গণনার মডেল পরে মনে করি । এই জাতীয় অনেকগুলি মডেল রয়েছে, যা বিভিন্ন লক্ষ্য নিয়ে বিকাশিত এবং অনেকেরই রাষ্ট্র রয়েছে, তাই তারা আবশ্যক প্রোগ্রামিংয়ের সাথে মিল রাখে। যদি আপনি কোনও কিছু গণনা করা যায় কিনা তা জানতে চান, তবে ট্যুরিং মেশিনগুলি দেখুন। আপনি যদি র‍্যাম মডেলগুলিতে দক্ষতার দিকে নজর রাখেন। যদি আপনি সঠিকতা সম্পর্কে নজর রাখেন এমন মডেলগুলি যেমন অপারেশনাল শব্দার্থক শব্দগুলিতে শেষ হয় তবে at

শেষ অবধি, আমি উল্লেখ করতে পারি যে জন সেভেজের মডেলস অফ কমিউটিশন সম্পর্কে অনলাইনে একটি বড় বই রয়েছে । এটি বেশিরভাগ দক্ষতা সম্পর্কে। নির্ভুলতার অংশের জন্য আমি আপনাকে ফ্লোয়েড (1967) , হোয়ারে (1969) , ডিজকস্ট্রা (1975) এবং প্লটকিন (1981) এর ক্লাসিক কাগজগুলি দিয়ে শুরু করার পরামর্শ দিচ্ছি । তারা সবাই দুর্দান্ত।


4
আমি মনে করি অপারেশনাল শব্দার্থক প্রকৃতপক্ষে পোস্টারটি সন্ধান করছে। উইকিপিডিয়া আরও তথ্য বিট: en.wikipedia.org/wiki/Operational_semantics
sclv

22

অপরিহার্য প্রোগ্রামটির সহজতম তাত্ত্বিক মডেলটি নিজেই টুরিং মেশিন। এটিতে একটি অপরিহার্য প্রোগ্রামের উভয় প্রয়োজনীয় উপাদান রয়েছে: আনবাউন্ডেড মডিফিকেশনযোগ্য রাষ্ট্র এবং একটি রাষ্ট্রীয় মেশিন যা এটি পরিচালনা করে।

আপনি হ্যাশেল প্রোগ্রামিং ভাষায় করা গ্লোবাল স্টেটের পরিবর্তিত সংস্করণগুলি পাস এবং ফিরিয়ে আনার জন্য মোনাদিক অপারেশনগুলির রচনা হিসাবে প্রোগ্রামগুলিকে বিবেচনা করে ক্রিয়ামূলক প্রোগ্রামিংকে ফাংশনাল প্রোগ্রামিংয়ে পরিণত করতে পারেন।


2
বিশুদ্ধরূপে কার্যকরী ভাষায় (যেমন হাস্কেল) অত্যাবশ্যক জাতীয় নির্মাণ পেতে মনাদর ব্যবহার আপনাকে অত্যাবশ্যক প্রোগ্রামিংয়ের সম্পূর্ণ ক্ষমতা দেয় না। বিশেষত, সত্যিকারের পরিবর্তনযোগ্য রাষ্ট্র ব্যতীত (উদাহরণস্বরূপ অনেকগুলি ভাষায় রেফারেন্স সহ), এখনও অনেকগুলি ডেটা স্ট্রাকচার রয়েছে যার নিখুঁত কার্যকরী ভাষায় কার্যকর প্রয়োগ অজানা।
জোশুয়া গ্রাচো

@ জোশুয়া: আপনি কেন মনে করেন যে রাষ্ট্রীয় মনাদরা রেফারেন্সের শব্দার্থকতা প্রকাশ করে না? আপত্তি কী হতে পারে তা বোঝার জন্য আমি ক্ষতিতে আছি।
চার্লস স্টুয়ার্ট

একটি রাষ্ট্র মোনাড মূলত সিন্থেটিক চিনি যা ফাংশনগুলির সংকলন রয়েছে যা সকলেই একটি অতিরিক্ত আর্গুমেন্ট (রাষ্ট্র) গ্রহণ করে এবং একটি অতিরিক্ত আউটপুট (পরবর্তী রাষ্ট্র) আউটপুট দেয়। তবে বিশুদ্ধরূপে কার্যকরী ভাষায় আপনি পরবর্তী রাষ্ট্রটি পাওয়ার জন্য রাষ্ট্রটি আসলে পরিবর্তন করতে পারবেন না, আপনাকে এখনও অনুলিপি করতে এবং পুনর্গঠন করতে হবে। আমি জানি না যে কোনও নির্দিষ্ট ডেটা স্ট্রাকচার আছে যেখানে জানা গেছে যে এগুলি নিখুঁত কার্যকরী ভাষায় দক্ষতার সাথে প্রয়োগ করা যায় না, তবে অবশ্যই এর প্রস্তাবক প্রমাণ রয়েছে (যেমন পিপেনগার। খাঁটি বনাম অপরিষ্কার লিস্প। 1997)।
জোশুয়া গ্রাচো

6
কেউ পুরোপুরিভাবে ভালভাবে মনডের সাথে মিউটেশনের শব্দার্থকে ক্যাপচার করতে পারে - দেখুন, যেমন, হাস্কেলের এসটি মোনাদ। আমরা এখানে শব্দার্থক কথা বলছি, বাস্তবায়ন নয়।
sclv

20

সংক্ষেপে, আমি বলব যে জরুরী প্রোগ্রামিংটি মেশিনের ভাষা এবং প্রোগ্রামিং অনুশীলন থেকে বিকশিত হয়েছিল। অন্যদিকে, ম্যানডগুলি অত্যাবশ্যক প্রোগ্রামিং ভাষার বৈশিষ্ট্যগুলির শব্দার্থবিজ্ঞানের বর্ণনা দেওয়ার জন্য একটি উপযুক্ত শব্দার্থক কাঠামো সরবরাহ করে। মোগগির গণনা এবং মনাদের কাগজ ধারণাগুলি আনুষ্ঠানিক ভিত্তি স্থাপন করেছিল। ফিল ওয়েডলার এই ধারণাকে জনপ্রিয় করে তোলেন এবং প্রোগ্রামিং ল্যাঙ্গুয়েজ হ্যাস্কেলের মধ্যে অত্যাবশ্যকীয় বৈশিষ্ট্যগুলিকে অন্তর্ভুক্ত করার মূল উপায় হওয়ায় এটি গুরুত্বপূর্ণ অবদান রাখে। প্লটকিনের সাম্প্রতিক কাজ এবং গণনাগুলির পাওয়ার ধারণাগুলি নির্ধারণ করুন অন্যভাবে বলা হয়েছে যে কয়েকটি, তবে সমস্ত নয়, (অপরিহার্য) গণনার ধারণা আসলে একটি মোনাড দেয়, যার অর্থ খুব প্রয়োজনীয় উপায়ে মনডগুলি গণনার অপরিহার্য (এবং অন্যান্য) ধারণার সাথে সামঞ্জস্য করে।


8
খাঁটি কার্যকরী বিশ্বে জরুরী প্রোগ্রামিং কর্ড করার জন্য মনাদ ব্যবহার করা যেতে পারে, তবে আমি ল্যাম্বডা ক্যালকুলাস এবং অনেক কার্যকরী ভাষার মধ্যে সম্পর্কের অনুরূপ অত্যাবশ্যক প্রোগ্রামিংয়ের জন্য একটি তাত্ত্বিক ভিত্ত গঠন করে দাবি করার ক্ষেত্রে আমি মামলাটি দেখতে পাচ্ছি না। মোনাডস গণনার এতটা মডেল করেন না যেহেতু তারা গণনার ক্লাসগুলির উপর বিমূর্ততা গঠন করে (যেমন শুদ্ধ গণনা বনাম গণনা যা আইও জড়িত, বা গণনা যা কোনও পরিবর্তনীয় অবস্থার একটি নির্দিষ্ট বান্ডেলের উপর নির্ভর করে)।
blucz

1
ফলস্বরূপ ভাষাগুলির জন্য মনডস স্পষ্টতাত্ত্বিক সংজ্ঞা লেখার উপায়, তবে কেন নয়?
nphonecop

15

যদি আপনি একটি অত্যাবশ্যক প্রোগ্রামিং ভাষার কঠোর গাণিতিক চিকিত্সার সন্ধান করেন তবে উইনসেলের বই "দ্য ফর্মাল সেমেন্টিক্স অফ প্রোগ্রামিং ল্যাঙ্গুয়েজস" (1993) এর উদাহরণ is

বইটিতে তিনি আইএমপি নামক একটি অত্যাবশ্যক প্রোগ্রামিং ভাষার সংজ্ঞা দিয়েছেন এবং এটির অপারেশনাল, ডিনোটেশনাল এবং অ্যাকসিওমেটিক শব্দার্থ সরবরাহ করেন।


14

আমি এই প্রশ্নে দেরিতে আসছি, তবে এটি একটি আকর্ষণীয় প্রশ্ন। সুতরাং, এখানে আমার মতামত।

যখন আমি একজন আন্ডারগ্রাড ছিলাম, তখন আমাদের একজন গণিতের এক বড় প্রফেসর ছিলেন, যিনি আমাদের গণিতের ইতিহাস এবং বিকাশের বিষয়ে বক্তৃতা দিতেন। তাঁর মতে গণিতটি "সম্প্রসারণ" এবং "একীকরণের" তরঙ্গগুলিতে বিকশিত হয়েছিল। একটি সম্প্রসারণের পর্যায়ে, নতুন ধারণা যা পূর্বে অজানা ছিল সেগুলি বিবেচনা করা হয়েছিল এবং তদন্ত করা হয়েছিল। তারপরে, একীকরণের পর্যায়ে, নতুন তত্ত্বগুলি বিদ্যমান জ্ঞানের অঙ্গগুলিতে সংহত হয়েছিল। তবে, বিংশ শতাব্দীতে তিনি বলেছিলেন, সমান্তরালভাবে সম্প্রসারণ ও একীকরণ চলছে।

অত্যাবশ্যক প্রোগ্রামিং বর্তমানে গণিতের একটি সম্প্রসারণ কার্যকলাপ। এটি আগে "অজানা" ছিল। (এটি পুরোপুরি সত্য নাও হতে পারে। হোয়ার আমাদের আমাদের বলেছিলেন যে ইউক্লিড তাঁর জ্যামিতিতে একটি অত্যাবশ্যক প্রোগ্রামিংয়ের মতো কিছু করছিলেন। তবে গণিতবিদ আরও ভাল বা খারাপ কারণেই এতে আগ্রহ হারিয়ে ফেলেন।) গণিতবিদরা এখনও অত্যাবশ্যক প্রোগ্রামিংয়ে আগ্রহী নন। এত ক্ষতি তাদের জন্য। তবে আমি সমস্ত কম্পিউটার বিজ্ঞানকে একটি বিমূর্ত অর্থে গণিতের একটি শাখা হিসাবে বিবেচনা করি। আমরা এটি অধ্যয়ন করছি, প্রক্রিয়াটিতে গণিতকে প্রসারিত করছি।

সুতরাং, আমি বিশেষত অত্যাবশ্যক প্রোগ্রামিংয়ের জন্য একটি পূর্ব তাত্ত্বিক ভিত্তি আছে কিনা তা বিবেচনা করব না । যদি একটি না থাকে তবে আসুন এটি সন্ধান করুন। আমরা ইতিমধ্যে যা জানি আমাদের তা জানিয়েছে যে অপরিহার্য প্রোগ্রামিং চমত্কারভাবে গভীর এবং সুন্দর। তুলনায় কার্যকরী প্রোগ্রামিং প্লেস। তবে, এই সমস্ত তত্ত্বটি মানুষের কাছে আনার জন্য আমাদের অনেক কাজ করতে হবে।


"তুলনায় কার্যকরী প্রোগ্রামিং প্লেস"। এখন কেবল যদি আমি আপনাকে এবং বব হার্পারকে একটি যুদ্ধের ময়দানে নিয়ে যেতে পারি। আপনি কমান্ডগুলির একটি বড় অবরুদ্ধ পরিবর্তন করতে চাইবেন এবং তিনি আপনাকে বন্ধ করার চেষ্টা করবেন। (পিএস: খুব ভাল উত্তর, আমি এটি উত্সাহিত করেছি।)
আন্দ্রেজ বাউয়ার

ঠিক আছে, তিনি আমাকে এড়িয়ে চলেন। আমি জানিনা এর কোনও অর্থ আছে কিনা :-)
উদয় রেড্ডি

11

ফাংশনাল প্রোগ্রামিংয়ের গণিতে একটি সুস্পষ্ট ভিত্তি রয়েছে কারণ কার্যকরী প্রোগ্রামিং ভাষাগুলি প্রাসঙ্গিক গণিতের সাথে সমান্তরালে বিবর্তিত হয়েছিল এবং তাদের ডিজাইনাররা সাধারণত গণিতকে উচ্চ সম্মানের সাথে রাখে। দৃ strong় এবং সরল সম্পর্কটি একটি স্ব-পরিপূর্ণ ভবিষ্যদ্বাণী।

ইমপিরিটিভ প্রোগ্রামিংয়ের একটি উল্লেখযোগ্য মেসির ইতিহাস রয়েছে যা ব্যবসায় এবং প্রকৌশল সমস্যার সাথে অনেক বেশি ঘনিষ্ঠভাবে আবদ্ধ এবং historতিহাসিকভাবে সংকলকগুলির পারফরম্যান্স এবং গাণিতিক আনুষ্ঠানিকতার সম্মানের চেয়ে তারা যে কোডটি উত্পন্ন করে তার সাথে অনেক বেশি উদ্বিগ্ন ছিল।

অনেকে প্রচলিত প্রোগ্রামিংকে (প্রচলিতভাবে) কার্যকরী শর্তে ব্যাখ্যা করার চেষ্টা করেছেন। আপনি যা সন্ধান করছেন এটি আমাদের কাছে পেতে পারে এটি সবচেয়ে নিকটে হতে পারে তবে এই প্রচেষ্টাগুলি অদম্য, উদ্বেগজনক, ফরেনসিক। আমি নিশ্চিত যে সিএলআরের জন্য অগ্রগতি / সংরক্ষণের প্রমাণ পড়ার চেয়ে আমি আমার চোখের পাতা ছিঁড়ে ফেলব would

সাধারণত আপনি যদি কোনও শালীন পিএল পাঠ্যপুস্তকের (যেমন পিয়ার্সের প্রকার এবং প্রোগ্রামিং ভাষাগুলি) শেষের দিকে এগিয়ে যান তবে আপনি জরুরী ভাষার বৈশিষ্ট্যগুলির আনুষ্ঠানিক মডেলিং দেখতে শুরু করবেন। এটি আপনার কাছে আকর্ষণীয় হতে পারে।


11

An Axiomatic Basis for Computer Programming CAR HOARE দ্বারা

এই গবেষণাপত্রে জ্যামিতির গবেষণায় প্রথম প্রয়োগ করা হয়েছিল এবং পরে গণিতের অন্যান্য শাখায় প্রসারিত কৌশলগুলি ব্যবহার করে কম্পিউটার প্রোগ্রামিংয়ের যৌক্তিক ভিত্তিগুলি অন্বেষণ করার চেষ্টা করা হয়েছে। এর মধ্যে অ্যাক্সিয়ামগুলির সেট এবং অনুমানের নিয়মগুলির বর্ণনাকে জড়িত যা কম্পিউটার প্রোগ্রামগুলির বৈশিষ্ট্যের প্রমাণগুলিতে ব্যবহার করা যেতে পারে। উদাহরণস্বরূপ এ জাতীয় অক্ষর এবং নিয়ম দেওয়া হয় এবং একটি সাধারণ উপপাদ্যের একটি আনুষ্ঠানিক প্রমাণ প্রদর্শিত হয়। পরিশেষে, যুক্তি দেওয়া হয় যে তাত্ত্বিক এবং ব্যবহারিক উভয় গুরুত্বপূর্ণ সুবিধা এই বিষয়গুলির অনুধাবন থেকে অনুসরণ করতে পারে।

http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.85.8553&rep=rep1&type=pdf


8

আলেকজান্দ্রে যা বলেছিলেন তা আমি দ্বিতীয় বললাম, টুরিং মেশিনটি অত্যাবশ্যক প্রোগ্রামিংয়ের মূল তাত্ত্বিক ভিত্তি সরবরাহ করেছিল। অত্যাবশ্যক প্রোগ্রামিং ভাষার সংস্থাগুলি মেশিনের আর্কিটেকচারকে যে পরিমাণে প্রতিবিম্বিত করে, আমি মনে করি জন ভন নিউমানের কাজটিও তাদের তাত্ত্বিক ভিত্তির মূল অংশ হয়ে উঠবে।


7

অত্যাবশ্যক প্রোগ্রামিং এর সমান গাণিতিক ভিত্তি আছে, বা এটি কেবল মেশিন ল্যাঙ্গুয়েজে ব্যবহারিক হার্ডওয়্যার অ্যাপ্লিকেশন এবং ফরটারনের পরবর্তী বিকাশের ফলে বৃদ্ধি পেয়েছে?

আপনি যদি historicalতিহাসিক অর্থে "ভিত্তি" বলতে চান তবে আমি মনে করি যে "সমতুল্য গাণিতিক ভিত্তি" নেই। তবে, যদিও অপরিহার্য প্রোগ্রামিং ব্যবহারিক উদ্বেগের কারণে বেড়েছে, তবে আবশ্যক প্রোগ্রামিংয়ের অর্থকে বিশদভাবে চিহ্নিত করার বিভিন্ন উপায় রয়েছে যাতে আপনি হোয়ের যুক্তির মতো "মডেলিংয়ের জন্য দরকারী" খুঁজে পেতে পারেন ।


আপনি কি সত্যই এই সম্প্রদায়টিকে উইকি বানানোর অর্থ দিয়েছিলেন?
সুরেশ ভেঙ্কট

হ্যাঁ, আমি এটিকে সম্প্রদায়ের উইকি তৈরির অর্থ দিয়েছিলাম।
jbapple

7

পোস্টগুলি যেগুলি হোয়ার যুক্তি এবং বিচ্ছেদ যুক্তির উল্লেখ করে সেগুলি এই বিষয়ে সঠিক। Hoare যুক্তি আপনাকে একটি প্রোগ্রামের পুরো হিপ কনফিগারেশনের বৈশিষ্ট্যগুলি স্থিত করতে দেয় এবং বিচ্ছেদ যুক্তিটি আরও আধুনিক আপেক্ষিক যা আপনাকে একটি "বিচ্ছিন্ন সংমিশ্রণ" ব্যবহার করতে দেয় যা আপনাকে কোডের একটি বিভাগে শর্ত হিসাবে পোস্ট করতে দেয় এবং বৈশিষ্ট্যগুলি কীসের জন্য রয়েছে lets বাকি স্তূপটির পরিমাণ নির্ধারণের সময় প্রোগ্রামের অংশটি হিপটির অংশটি হেরফের করবে।

মনডস সম্পর্কিত উত্তরটি কঠোরভাবে নির্ভুল নয়, কারণ হাক্কলে একটি মোনাড কেবলমাত্র ব্যবহৃত হয় কারণ এটি একটি বিমূর্ততা যা "মূল্যায়ন আইও ব্যবহার করতে পারে" সম্পত্তিটির সীমাবদ্ধকরণের আদেশের এনকোডিংকে সক্ষম করে licit

এটি উভয়ই উল্লেখ করা উচিত যে হোয়েয়ার / বিচ্ছেদ যুক্তিটি মনাদ হিসাবে দেখা যেতে পারে এবং হার্ভার্ডে ইয়ট প্রকল্পের মতো সমসাময়িক বেশ কয়েকটি প্রকল্প রয়েছে যা এই বিষয়গুলি অন্বেষণ করছে।

বিচ্ছেদ যুক্তিতে গবেষণা একটি চলমান এবং সক্রিয় ক্ষেত্র।


আমার কাছে এই সত্যটিকে বিভ্রান্ত করার জন্য একটি ত্রুটি বলে মনে হচ্ছে যে হাস্কেল আরও সাধারণ পদ্ধতির সাথে মনডের একটি ধারণা (এবং একটি মোনাড টাইপক্লাস) ব্যবহার করে যেমন মোগগি, যেমন শ্রেণীবদ্ধ শব্দার্থবিজ্ঞানের একটি অ্যাকাউন্ট গঠনে মনড ব্যবহার করে। প্রোগ্রামিং গঠনের হাতিয়ার হিসাবে স্নাতকের গ্রহণ আমাদের প্রোগ্রামিং সম্পর্কিত যুক্তি গঠনের হাতিয়ার হিসাবে শ্রেণিবদ্ধ শব্দার্থবিজ্ঞানের ব্যবহারে অন্ধ করা উচিত নয় ।
sclv

খুব ভাল ব্যাখ্যা, যদিও আমি বিশ্বাস করি যে গোটা লোকেরা মনাদ ট্রান্সফর্মারগুলির মাধ্যমে শব্দার্থ আবিষ্কারের জন্য মন লাড হ্যাসেল ব্যবহার করেছে। বিশেষত, ট্রান্সফরমারগুলির বিভিন্ন রচনা থেকে উদ্ভূত ক্রিয়াকলাপগুলির জন্য পৃথক পৃথক শব্দার্থক
শব্দগুলি

5

আমি পরে এই প্রশ্নে আসছি, তবে আমি এটির দ্বারাও সমানভাবে মুগ্ধ।

কেন ক্রিয়াকলাপের প্রোগ্রামিংয়ের তত্ত্বটি কার্যকরী প্রোগ্রামিংয়ের চেয়ে কম নিষ্পত্তি হিসাবে বিবেচিত হয়। এটি সম্ভবত ১৯69৯ সালে স্কট এবং ডি বাক্কারের সাথে সাধারণ অপরিহার্য ভাষায় পুনরাবৃত্তির অর্থ বিশ্লেষণ করে গুরুতর হওয়া শুরু করে [1]। অপরিহার্য ভাষা যখন বৈশিষ্ট্যগুলি অর্জন করে, গল্পটি কিছুটা মেসওয়্যার হয় তবে ধাতুর সান্নিধ্যের জন্য মূল্য দেওয়া কেবল মূল্য। আরও ব্যাপক প্রচেষ্টার একটির নামকরণের জন্য, ১৯৮০ সালে, ডি বাকার, ডি ব্রুইন এবং জুকার এই বিষয়ে একটি মনোগ্রাফ লিখেছিলেন [২]। অন্যদের উপরে উল্লিখিত ছিল। অবশ্যই প্রাক-তারিখ বিচ্ছেদ যুক্তিযুক্ত এই রেফারেন্সগুলি কিন্তু [2] তবুও অ্যারে এবং পারস্পরিক পুনরাবৃত্তি পদ্ধতিগুলি মোকাবেলা করে।

[১]: ১৯69৯ সালে অপ্রকাশিত তবে জ্যাকো ডাব্লু ডি বাকের এবং ডানা এস স্কট হিসাবে উপস্থিত হন। প্রোগ্রামের একটি তত্ত্ব , পৃষ্ঠা 1-30। ক্লোপ এট আল। জেডাব্লু ডি বাকের, 25 বছর বয়স্ক। সিডাব্লুআই, আমস্টারডাম, 1989. লাইবার আমোরিকাম।

[২]: জ্যাকবাস ডাব্লু ডি বাকের, অ্যারি ডি ব্রুইন, জেফ্রি জুকার: প্রোগ্রামের সঠিকতার গাণিতিক তত্ত্ব। প্রিন্টাইস হল 1980


1
স্পষ্টতই জরুরী প্রোগ্রামিং অত্যন্ত ভাল বোঝা যায়। আমি মনে করি লোকেরা যখন এটি কম সেটল করে বলে তখন তার অর্থ হ'ল কাঠামোগত, অপরিহার্য প্রোগ্রামিং খাঁটি কার্যকরী প্রোগ্রামিংয়ের চেয়ে সমৃদ্ধ, এবং খুব কম গাণিতিক কাঠামোর সন্ধান পাওয়া গিয়েছে যে এই বা এই অত্যাবশ্যক প্রোগ্রামিংয়ের ফর্মগুলিতে ফসল তৈরি করে। উদাহরণস্বরূপ, কিছু ধরণের অপরিহার্য প্রোগ্রামগুলি বিচ্ছিন্নতার যুক্তিটি সুন্দরভাবে ব্যবহার করার বিষয়ে যুক্তিযুক্ত হতে পারে। এটি সম্ভবত ভাগ করে নেওয়ার ফর্মগুলির সাথে করা। হতে পারে এই ধরণের প্রোগ্রামগুলির একটি দুর্দান্ত, বিমূর্ত গাণিতিক বৈশিষ্ট্য রয়েছে?
মার্টিন বার্গার

1
ব্যক্তিগতভাবে, আমি বলতে চাইছি অপরিহার্য ভাষাগুলিতে মডিউলারিটির তত্ত্বটি খুব অস্পষ্ট। ফাংশনাল ভাষাগুলির জন্য মডুলারিটির অর্থ কী তা আমরা জানি: রিলেশনাল প্যারামিট্রিসিটি। অপরিহার্য ভাষাগুলির জন্য, অনেক তথ্য-গোপন প্রজ্ঞাগুলি রয়েছে যা (ক) স্পষ্টভাবে কাজ করে, তবে (খ) যার জন্য আমাদের ভাল প্রমাণ কৌশলগুলির অভাব রয়েছে। এখানে গভীর তত্ত্ব রয়েছে এমন ছদ্মবেশী ইঙ্গিত রয়েছে: উদাহরণস্বরূপ, আমি যখন ক্রমগত অপরিহার্য প্রোগ্রামগুলির মডুলার প্রুফগুলি করি, তখন আমি সম্মতি থেকে কৌশলগুলি প্রয়োজন। অনানুষ্ঠানিকভাবে, এলিয়াসিং সমঝোতার মতো, তবে কীভাবে এই ধারণাটি আনুষ্ঠানিক করতে হয় তা আমি সত্যিই জানি না ...
নীল কৃষ্ণস্বামী

@Kai। থ্রেডে স্বাগতম! আমি ডি বাক্কারের কাজের দিকে নজর রেখে অনেক দিন হয়ে গেছে, তবে আমি মনে করি যে প্রাথমিক সমস্যাটি হল পদ্ধতির পরিধি বাড়েনি। অত্যাবশ্যক প্রোগ্রামিংয়ের অগ্রগতির দ্রুত সংক্ষিপ্তসারের জন্য আমার পোস্টটি "ডিনোটেশনাল শব্দার্থবিজ্ঞানের গঠন কী?" এ দেখুন থ্রেড লিংক
উদয় রেড্ডি

@NeelKrishnaswami। আমি এই প্রমাণগুলি দেখতে চাই। তারা কি আপনার ওয়েব পৃষ্ঠায় আছে? এলিয়াসিং সমঝোতার মতো যা তারা উভয়ই পরিশীলিত ভাগ করে নেওয়া এবং ইন্টারলিভিংয়ের সাথে জড়িত। একত্রে, আপনি আন্তঃলিখনকে বিমূর্ত করেন এবং অ-সংজ্ঞা (যা ভাল) ধরে নেন ume এলিয়াসিংয়ের সময়, আপনি নিজেকে আন্তঃবিভাজন মোকাবেলা করতে বাধ্য করেন। গেমস সিনটিক্স এই বাধ্যযুক্ত ইন্টারলিভিংয়ের একটি দুর্দান্ত উদাহরণ, এটি কারণ যা আমি এটি পছন্দ করি না।
উদয় রেড্ডি

3

আপনি আপনার প্রশ্ন জিজ্ঞাসা করার অল্প সময়ের পরে, ম্যাকমাস্টার বিশ্ববিদ্যালয়ের মার্ক বেন্ডার একটি থিসিস প্রকাশ করেছেন: অ্যাসাইনমেন্ট ক্যালকুলাস: একটি খাঁটি ইমপ্রেরটিভ রিজনিং ল্যাঙ্গুয়েজ (২০১০ সেপ্টেম্বর ৮)। এই থিসিসটি ল্যাম্বডা ক্যালকুলাসের সাথে সম্পর্কিত একটি সাধারণ, অপরিহার্য ভাষা বর্ণনা করে।

অ্যাসাইনমেন্ট ক্যালকুলাসে কেবলমাত্র চারটি বুনিয়াদি গঠন, কার্যনির্বাহ X:=t, ক্রম t;u, পদ্ধতি গঠন ¡tএবং পদ্ধতি প্রার্থনা থাকে !t। এসির জন্য তিনটি ব্যাখ্যা দেওয়া হয়: একটি অপারেশনাল শব্দার্থক শব্দ, একটি ডোনোটেশনাল শব্দার্থক শব্দ এবং একটি শব্দ-পুনর্নির্মাণ ব্যবস্থা। তিনটি সমতুল্য দেখানো হয়েছে।

মার্ক বেন্ডারের থিসিস অলস মূল্যায়ন, ব্যাকট্র্যাকিং, পদ্ধতি রচনা দিয়ে বর্ধিত রূপগুলি অন্বেষণ করতে চলেছে। এটি ছোট এক্সটেনশন ব্যবহার করে ল্যাম্বডা ক্যালকুলাস অন্বেষণের অনুরূপ।

সামগ্রিকভাবে, থিসিস ওপি প্রশ্নের তুলনামূলকভাবে সরাসরি উত্তর সরবরাহ করে।


পিডিএফ লিঙ্কটি নষ্ট হয়েছে
কুইন উইলসন
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.