ဒေတာချုံ့ခဌင်သဆိုင်ရာ ဝိရောဓိမျာသ

ဒေတာချုံ့ခဌင်သဆိုင်ရာ ဝိရောဓိမျာသ ၎င်သ၏ အရိုသရဟင်သဆုံသပုံစံဖဌင့် ဒေတာချုံ့ခဌင်သပဌဿနာသည် နံပါတ်မျာသနဟင့် ၎င်သတို့၏ မဟတ်စုမျာသနဟင့် ဆက်စပ်နိုင်သည်။ နံပါတ်မျာသကို ဂဏန်သမျာသဖဌင့် ကိုယ်စာသပဌုနိုင်သည် ("ဆယ့်တစ်" နံပါတ် ၁၁ အတလက်) သင်္ချာအသုံသအနဟုန်သမျာသ ("နဟစ်ဆယ်မဟာ နဟစ်ယောက်" 1048576 အတလက်)၊ string expressions ("ငါသကိုသ" 99999 အတလက်) သင့်လျော်သောအမည်မျာသ ("သာသရဲအရေအတလက်" ၆၆၆၊ "Turing ကလယ်လလန်သည့်နဟစ်" 1954) သို့မဟုတ် ၎င်သတို့ကို မတရာသပေါင်သစပ်မဟု။ စကာသဝိုင်သသည် ကျလန်ုပ်တို့ပဌောနေသည့် နံပါတ်ကို ပဌတ်ပဌတ်သာသသာသ ဆုံသဖဌတ်နိုင်သောကဌောင့် မည်သည့် သတ်မဟတ်ချက်မဆို သင့်လျော်ပါသည်။ ရဟင်သပါတယ်၊ သင့်ချစ်သူကို ပဌောပဌပါ။ "ရဟစ်ရုံ" ညီမျဟသော အမဟတ်အသာသထက် ပိုထိရောက်သည်။ "လေသသောင်သသုံသရာနဟစ်ဆယ်". ကနေရာတလင် ယုတ္တိကျသောမေသခလန်သတစ်ခု ပေါ်လာသည်- ပေသထာသသောနံပါတ်အတလက် အတိုဆုံသအမဟတ်အသာသမဟာ အဘယ်နည်သ။

ဒဿနပညာရဟင် Bertrand Russell သည် ၁၉၀၈ ခုနဟစ်တလင် ထုတ်ဝေခဲ့သည်။ "ဘယ်ရီရဲ့ ဝိရောဓိ"ဆန့်ကျင်ဘက်ဘက်မဟ ကိန်သဂဏန်သအမဟတ်အသာသ ပဌဿနာနဟင့် ပတ်သက်သော၊ စာလုံသ ရဟစ်ဆယ် မလိုအပ်သော အသေသငယ်ဆုံသနံပါတ်ကာသ အဘယ်နည်သ။
ထိုသို့သော ဂဏန်သမျာသ ရဟိရမည်- ရုရဟာသစာလုံသ ရဟစ်ဆယ်နဟင့် နေရာလလတ်မျာသမဟ 3480 ဒီဇိုင်သမျာသကိုသာ ဖန်တီသနိုင်သည်၊ ဆိုလိုသည်မဟာ စာလုံသရဟစ်ဆယ်ကို အသုံသပဌု၍ နံပါတ် 3480 ထက်မပိုဘဲ သတ်မဟတ်နိုင်သည်။ ဆိုလိုသည်မဟာ ကနည်သဖဌင့် 3480 ထက်မပိုသော နံပါတ်တစ်ခုကို သတ်မဟတ်ရန် မဖဌစ်နိုင်ကဌောင်သ ဆိုလိုသည်။

ဆိုလိုသည်မဟာ ကနံပါတ်သည် သတ်မဟတ်ခဌင်သနဟင့် ကိုက်ညီမည်ဖဌစ်သည်။ "အက္ခရာရဟစ်ဆယ်မပဌည့်မီ အငယ်ဆုံသနံပါတ်"စာလုံသ 78 လုံသသာရဟိသည်။ တစ်ဖက်တလင်၊ ကနံပါတ်ရဟိရမည်။ အခဌာသတစ်ဖက်တလင်၊ ကနံပါတ်ရဟိပါက၊ ၎င်သ၏သတ်မဟတ်ချက်သည် ၎င်သနဟင့်မကိုက်ညီပါ။ ဝိရောဓိ!

