ስለ ውሂብ መጭመቅ ፓራዶክስ

ስለ ውሂብ መጭመቅ ፓራዶክስ የመረጃ መጨናነቅ ችግር፣ በቀላል መልኩ፣ ከቁጥሮች እና ከማስታወሻዎቻቸው ጋር ሊዛመድ ይችላል። ቁጥሮች በቁጥር ሊገለጹ ይችላሉ ("አስራ አንድ" ለቁጥር 11) ፣ የሂሳብ መግለጫዎች ("በሃያኛው ውስጥ ሁለት" ለ 1048576)፣ የሕብረቁምፊ መግለጫዎች ("አምስት ዘጠኝ" ለ 99999) ትክክለኛ ስሞች (እ.ኤ.አ.)"የአውሬው ቁጥር" ለ 666, "የቱሪንግ ሞት ዓመት" ለ 1954) ወይም የዘፈቀደ ጥምረት። ኢንተርሎኩተሩ የምንናገረውን ቁጥር በግልፅ የሚወስንበት ማንኛውም ስያሜ ተስማሚ ነው። በግልጽ ለማየት እንደሚቻለው ለአነጋጋሪዎ ይንገሩ "የስምንት ፋብሪካ" ከተመጣጣኝ ማስታወሻ የበለጠ ቀልጣፋ "አርባ ሺህ ሦስት መቶ ሀያ". እዚህ ምክንያታዊ ጥያቄ ይነሳል-ለተወሰነ ቁጥር በጣም አጭር መግለጫ ምንድነው?

ፈላስፋው በርትራንድ ራስል በ1908 አሳተመ "የቤሪ ፓራዶክስ"ከተቃራኒ ወገን የቁጥር ማስታወሻን ጉዳይ የሚዳስሰው፡- ሰማንያ ፊደላት የማያስፈልገው ትንሹ ቁጥር ስንት ነው?
እንደዚህ ያለ ቁጥር መኖር አለበት ከሰማንያ የሩስያ ፊደላት እና ክፍተቶች 3480 ስያሜዎችን ብቻ ማዘጋጀት ይችላሉ, ይህም ማለት ሰማንያ ፊደሎችን በመጠቀም ከ 3480 ያልበለጡ ቁጥሮችን መመደብ ይችላሉ. ይህ ማለት በዚህ መንገድ ከ 3480 የማይበልጥ የተወሰነ ቁጥር ለመሰየም የማይቻል ነው.

ይህ ማለት ይህ ቁጥር ከስያሜው ጋር ይዛመዳል ማለት ነው። "ሰማንያ ፊደላት የማይበቁበት ትንሹ ቁጥር"78 ፊደላት ብቻ ያለው! በአንድ በኩል, ይህ ቁጥር መኖር አለበት; በሌላ በኩል, ይህ ቁጥር ካለ, ስያሜው ከእሱ ጋር አይዛመድም. ፓራዶክስ!

ይህንን አያዎ (ፓራዶክስ) ለማስወገድ ቀላሉ መንገድ የቃል ንግግሮችን መደበኛ አለመሆንን ማመልከት ነው። ልክ፣ በማስታወሻው ውስጥ ልዩ የተገለጹ የገለጻዎች ስብስብ ብቻ ከተፈቀደ፣ ከዚያ "ሰማንያ ፊደላት የማይበቁበት ትንሹ ቁጥር" ልክ የሆነ ምልክት አይሆንም፣ በተግባር ግን እንደ ጠቃሚ ማስታወሻዎች "የስምንት ፋብሪካ" ተቀባይነት ይኖረዋል.

በቁጥሮች ላይ የእርምጃዎችን ቅደም ተከተል (አልጎሪዝም) ለመግለጽ መደበኛ መንገዶች አሉ? አሉ, እና በብዛት - የፕሮግራም ቋንቋዎች ይባላሉ. ከቃላት ማስታወሻዎች ይልቅ አስፈላጊዎቹን ቁጥሮች የሚያሳዩ ፕሮግራሞችን (ለምሳሌ በፓይዘን) እንጠቀማለን። ለምሳሌ, ለአምስት ዘጠኝ ፕሮግራሙ ተስማሚ ነው print("9"*5). ለተወሰነ ቁጥር በጣም አጭር በሆነው ፕሮግራም ላይ ፍላጎት ማሳየታችንን እንቀጥላለን። የእንደዚህ አይነት ፕሮግራም ርዝመት ይባላል የኮልሞጎሮቭ ውስብስብነት ቁጥሮች; የተሰጠው ቁጥር ሊጨመቅ የሚችልበት የንድፈ ሃሳብ ገደብ ነው.

