কার্যকর করা শক্তিশালী অ্যালগরিদমগুলি যা কার্যকর করা খুব শক্ত hard কীভাবে নিশ্চিত যে তারা ঠিক আছে?


9

আমি এখানে প্রশ্নের উল্লেখ করছি: কার্যকর করার জন্য শক্তিশালী অ্যালগরিদম খুব জটিল

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

এটাই আমি বুঝতে পারি না; যদি আপনার কাছে অ্যালগরিদমের সঠিকতা প্রমাণ করার কৌশল থাকে তবে আপনার আগে থেকেই এটি প্রয়োগ করার জন্য অ্যালগরিদম থাকতে হবে, তাই না? অথবা অন্যথায় আমরা কীভাবে নিশ্চিত হতে পারি যে প্রমাণ করার কৌশলটি সঠিক?

আমি প্রাথমিক শব্দটি লাগলে দুঃখিত!

কাভেহ থেকে আপডেট (যুক্তিটি ভাল কারণ এখানে পুনরুত্পাদন করা!):

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


6
এ কারণেই আমাদের কাছে সত্যিকারের মেশিনে (সঠিক) প্রয়োগ কার্যকর হওয়া সত্ত্বেও অ্যালগরিদমের যথার্থতা প্রমাণ করার কৌশল রয়েছে ।
রাফেল

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

8
নির্ভুলতার জটিল প্রমাণ সহ সাধারণ অ্যালগরিদম - আপনি কীভাবে জানবেন যে সেগুলি সঠিক? একটি অ্যালগরিদম পরীক্ষার উদাহরণগুলিতে কাজ করে কেবল তার অর্থ এটি সমস্ত ইনপুটগুলিতে কাজ করে না।
পিটার শোর

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

5
"উপরের কোডে বাগগুলি সম্পর্কে সাবধান থাকুন; আমি কেবল এটি সঠিক প্রমাণ করেছি, এটি চেষ্টা করে দেখিনি।" ~ ডোনাল্ড নথ
লেভ রেইজিন

উত্তর:


11

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

উপপাদাগুলি / অ্যালগোরিদমগুলি সঠিক প্রমাণ করার জন্য প্রুফগুলি আমাদের (গাণিতিক) সরঞ্জাম, তবে যখন তারা খুব জটিল হয়ে যায়, আমরা ভুল জিনিসগুলি পিছলে যেতে পারি এবং সঠিক জিনিস প্রমাণ করতে পারি। পি ≠ দ্বারা NP সাম্প্রতিক 100 বা যাতে পৃষ্ঠার প্রমাণ একটি চমৎকার উদাহরণ। যাইহোক, এটি প্রমাণগুলির একেবারে প্রকৃতিটিকে অস্বীকার করে না: তাদের সাথে কিছুই ভুল হয় না।

একটি শেষ বিষয়: আমি মনে করি বিজ্ঞানের দর্শন অধ্যয়ন করা আমাদের এ সম্পর্কে আরও অন্তর্দৃষ্টি দেবে। (প্রদত্ত লিঙ্কের নীচে, বুলেটটি দেখুন " গাণিতিক প্রমাণ সঠিক কিনা তা আমরা কীভাবে জানি? ")

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