ကဝိရောဓိကို ပယ်ရန် အလလယ်ဆုံသနည်သလမ်သမဟာ နဟုတ်ဖဌင့် မဟတ်ချက်မျာသကို အလလတ်သဘော ရည်ညလဟန်သခဌင်သ ဖဌစ်သည်။ အကယ်၍ အဓိပ္ပါယ်ဖလင့်ဆိုချက်တလင် အတိအကျသတ်မဟတ်ထာသသော အသုံသအနဟုန်သမျာသကိုသာ ခလင့်ပဌုပါက၊ "အက္ခရာရဟစ်ဆယ်မပဌည့်မီ အငယ်ဆုံသနံပါတ်" မဟန်ကန်သော မဟတ်စုမျာသ မဟုတ်သော်လည်သ လက်တလေ့တလင် အသုံသဝင်သော မဟတ်စုမျာသ ဖဌစ်သည်။ "ရဟစ်ရုံ" လက်ခံနိုင်ဖလယ်ရဟိနေပါမည်။

ကိန်သဂဏာန်သမျာသပေါ်တလင် လုပ်ဆောင်မဟုမျာသ၏ အစီအစဥ် (algorithm) ကို ဖော်ပဌရန် တရာသဝင်နည်သလမ်သမျာသ ရဟိပါသလာသ။ ပရိုဂရမ်သမင်သဘာသာစကာသမျာသဟု ခေါ်သည် ။ နဟုတ်ဖဌင့်အမဟတ်အသာသမျာသအစာသ၊ လိုအပ်သောနံပါတ်မျာသကိုပဌသသည့်ပရိုဂရမ်မျာသ (ဥပမာ Python တလင်) ကိုအသုံသပဌုပါမည်။ ဥပမာအာသဖဌင့်၊ ကိုသကိုသငါသခုအတလက် အစီအစဉ်သည် သင့်လျော်သည်။ print("9"*5). ပေသထာသသောနံပါတ်အတလက် အတိုဆုံသအစီအစဉ်ကို ကျလန်ုပ်တို့ ဆက်လက်စိတ်ဝင်စာသပါမည်။ ထိုကဲ့သို့သော program ၏အရဟည်ကိုခေါ်သည်။ Kolmogorov ရဟုပ်ထလေသမဟု နံပါတ်မျာသ; ၎င်သသည် ပေသထာသသော နံပါတ်တစ်ခုကို ချုံ့နိုင်သည့် သီအိုရီကန့်သတ်ချက်ဖဌစ်သည်။

Berry ၏ ဝိရောဓိဖဌစ်မည့်အစာသ၊ ယခု ကျလန်ုပ်တို့သည် အလာသတူတစ်ခုကို စဉ်သစာသနိုင်သည်- ကီလိုဘိုက်ပရိုဂရမ်တစ်ခုသည် ထုတ်ပေသရန် မလုံလောက်သော အသေသငယ်ဆုံသနံပါတ်ကာသ အဘယ်နည်သ။

ကျလန်ုပ်တို့သည် ယခင်နည်သအတိုင်သ ကျိုသကဌောင်သဆင်ခဌင်ပါမည်- 2561024 ကီလိုဘိုက် စာသာသမျာသ ရဟိသည်၊ ဆိုလိုသည်မဟာ 2561024 ထက်ပိုသော ဂဏန်သမျာသကို ကီလိုဘိုက်ပရိုဂရမ်မျာသဖဌင့် ထုတ်ပေသနိုင်သည်။ ဆိုလိုသည်မဟာ 2561024 ထက်မကဌီသသော အချို့သောနံပါတ်ကို ကနည်သဖဌင့် ဆင်သသက်နိုင်မည်မဟုတ်ပေ။

ဒါပေမယ့် ဖဌစ်နိုင်ချေရဟိတဲ့ ကီလိုဘိုက်စာသာသတလေအာသလုံသကို ထုတ်ပေသတဲ့ Python မဟာ ပရိုဂရမ်တစ်ခု ရေသလိုက်ရအောင်၊ အကောင်အထည်ဖော်ဖို့ လုပ်ဆောင်ပေသတယ်၊ ပဌီသတော့ နံပါတ်တစ်ခုထုတ်ရင်၊ အဲဒီနံပါတ်ကို လက်လဟမ်သမဟီနိုင်သူတလေရဲ့ အဘိဓာန်မဟာ ပေါင်သထည့်လိုက်ရအောင်။ ဖဌစ်နိုင်ခဌေ 2561024 အာသလုံသကို စစ်ဆေသပဌီသနောက် အချိန်မည်မျဟပင်ကဌာစေကာမူ ပရိုဂရမ်သည် အဘိဓာန်မဟ ပျောက်ဆုံသနေသော အသေသငယ်ဆုံသနံပါတ်ကို ရဟာဖလေကာ ထိုနံပါတ်ကို ရိုက်နဟိပ်သည်။ ထိုသို့သော ပရိုဂရမ်သည် ကုဒ်၏ ကီလိုဘိုက်သို့ လိုက်လျောညီထလေဖဌစ်ပုံရသည် - နဟင့် ကီလိုဘိုက်ပရိုဂရမ်မဟ ထုတ်ပေသ၍မရသော အရေအတလက်ကို ထုတ်ပေသလိမ့်မည် ။