ከቤሪ አያዎ (ፓራዶክስ) ይልቅ፣ አሁን ተመሳሳይ የሆነውን ልንመለከት እንችላለን፡- አንድ ኪሎባይት ፕሮግራም ለማውጣት በቂ ያልሆነው ትንሹ ቁጥር ስንት ነው?

ልክ እንደበፊቱ እናነሳለን፡- 2561024 ኪሎባይት ጽሑፎች አሉ ይህም ማለት ከ2561024 ቁጥሮች በላይ በኪሎባይት ፕሮግራሞች ሊወጡ አይችሉም። ይህ ማለት ከ 2561024 የማይበልጥ የተወሰነ ቁጥር በዚህ መንገድ ሊወጣ አይችልም.

ነገር ግን ሁሉንም ሊሆኑ የሚችሉ ኪሎባይት ጽሑፎችን የሚያመነጭ፣ ለመፈጸም የሚያስኬድ ፕሮግራም በፓይዘን ውስጥ እንጻፍ፣ እና ቁጥር ካወጣን፣ ከዚያም ይህን ቁጥር ወደ ሊደረስባቸው ለሚችሉ መዝገበ ቃላት ይጨምራል። ሁሉንም 2561024 አማራጮች ካጣራ በኋላ ምንም ያህል ጊዜ ቢወስድ ፕሮግራሙ ከመዝገበ-ቃላቱ ውስጥ የጠፋውን ትንሹን ቁጥር ይፈልጋል እና ቁጥሩን ያትማል። እንዲህ ዓይነቱ ፕሮግራም በኪሎባይት ኮድ ውስጥ እንደሚገጣጠም ግልጽ ይመስላል - እና በኪሎባይት ፕሮግራም ሊወጣ የማይችልን ቁጥር ያወጣል!

አሁን የተያዘው ምንድን ነው? ከንግዲህ ወዲያ በማስታወቂያው ኢ-መደበኛነት ምክንያት ሊባል አይችልም!

2561024 ንጥረ ነገሮች መዝገበ ቃላት (ወይም ቢት ድርድር) - - - - - - - - - - - ፕሮግራማችን ለመስራት የስነ ከዋክብት ማህደረ ትውስታን እንደሚፈልግ ግራ ከተጋቡ ከዚያ ያለ እሱ ተመሳሳይ ነገር ማድረግ ይችላሉ-ለእያንዳንዱ የ 2561024 ቁጥሮች በቅደም ተከተል። ተስማሚ እስከሌለ ድረስ ሁሉንም 2561024 ሊሆኑ የሚችሉ ፕሮግራሞችን ይሂዱ። እንዲህ ዓይነቱ ፍለጋ በጣም ረጅም ጊዜ የሚቆይ መሆኑ ምንም ለውጥ አያመጣም: ከ (2561024) 2 ጥንድ ከቁጥሩ እና ከፕሮግራሙ ያነሰ ካጣራ በኋላ ያበቃል እና በጣም የተወደደውን ቁጥር ያገኛል.

ወይስ አያልቅም? በእርግጥ, ከሚሞከሩት ሁሉም ፕሮግራሞች መካከል, ይኖራሉ while True: pass (እና ተግባራዊ አናሎግዎች) - እና ጉዳዩ እንደዚህ አይነት ፕሮግራም ከመሞከር በላይ አይሄድም!

እንደ ቤሪ አያዎ (ፓራዶክስ) ሳይሆን፣ የተያዘው በማስታወሻው መደበኛ ያልሆነ፣ በሁለተኛው ጉዳይ ላይ በደንብ የተደበቀ ማሻሻያ አለን። "የማቆም ችግሮች". እውነታው ግን ውጤቱን ከፕሮግራሙ በተወሰነ ጊዜ ውስጥ ለመወሰን የማይቻል ነው. በተለይም የኮልሞጎሮቭ ውስብስብነት የማይገመት: ለተወሰነ ቁጥር ይህን ቁጥር የሚያትመውን አጭር ፕሮግራም ርዝመት ለማግኘት የሚፈቅድ ምንም አይነት ስልተ-ቀመር የለም; ይህም ማለት ለቤሪ ችግር ምንም መፍትሄ የለም - ለተወሰነ ቁጥር አጭር የቃል ስያሜ ርዝመት ለማግኘት.

ምንጭ: hab.com

አስተያየት ያክሉ