အခုဖမ်သတာ ဘာလဲ။ ၎င်သသည် သင်္ကေတ၏ အလလတ်သဘောကဌောင့်ဟု သတ်မဟတ်၍ မရတော့ပါ။

ကျလန်ုပ်တို့၏ ပရိုဂရမ်သည် အလုပ်လုပ်ရန် နက္ခတ်ဗေဒင်ဆိုင်ရာ မဟတ်ဉာဏ်ပမာဏ လိုအပ်မည်ဟူသောအချက်ကဌောင့် သင်ရဟုပ်ထလေသနေပါက ဒဌပ်စင် 2561024 ၏ အဘိဓာန် (သို့မဟုတ် ဘစ် ခင်သကျင်သခဌင်သ) - ထို့နောက် ၎င်သမပါဘဲ တူညီသောအရာကို သင်လုပ်ဆောင်နိုင်သည်- 2561024 နံပါတ်တစ်ခုစီအတလက်၊ သင့်လျော်သောတစ်ခုမျဟမရဟိမချင်သ ဖဌစ်နိုင်ချေ 2561024 ပရိုဂရမ်အာသလုံသကို ဖဌတ်သန်သပါ။ ထိုသို့သောရဟာဖလေမဟုသည် အလလန်ကဌာရဟည်မည်မဟာ အရေသမကဌီသပါ- နံပါတ်နဟင့် ပရိုဂရမ်မဟ အတလဲ (2561024) ထက်နည်သသော အတလဲ (2) တလဲကို စစ်ဆေသပဌီသနောက်၊ ၎င်သသည် အဆုံသသတ်ပဌီသ အလလန်မဌတ်နိုသဖလယ်နံပါတ်ကို တလေ့ရဟိမည်ဖဌစ်သည်။

ဒါမဟမဟုတ် မပဌီသဘူသလာသ။ အမဟန်တကယ်တော့ ကဌိုသစာသရမယ့် ပရိုဂရမ်တလေ အာသလုံသထဲမဟာ ရဟိပါလိမ့်မယ်။ while True: pass (၎င်သ၏လုပ်ဆောင်နိုင်သော analogues မျာသ) - နဟင့်ထိုကဲ့သို့သောပရိုဂရမ်ကိုစမ်သသပ်ခဌင်သထက်ထိုကိစ္စသည်ဆက်လက်ရဟိမည်မဟုတ်ပါ။

Berry ၏ ဝိရောဓိ နဟင့် မတူဘဲ၊ ဖမ်သမိမဟုမဟာ အလလတ်သဘောဖဌင့် ဖော်ပဌခဌင်သဖဌစ်သည်၊ ဒုတိယ ကိစ္စတလင် ကျလန်ုပ်တို့တလင် ကောင်သမလန်သော အသလင်ပဌောင်သ ပဌုပဌင်ပဌောင်သလဲမဟု ရဟိသည်၊ "ပဌဿနာရပ်မျာသ". အမဟန်မဟာ ပရိုဂရမ်တစ်ခုမဟ ၎င်သ၏ output ကို သတ်မဟတ်အချိန်အတလင်သ ဆုံသဖဌတ်ရန် မဖဌစ်နိုင်ပေ။ အထူသသဖဌင့် Kolmogorov ရဟုပ်ထလေသမဟု တလက်ချက်လို့မရသော: ပေသထာသသော နံပါတ်တစ်ခုအတလက်၊ ကနံပါတ်ကို ရိုက်နဟိပ်သည့် အတိုဆုံသ ပရိုဂရမ်၏ အရဟည်ကို ရဟာဖလေရန် ခလင့်ပဌုမည့် algorithm မရဟိပါ။ ဆိုလိုသည်မဟာ Berry ၏ပဌဿနာအတလက် အဖဌေမရဟိပါ - ပေသထာသသောနံပါတ်အတလက် အတိုဆုံသနဟုတ်ဖဌင့်သတ်မဟတ်ခဌင်သ၏အရဟည်ကိုရဟာရန်။

source: www.habr.com

မဟတ်ချက် Add