تعقيد كولموغوروف

تُظهر هذه الصورة جزءًا من كسورية مجموعة ماندلبروت . يتطلب تخزين لون كل بكسل في هذه الصورة (24 بت) 23 مليون بايت ، لكن برنامج حاسوبي صغير يستطيع إعادة إنتاج هذه البيانات باستخدام تعريف مجموعة ماندلبروت، وإحداثيات زوايا الصورة، ومعاملات تعيين الألوان. وبالتالي، فإن تعقيد كولموغوروف لهذه الصورة أقل بكثير من 23 مليون بايت في أي نموذج حسابي عملي . يُقلل ضغط الصور للأغراض العامة في صيغة PNG حجمها إلى 1.6 مليون بايت فقط، وهو أصغر من حجم البيانات الأصلية، لكنه أكبر بكثير من تعقيد كولموغوروف.

في نظرية المعلومات الخوارزمية ( وهي فرع من علوم الحاسوب والرياضيات )، تُعرَّف تعقيدات كولموغوروف لكائن ما، كنص مثلاً، بأنها طول أقصر برنامج حاسوبي ( بلغة برمجة محددة مسبقاً ) يُنتج هذا الكائن كناتج. وهي مقياس للموارد الحاسوبية اللازمة لتحديد هذا الكائن، وتُعرف أيضاً بالتعقيد الخوارزمي ، أو تعقيدات سولومونوف-كولموغوروف-شايتين ، أو تعقيدات حجم البرنامج ، أو التعقيدات الوصفية ، أو الإنتروبيا الخوارزمية . سُميت هذه التعقيدات نسبةً إلى أندريه كولموغوروف ، الذي نشر أول بحث في هذا الموضوع عام ١٩٦٣ [ ١ ] [ ملاحظة ١ ] ، وهي تعميم لنظرية المعلومات الكلاسيكية.

يمكن استخدام مفهوم تعقيد كولموغوروف لصياغة وإثبات نتائج الاستحالة المشابهة لحجة كانتور القطرية ، ونظرية عدم الاكتمال لغودل ، ومسألة التوقف لتورينغ . على وجه الخصوص، لا يمكن لأي برنامج P يحسب حدًا أدنى لتعقيد كولموغوروف لكل نص أن يُرجع قيمة أكبر جوهريًا من طول البرنامج P نفسه (انظر القسم § نظرية عدم الاكتمال لشايتين )؛ وبالتالي، لا يمكن لأي برنامج بمفرده حساب تعقيد كولموغوروف بدقة لعدد لا نهائي من النصوص. 

تعريف

حدس

لنفترض السلسلتين التاليتين المكونتين من 32 حرفًا صغيرًا ورقمًا:

abababababababababababababababab، و
4c1j5b2p0cv4w1x8rx2y39umgw5q85s7

تحتوي السلسلة الأولى على وصف قصير باللغة الإنجليزية، وهو "اكتب ab 16 مرة"، ويتكون من 17 حرفًا. أما السلسلة الثانية، فلا يوجد لها وصف واضح وبسيط (باستخدام نفس مجموعة الأحرف) سوى كتابة السلسلة نفسها، أي "اكتب 4c1j5b2p0cv4w1x8rx2y39umgw5q85s7"، وتتكون من 38 حرفًا. لذا، يمكن القول إن عملية كتابة السلسلة الأولى "أقل تعقيدًا" من كتابة السلسلة الثانية.

بصورة أدق، يُعرَّف تعقيد السلسلة بأنه طول أقصر وصف ممكن لها في لغة وصف عالمية ثابتة (وسيتم مناقشة حساسية التعقيد لاختيار لغة الوصف لاحقًا). ويمكن إثبات أن تعقيد كولموغوروف لأي سلسلة لا يمكن أن يزيد عن بضعة بايتات عن طول السلسلة نفسها. أما السلاسل مثل المثال abab المذكور أعلاه، والتي يكون تعقيد كولموغوروف فيها صغيرًا نسبيًا مقارنةً بحجم السلسلة، فلا تُعتبر معقدة.

يمكن تعريف تعقيد كولموغوروف لأي كائن رياضي، ولكن لتبسيط الأمر، يقتصر نطاق هذه المقالة على السلاسل النصية. يجب أولًا تحديد لغة وصف للسلاسل النصية. يمكن أن تستند لغة الوصف هذه إلى أي لغة برمجة حاسوبية، مثل ليسب أو باسكال أو جافا . إذا كان P برنامجًا يُخرج سلسلة نصية x ، فإن P يمثل وصفًا لـ x . طول الوصف هو ببساطة طول P كسلسلة نصية، مضروبًا في عدد البتات في الحرف (مثلًا، 7 في ASCII ).

يمكننا، بدلاً من ذلك، اختيار ترميز لآلات تورينج ، حيث يكون الترميز دالة تربط كل آلة تورينج M بسلسلة بتات <M> . إذا كانت M آلة تورينج تُخرج السلسلة x عند إدخال w ، فإن السلسلة المدمجة <M> w تُمثل وصفًا لـ x . لأغراض التحليل النظري ، يُعد هذا النهج أنسب لبناء براهين رسمية مفصلة، ​​وهو المفضل عمومًا في الأدبيات البحثية. في هذه المقالة، نناقش نهجًا غير رسمي.

أي سلسلة نصية s لها وصف واحد على الأقل. على سبيل المثال، السلسلة النصية الثانية أعلاه هي ناتج الشفرة الزائفة التالية :

def generate_string2 (): return "4c1j5b2p0cv4w1x8rx2y39umgw5q85s7"

بينما يتم إخراج السلسلة الأولى بواسطة الشفرة الزائفة (الأقصر بكثير):

دالة generate_string1 (): تُرجع "ab" × 16

إذا كان وصف d ( s ) لسلسلة نصية s ذا طول أدنى (أي باستخدام أقل عدد من البتات)، فإنه يُسمى وصفًا أدنى لـ s ، وطول d ( s ) (أي عدد البتات في الوصف الأدنى) هو تعقيد كولموغوروف لـ s ، ويُكتب K ( s ). رمزيًا،

K ( s ) = | d ( s )|.

سيعتمد طول أقصر وصف على اختيار لغة الوصف؛ لكن تأثير تغيير اللغات محدود (وهي نتيجة تسمى نظرية الثبات ، انظر أدناه ).

تعقيد كولموغوروف البسيط ج

يوجد تعريفان لتعقيد كولموغوروف: التعقيد البسيط والتعقيد الخالي من البادئات . التعقيد البسيط هو الحد الأدنى لطول وصف أي برنامج، ويُرمز له بـج(x){\displaystyle C(x)}بينما يُعرَّف التعقيد الخالي من البادئات بأنه الحد الأدنى لطول وصف أي برنامج مُشفَّر بلغة خالية من البادئات ، ويُشار إليه بـك(x){\displaystyle K(x)}إن التعقيد البسيط أكثر سهولة في الفهم، لكن التعقيد الخالي من البادئات أسهل في الدراسة.

بشكل افتراضي، لا تنطبق جميع المعادلات إلا على ثابت إضافي. على سبيل المثال،و(x)=ز(x){\displaystyle f(x)=g(x)}هذا يعني حقًا ذلكو(x)=ز(x)+يا(1){\displaystyle f(x)=g(x)+O(1)}، إنه،ج،x،|و(x)-ز(x)|ج{\displaystyle \exists c,\forall x,|f(x)-g(x)|\leq c}.

يتركيو:2*2*{\displaystyle U:2^{*}\to 2^{*}}لتكن دالة قابلة للحساب تربط السلاسل الثنائية المحدودة بالسلاسل الثنائية. وهي دالة شاملة إذا، وفقط إذا، لأي دالة قابلة للحسابو:2*2*{\displaystyle f:2^{*}\to 2^{*}}يمكننا ترميز الدالة في "برنامج".sو{\displaystyle s_{f}}بحيثx2*،يو(sوx)=و(x){\displaystyle \forall x\in 2^{*},U(s_{f}x)=f(x)}يمكننا أن نفكر فييو{\displaystyle U}كمترجم للبرنامج، والذي يأخذ مقطعًا أوليًا يصف البرنامج، متبوعًا بالبيانات التي يجب على البرنامج معالجتها.

إحدى مشاكل التعقيد البسيط هي أنج(xy)ج(x)+ج(y){\displaystyle C(xy)\not <C(x)+C(y)}لأنه من الناحية البديهية، لا توجد طريقة عامة لتحديد مكان تقسيم سلسلة الإخراج بمجرد النظر إلى السلسلة المدمجة. يمكننا تقسيمها بتحديد طولx{\displaystyle x}أوy{\displaystyle y}لكن ذلك سيستغرقيا(مين(lnx،lny)){\displaystyle O(\min(\ln x,\ln y))}رموز إضافية. في الواقع، لأيج>0{\displaystyle c>0}يوجدx،y{\displaystyle x,y}بحيثج(xy)ج(x)+ج(y)+ج{\displaystyle C(xy)\geq C(x)+C(y)+c}[ 2 ]

عادةً، تحتوي المتباينات ذات التعقيد البسيط على مصطلح مثليا(مين(lnx،lny)){\displaystyle O(\min(\ln x,\ln y))}من جهة، بينما نفس المتباينات ذات التعقيد الخالي من البادئات لها فقطيا(1){\displaystyle O(1)}.

تكمن المشكلة الرئيسية في التعقيد البسيط في وجود عنصر إضافي مُضمّن في البرنامج. فالبرنامج لا يُمثّل شيئًا ما بشفرته فحسب، بل يُمثّل أيضًا طوله. وعلى وجه الخصوص، فإن البرنامجx{\displaystyle x}قد يمثل رقمًا ثنائيًا يصل إلىسجل2|x|{\displaystyle \log _{2}|x|}ببساطة، بطولها الخاص. بعبارة أخرى، الأمر كما لو أننا نستخدم رمز إنهاء للدلالة على نهاية الكلمة، وبالتالي لا نستخدم رمزين، بل ثلاثة. ولإصلاح هذا الخلل، نقدم تعقيد كولموغوروف الخالي من البادئات. [ 3 ]

تعقيد كولموغوروف الخالي من البادئات K

آلة تورينج العالمية الخالية من البادئات هي دالة حسابية جزئية عالميةيو:2*2*{\displaystyle U:2^{*}\rightarrow 2^{*}}مجالها عبارة عن مجموعة من السلاسل الثنائية الخالية من البادئات. أو بعبارة أخرى، لا يوجد برنامج صالح لـيو{\displaystyle U}إذا كان بادئة لأي بادئة أخرى، فإن المجال يحقق خاصية البادئة . على سبيل المثال، إذا كان كل برنامج صالح لآلة تورينج عالميةيو{\displaystyle U}انتهى البرنامج بسلسلة إنهاء لا يمكن أن تظهر في أي مكان آخر فيه.يو{\displaystyle U}سيكون خالياً من البادئات.

تعقيد كولموغوروف الخالي من البادئات لسلسلةx{\displaystyle x}يتم تعريفها بواسطة ك(x):=مين{|ج|:يو(ج)=x}{\displaystyle K(x):=\min\{|c|:U(c)=x\}}طول أقصر برنامج ذاتي التحديد يتسبب فييو{\displaystyle U}لإخراجx{\displaystyle x}.

تتغير الخيارات المختلفة للآلات العالمية الخالية من البادئاتك(x){\displaystyle K(x)}على الأكثر بثابت إضافي. [ 4 ]

نظرية الثبات

العلاج غير الرسمي

توجد بعض لغات الوصف التي تُعتبر مثالية، بالمعنى التالي: إذا أُعطي أي وصف لكائن ما بلغة وصف، فيمكن استخدام هذا الوصف في لغة الوصف المثالية مع تكلفة إضافية ثابتة. وتعتمد هذه التكلفة الثابتة فقط على اللغات المستخدمة، وليس على وصف الكائن نفسه، ولا على الكائن الموصوف.

إليكم مثالاً على لغة وصف مثالية. يتكون الوصف من جزأين:

  • يصف الجزء الأول لغة وصف أخرى.
  • أما الجزء الثاني فهو وصف للشيء بتلك اللغة.

من الناحية الفنية، فإن الجزء الأول من الوصف هو برنامج كمبيوتر (على وجه التحديد: مترجم للغة الكائن، مكتوب بلغة الوصف)، أما الجزء الثاني فهو المدخلات إلى برنامج الكمبيوتر هذا الذي ينتج الكائن كمخرجات.

وتتبع نظرية الثبات ما يلي: بالنظر إلى أي لغة وصف L ، فإن لغة الوصف المثلى تكون على الأقل بنفس كفاءة L ، مع بعض التكاليف الإضافية الثابتة.

البرهان: يمكن تحويل أي وصف D في اللغة L إلى وصف في اللغة المثلى عن طريق وصف L أولاً كبرنامج حاسوبي P (الجزء 1)، ثم استخدام الوصف الأصلي D كمدخل لهذا البرنامج (الجزء 2). الطول الإجمالي لهذا الوصف الجديد D هو (تقريبًا):

| D | = | P | + | D |

طول P ثابت ولا يعتمد على D. لذا، لا يوجد سوى تكلفة إضافية ثابتة على الأكثر، بغض النظر عن الكائن الموصوف. وبالتالي، فإن اللغة المثلى عالمية حتى هذا الثابت الإضافي.

علاج أكثر رسمية

نظرية : إذا كانت K1 و K2 دالتي التعقيد بالنسبة للغتين الوصفيتين الكاملتين لتورينغ L1 و L2 ، فإنه يوجد ثابت c - يعتمد فقط على اللغتين L1 و L2 المختارتين - بحيث  

s.-جك1(s)-ك2(s)ج{\displaystyle \forall s.-c\leq K_{1}(s)-K_{2}(s)\leq c}.

البرهان : بالتماثل، يكفي إثبات وجود ثابت c بحيث يكون لجميع السلاسل s

ك1(s)ك2(s)+ج{\displaystyle K_{1}(s)\leq K_{2}(s)+c}.

لنفترض الآن أن هناك برنامجًا مكتوبًا باللغة L 1 يعمل كمترجم للغة L 2 :

دالة تفسير اللغة ( p : سلسلة نصية )

حيث p هو برنامج مكتوب بلغة L2 . يتميز المفسر بالخاصية التالية:

يؤدي تشغيل interpret_languageالمدخل p إلى إرجاع نتيجة تشغيل p .

وبالتالي، إذا كان P برنامجًا في L2 يمثل وصفًا أدنى للسلسلة s ، فإن interpret_language( P ) يُعيد السلسلة s . طول هذا الوصف للسلسلة s هو مجموع

  1. طول البرنامج interpret_language، والذي يمكننا اعتباره الثابت c .
  2. طول P الذي هو بحكم التعريف K 2 ( s ).

وهذا يثبت الحد الأعلى المطلوب.

التاريخ والسياق

نظرية المعلومات الخوارزمية هي مجال من علوم الحاسوب يدرس تعقيد كولموغوروف ومقاييس التعقيد الأخرى على السلاسل (أو هياكل البيانات الأخرى ).

يستند مفهوم ونظرية تعقيد كولموغوروف إلى نظرية أساسية اكتشفها راي سولومونوف لأول مرة ، ونشرها عام 1960، واصفًا إياها في "تقرير تمهيدي عن نظرية عامة للاستدلال الاستقرائي" [ 5 ] كجزء من ابتكاره للاحتمالية الخوارزمية . وقدّم وصفًا أكثر تفصيلًا في منشوراته عام 1964، "نظرية رسمية للاستدلال الاستقرائي"، الجزء الأول والثاني في مجلة المعلومات والتحكم . [ 6 ] [ 7 ]

نشر أندريه كولموغوروف هذه النظرية لاحقًا بشكل مستقل في مجلة Problems Inform. Transmission عام 1965. [ 8 ] كما قدم غريغوري تشايتين هذه النظرية في مجلة ACM  - حيث قُدِّمت ورقة تشايتين في أكتوبر 1966 ونُقِّحت في ديسمبر 1968، واستشهدت بورقتي سولومونوف وكولموغوروف. [ 9 ]

تنص النظرية على أنه من بين الخوارزميات التي تفك تشفير السلاسل النصية من أوصافها (رموزها)، توجد خوارزمية مثلى. تسمح هذه الخوارزمية، لجميع السلاسل النصية، برموز قصيرة بقدر ما تسمح به أي خوارزمية أخرى، وصولاً إلى ثابت إضافي يعتمد على الخوارزميات، وليس على السلاسل النصية نفسها. استخدم سولومونوف هذه الخوارزمية وأطوال الرموز التي تسمح بها لتعريف "احتمالية عامة" لسلسلة نصية، يمكن الاستناد إليها في الاستدلال الاستقرائي للأرقام اللاحقة في السلسلة. استخدم كولموغوروف هذه النظرية لتعريف عدة دوال للسلاسل النصية، بما في ذلك التعقيد والعشوائية والمعلومات.

عندما اطلع كولموغوروف على أعمال سولومونوف، أقرّ بأسبقية سولومونوف. [ 10 ] لسنوات عديدة، كانت أعمال سولومونوف أكثر شهرة في الاتحاد السوفيتي منها في الغرب. ومع ذلك، كان الإجماع العام في الأوساط العلمية هو ربط هذا النوع من التعقيد بكولموغوروف، الذي اهتم بعشوائية التسلسل، بينما ارتبطت الاحتمالية الخوارزمية بسولومونوف، الذي ركز على التنبؤ باستخدام اختراعه لتوزيع الاحتمال المسبق الشامل. يُطلق على المجال الأوسع الذي يشمل التعقيد الوصفي والاحتمالية غالبًا اسم تعقيد كولموغوروف. يعتبر عالم الحاسوب مينغ لي هذا مثالًا على تأثير ماثيو : "...لكل من يملك، سيُعطى المزيد..." [ 11 ]

توجد عدة صيغ أخرى لتعقيد كولموغوروف أو المعلومات الخوارزمية. الصيغة الأكثر استخداماً تعتمد على البرامج ذاتية التحديد ، ويعود الفضل في ذلك بشكل أساسي إلى ليونيد ليفين (1974).

قدم مارك بورجين نهجًا بديهيًا لتعقيد كولموغوروف استنادًا إلى بديهيات بلوم (بلوم 1967) في الورقة التي قدمها أندريه كولموغوروف للنشر. [ 12 ]

النتائج الأساسية

نكتبك(x،y){\displaystyle K(x,y)}يكونك((x،y)){\displaystyle K((x,y))}، أين(x،y){\displaystyle (x,y)}يعني ذلك طريقة ثابتة لترميز مجموعة من السلاسل النصية x و y.

عدم المساواة

نحذف العوامل المضافة لـيا(1){\displaystyle O(1)}يستند هذا القسم إلى [ 4 ]

نظرية.ك(x)ج(x)+2سجل2ج(x){\displaystyle K(x)\leq C(x)+2\log _{2}C(x)}

البرهان. خذ أي برنامج لآلة تورينج العالمية المستخدمة لتعريف التعقيد البسيط، وحوّله إلى برنامج خالٍ من البادئات عن طريق ترميز طول البرنامج أولاً بالنظام الثنائي، ثم تحويل الطول إلى ترميز خالٍ من البادئات. على سبيل المثال، لنفترض أن طول البرنامج هو 9، فيمكننا تحويله كما يلي:9100111-٠٠-٠٠-11-01{\displaystyle 9\mapsto 1001\mapsto 11-00-00-11-\color {red}{01}}حيث نضاعف كل رقم، ثم نضيف رمز إنهاء. وبذلك، تستطيع آلة تورينج العالمية الخالية من البادئات قراءة أي برنامج للآلة الأخرى على النحو التالي:[كود لمحاكاة الآلة الأخرى][طول البرنامج المشفر][البرنامج]{\displaystyle [{\text{كود لمحاكاة الآلة الأخرى}}][{\text{طول الكود للبرنامج}}][{\text{البرنامج}}]}يقوم الجزء الأول ببرمجة الآلة لمحاكاة الآلة الأخرى، وهو يمثل عبئًا ثابتًا.يا(1){\displaystyle O(1)}الجزء الثاني له طول2سجل2ج(x)+3{\displaystyle \leq 2\log _{2}C(x)+3}الجزء الثالث له طولج(x){\displaystyle C(x)}.

نظرية : يوجدج{\displaystyle c}بحيثx،ج(x)|x|+ج{\displaystyle \forall x,C(x)\leq |x|+c}وباختصار أكثر،ج(x)|x|{\displaystyle C(x)\leq |x|}. بصورة مماثلة،ك(x)|x|+2سجل2|x|{\displaystyle K(x)\leq |x|+2\log _{2}|x|}، وك(x||x|)|x|{\displaystyle K(x||x|)\leq |x|}.

البرهان. بالنسبة للتعقيد البسيط، يكفي كتابة برنامج ينسخ المدخلات إلى المخرجات. أما بالنسبة للتعقيد بدون بادئات، فنحتاج أولاً إلى تحديد طول السلسلة قبل كتابتها.

نظرية. (حدود المعلومات الإضافية، خاصية الجمع الجزئي)

  • ك(x|y)ك(x)ك(x،y)الأعلى(ك(x|y)+ك(y)،ك(y|x)+ك(x))ك(x)+ك(y){\displaystyle K(x|y)\leq K(x)\leq K(x,y)\leq \max(K(x|y)+K(y),K(y|x)+K(x))\leq K(x)+K(y)}
  • ك(xy)ك(x،y){\displaystyle K(xy)\leq K(x,y)}

لاحظ أنه لا توجد طريقة للمقارنةك(xy){\displaystyle K(xy)}وك(x|y){\displaystyle K(x|y)}أوك(x){\displaystyle K(x)}أوك(y|x){\displaystyle K(y|x)}أوك(y){\displaystyle K(y)}توجد سلاسل بحيث تكون السلسلة بأكملهاxy{\displaystyle xy}يسهل وصفها، لكن من الصعب جداً وصف أجزائها الفرعية.

نظرية (تناظر المعلومات)ك(x،y)=ك(x|y،ك(y))+ك(y)=ك(y،x){\displaystyle K(x,y)=K(x|y,K(y))+K(y)=K(y,x)}.

البرهان. أحد الجانبين بسيط. أما الجانب الآخر فيتضمنك(x،y)ك(x|y،ك(y))+ك(y){\displaystyle K(x,y)\geq K(x|y,K(y))+K(y)}، نحتاج إلى استخدام حجة العد (الصفحة 38 [ 13 ] ).

نظرية (عدم زيادة المعلومات) : لأي دالة قابلة للحسابو{\displaystyle f}لديناك(و(x))ك(x)+ك(و){\displaystyle K(f(x))\leq K(x)+K(f)}.

البرهان. برمج آلة تورينج لقراءة برنامجين متتاليين، أحدهما يصف الدالة والآخر يصف السلسلة النصية. ثم شغّل كلا البرنامجين على شريط العمل لإنتاجو(x){\displaystyle f(x)}واكتبها.

عدم قابلية حساب تعقيد كولموغوروف

محاولة ساذجة لكتابة برنامج لحساب K

قد يبدو للوهلة الأولى من السهل كتابة برنامج يمكنه حساب K ( s ) لأي قيمة لـ s ، مثل ما يلي:

دالة kolmogorov_complexity ( s : str ): من أجل i = 1 إلى ما لا نهاية : لكل سلسلة p بطول i بالضبط ، إذا كانت is_valid_program ( p ) و evaluate ( p ) == s ، فأرجع i

يستعرض هذا البرنامج جميع البرامج الممكنة (عن طريق استعراض جميع السلاسل النصية الممكنة والنظر فقط في البرامج الصالحة)، بدءًا من الأقصر. يُنفَّذ كل برنامج للعثور على النتيجة التي ينتجها، ومقارنتها بالمدخلات s . إذا تطابقت النتيجة، يُعاد طول البرنامج.

لكن هذا لن ينجح لأن بعض البرامج التي تم اختبارها لن تتوقف، مثلاً إذا احتوت على حلقات تكرار لا نهائية. لا توجد طريقة لتجنب كل هذه البرامج عن طريق اختبارها بطريقة ما قبل تنفيذها بسبب استحالة حل مشكلة التوقف .

علاوة على ذلك، لا يمكن لأي برنامج، مهما بلغت درجة تعقيده، حساب الدالة K. ويتضح ذلك فيما يلي.

برهان رسمي على عدم قابلية حساب K

نظرية : توجد سلاسل ذات تعقيد كولموغوروف كبير كيفيًا. رسميًا: لكل عدد طبيعي n ، توجد سلسلة s بحيث يكون K ( s ) ≥ n . [ ملاحظة 2 ]

البرهان: وإلا فإنه يمكن توليد جميع السلاسل المحدودة الممكنة التي لا نهاية لها بواسطة عدد محدود من البرامج [ ملاحظة 3 ] ذات تعقيد أقل من n بت.

نظرية : K ليست دالة قابلة للحساب . بعبارة أخرى، لا يوجد برنامج يأخذ أي سلسلة نصية s كمدخلات وينتج العدد الصحيح K ( s ) كمخرجات.

يستخدم البرهان التالي بالتناقض لغة بسيطة تشبه لغة باسكال لتمثيل البرامج؛ ولتبسيط البرهان، نفترض أن وصفها (أي المفسر ) له طول1,400,000 بت . لنفترض جدلاً وجود برنامج

دالة kolmogorov_complexity ( s : str )

تأخذ هذه الدالة سلسلة نصية s كمدخل ، وتعيد K ( s ). جميع البرامج ذات طول محدود، لذا، ولتبسيط البرهان، نفترض أنها7,000,000,000 بت . الآن، لننظر إلى البرنامج التالي بطول1288 بت:

دالة توليد_سلسلة_معقدة (): سلسلة نصية من أجل i = 1 إلى ما لا نهاية : لكل سلسلة نصية s بطول i بالضبط إذا كانت kolmogorov_complexity ( s ) > = 8000000000 إرجاع s

باستخدام kolmogorov_complexityروتين فرعي، يجرب البرنامج كل سلسلة نصية، بدءًا من الأقصر، حتى يُعيد سلسلة نصية ذات تعقيد كولموغوروف على الأقل8,000,000,000 بت ، [ ملاحظة 4 ] أي سلسلة نصية لا يمكن لأي برنامج إنتاجها بأقصر من٨,٠٠٠,٠٠٠,٠٠٠ بت . ومع ذلك ، فإن الطول الإجمالي للبرنامج المذكور أعلاه الذي أنتج s هو فقط7001401288 بت، [ ملاحظة 5 ] وهو ما يُعد تناقضًا. (إذا كان رمز أقصر، يبقى التناقض قائمًا . أما إذا كان أطول، فيمكن دائمًا تغيير KolmogorovComplexityالثابت المستخدم في بما يتناسب مع ذلك.) [ ملاحظة 6 ]GenerateComplexString

يستخدم البرهان أعلاه تناقضًا مشابهًا لتناقض مفارقة بيري : " 1 أصغر 2 عدد صحيح موجب 3 لا يمكن تعريفه 6 في 10 أقل من 11 من 12 عشرين 13 كلمة إنجليزية " . من الممكن أيضًا إثبات عدم قابلية حساب K بالاختزال من عدم قابلية حساب مسألة التوقف H ، لأن K و H متكافئتان تورينج . [ 14 ]

هناك نتيجة منطقية، تسمى بشكل فكاهي " نظرية التوظيف الكامل " في مجتمع لغات البرمجة، تنص على أنه لا يوجد مترجم مثالي لتحسين الحجم.

قاعدة السلسلة لتعقيد كولموغوروف

تنص قاعدة السلسلة [ 15 ] لتعقيد كولموغوروف على أنه يوجد ثابت c بحيث يكون لكل X و Y :

ك(X،Y)=ك(X)+ك(Y|X)+جمأx(1،لoز(ك(X،Y))){\displaystyle K(X,Y)=K(X)+K(Y|X)+c\cdot max(1,log(K(X,Y)))}.

ينص هذا على أن أقصر برنامج يُعيد إنتاج X و Y لا يزيد عن حد لوغاريتمي عن برنامج لإعادة إنتاج X وبرنامج لإعادة إنتاج Y بمعلومية X. وباستخدام هذا البيان، يمكن تعريف نظير للمعلومات المتبادلة لتعقيد كولموغوروف .

ضغط

من السهل حساب الحدود العليا لـ K ( s )  - ببساطة قم بضغط السلسلة s باستخدام طريقة ما، وقم بتنفيذ برنامج فك الضغط المقابل في اللغة المختارة، وقم بربط برنامج فك الضغط بالسلسلة المضغوطة، وقم بقياس طول السلسلة الناتجة  - على وجه التحديد، حجم الأرشيف ذاتي الاستخراج في اللغة المعطاة.

تُعتبر السلسلة s قابلة للضغط بمقدار c إذا كان وصفها لا يتجاوز طوله | s | - c بت. وهذا يُعادل القول بأن K ( s ) ≤ | s | - c . وإلا، فإن s غير قابلة للضغط بمقدار c . تُسمى السلسلة غير القابلة للضغط بمقدار 1 ببساطة غير قابلة للضغط  - وفقًا لمبدأ التوزيع ، الذي ينطبق لأن كل سلسلة مضغوطة تُقابل سلسلة واحدة غير مضغوطة فقط، لذا يجب أن توجد سلاسل غير قابلة للضغط ، حيث يوجد 2n سلسلة بت بطول n ، ولكن يوجد فقط 2n - 1 سلسلة أقصر منها، أي سلاسل بطول أقل من n (أي بطول 0، 1، ...، n  -  1). [ ملاحظة 7 ]

وللسبب نفسه، فإن معظم السلاسل معقدة بمعنى أنها لا يمكن ضغطها بشكل كبير  - فقيمة K ( s ) الخاصة بها ليست أصغر بكثير من | s |، وهو طول السلسلة s بالبتات. ولتوضيح ذلك بدقة، لنفترض قيمة n . يوجد 2 ^n سلسلة بتية طول كل منها n . يُخصص التوزيع الاحتمالي المنتظم على فضاء هذه السلاسل وزنًا متساويًا تمامًا مقداره 2^ n - n لكل سلسلة طولها n .

النظرية : مع التوزيع الاحتمالي المنتظم على فضاء سلاسل البتات ذات الطول n ، فإن احتمال أن تكون السلسلة غير قابلة للضغط بواسطة c هو على الأقل 1 − 2 c +1 + 2 n .

لإثبات النظرية، لاحظ أن عدد الأوصاف التي لا يتجاوز طولها nc يُعطى بواسطة المتسلسلة الهندسية:

1 + 2 + 2 2 + ... + 2 nc = 2 nc +1 − 1.

لا يزال هناك على الأقل

2 ن − 2 نج +1 + 1

سلاسل بتية بطول n غير قابلة للضغط بواسطة c . لتحديد الاحتمالية، اقسم على 2n .

نظرية عدم اكتمال تشايتين

تعقيد كولموغوروف K ( s ) ، ودالتان لحساب الحد الأدنى . يُمثل المحور الأفقي ( بمقياس لوغاريتمي ) جميع السلاسل s ، مرتبة حسب الطول؛ بينما يقيس المحور الرأسي ( بمقياس خطي ) تعقيد كولموغوروف بالبتات . معظم السلاسل غير قابلة للضغط، أي أن تعقيد كولموغوروف الخاص بها يتجاوز طولها بمقدار ثابت. تظهر في الصورة 9 سلاسل قابلة للضغط، على شكل منحدرات شبه عمودية. وفقًا لنظرية عدم الاكتمال لشايتين (1974)، لا يمكن أن يتجاوز ناتج أي برنامج يحسب الحد الأدنى لتعقيد كولموغوروف حدًا ثابتًا، مستقلًا عن سلسلة الإدخال s .prog1(s)prog2(s)

بحسب النظرية المذكورة أعلاه ( قسم  الضغط )، فإن معظم السلاسل معقدة بمعنى أنه لا يمكن وصفها بأي طريقة "مضغوطة" بشكل ملحوظ. ومع ذلك، يتضح أنه لا يمكن إثبات تعقيد سلسلة معينة بشكل رسمي إذا تجاوز تعقيدها عتبة معينة. والصيغة الدقيقة لذلك هي كما يلي: أولًا، نحدد نظامًا بديهيًا معينًا S للأعداد الطبيعية . يجب أن يكون هذا النظام البديهي قويًا بما يكفي بحيث يمكن ربط صيغة F ∈ A في S ببعض التأكيدات A حول تعقيد السلاسل . يجب أن تتمتع هذه الصيغة بالخاصية التالية:

إذا كان من الممكن إثبات F A من بديهيات S ، فإن العبارة المقابلة A يجب أن تكون صحيحة. ويمكن تحقيق هذه "الصياغة الرسمية" بالاعتماد على ترقيم غودل .

نظرية : يوجد ثابت L (يعتمد فقط على S وعلى اختيار لغة الوصف) بحيث لا توجد سلسلة s يكون فيها البيان

ك(s)ل{\displaystyle K(s)\geq L}   (كما هو موضح في S )

يمكن إثبات ذلك ضمن S. [ 16 ] [ 17 ]

فكرة البرهان : يُبنى برهان هذه النتيجة على نموذج البناء المرجعي الذاتي المستخدم في مفارقة بيري . نبدأ ببرنامج يُحصي البراهين ضمن المجموعة S ، ونُحدد إجراءً P يأخذ كمدخل عددًا صحيحًا L ويطبع السلاسل النصية x التي تقع ضمن براهين العبارة K ( x ) ≥ L في المجموعة S. بجعل L أكبر من طول هذا الإجراء P ، نجد أن الطول المطلوب لبرنامج يطبع x كما هو منصوص عليه في K ( x ) ≥ L ، أي L على الأقل ، يكون أقل من L لأن السلسلة النصية x طُبعت بواسطة الإجراء P. وهذا تناقض. لذا، لا يمكن لنظام البرهان S إثبات K ( x ) ≥ L لأي قيمة كبيرة لـ L ، وخاصةً عندما تكون L أكبر من طول الإجراء P (وهو طول محدود).

دليل :

يمكننا إيجاد تعداد فعال لجميع البراهين الرسمية في S من خلال إجراء ما

دالة إثبات الرتبة n ( n : عدد صحيح )

تأخذ هذه الدالة المدخل n وتُخرج برهانًا. تُحصي هذه الدالة جميع البراهين. بعض هذه البراهين هي براهين لصيغ لا تهمنا هنا، حيث يتم إنتاج كل برهان ممكن في لغة S لبعض قيم n . بعض هذه البراهين هي صيغ تعقيد من الشكل K ( s )   حيث s و n ثابتان في لغة S. هناك إجراء 

def nth_proof_proves_complexity_formula ( n : int ): bool

والذي يحدد ما إذا كان البرهان رقم n يثبت بالفعل صيغة التعقيد K ( s )  L. يمكن حساب السلاسل s ، والعدد الصحيح L بدوره، من خلال الإجراء التالي: 

دالة string_nth_proof ( n : int )
دالة التعقيد_الحد_الأدنى_للبرهان_الرقم_ن ( ن : عدد صحيح ): عدد صحيح

ضع في اعتبارك الإجراء التالي:

دالة توليد سلسلة معقدة قابلة للإثبات ( n : عدد صحيح ): من أجل i = 1 إلى ما لا نهاية : إذا كان البرهان النوني يثبت صيغة التعقيد ( i ) وكان الحد الأدنى للتعقيد للبرهان النوني ( i ) فأرجع سلسلة البرهان النوني ( i ).

بالنظر إلىن{\displaystyle n}، يحاول هذا الإجراء كل برهان حتى يجد سلسلة وبرهانًا في النظام الرسمي S للصيغةك(s)ل{\displaystyle K(s)\geq L}بالنسبة للبعضلن{\displaystyle L\geq n}إذا لم يكن هناك دليل من هذا القبيل، فإنها تدور في حلقة لا نهائية.

وأخيرًا، لننظر إلى البرنامج الذي يتكون من جميع تعريفات الإجراءات هذه، واستدعاء رئيسي:

generate_provably_complex_string ( n )

حيث الثابتن0{\displaystyle n_{0}}سيتم تحديد ذلك لاحقًا. ويمكن التعبير عن المدة الإجمالية للبرنامج على النحو التالي:يو+لoز2(ن0){\displaystyle U+log_{2}(n_{0})}، أينيو{\displaystyle U}هو ثابت ما ولoز2(ن0){\displaystyle log_{2}(n_{0})}يمثل طول القيمة الصحيحةن0{\displaystyle n_{0}}بافتراض معقول أنه مُشفّر بالأرقام الثنائية، سنختارن0{\displaystyle n_{0}}أن يكون أكبر من طول البرنامج، أي بحيثن0>يو+لoز2(ن0){\displaystyle n_{0}>U+log_{2}(n_{0})}وهذا ينطبق بوضوح علىن0{\displaystyle n_{0}}كبيرة بما يكفي، لأن الجانب الأيسر ينمو خطيًا فين0{\displaystyle n_{0}}بينما ينمو الجانب الأيمن لوغاريتميًا فين0{\displaystyle n_{0}}حتى قيمة ثابتةيو{\displaystyle U}.

ثم لا يوجد دليل على الشكل "ك(s)ل{\displaystyle K(s)\geq L}" معلن0{\displaystyle L\geq n_{0}}يمكن الحصول على ذلك في S ، كما يتضح من خلال وسيط غير مباشر : إذا complexity_lower_bound_nth_proof(i)كان بإمكانها إرجاع قيمةن0{\displaystyle \geq n_{0}}ثم ستنتهي الحلقة الداخلية generate_provably_complex_stringفي النهاية، وسيعيد هذا الإجراء سلسلة نصية s بحيث

ك(s){\displaystyle K(s)}
ن0{\displaystyle n_{0}}عن طريق بناءgenerate_provably_complex_string
>يو+لoز2(ن0){\displaystyle U+log_{2}(n_{0})}باختيارن0{\displaystyle n_{0}}
ك(s){\displaystyle K(s)}منذs{\displaystyle s}وقد وصفه البرنامج بهذا الطول

هذا تناقض، وهو المطلوب إثباته.

ونتيجة لذلك، فإن البرنامج المذكور أعلاه، بالقيمة المختارة لـن0{\displaystyle n_{0}}يجب أن تستمر العملية إلى الأبد.

تُستخدم أفكار مماثلة لإثبات خصائص ثابت تشايتين .

الحد الأدنى لطول الرسائل

طُوِّر مبدأ الحد الأدنى لطول الرسالة في الاستدلال الإحصائي والاستقرائي والتعلم الآلي على يد سي إس والاس ودي إم بولتون عام ١٩٦٨. يُعدّ التعلم الآلي ذو الحد الأدنى لطول الرسالة (MML) بايزيًا (أي أنه يتضمن المعتقدات المسبقة) ونظريًا معلوماتيًا. ويتمتع بخصائص مرغوبة، منها الثبات الإحصائي (أي أن الاستدلال يتحول مع إعادة تحديد المعلمات، مثل التحويل من الإحداثيات القطبية إلى الإحداثيات الديكارتية)، والاتساق الإحصائي (أي أنه حتى في المسائل بالغة الصعوبة، يتقارب التعلم الآلي ذو الحد الأدنى لطول الرسالة مع أي نموذج أساسي)، والكفاءة (أي أن نموذج التعلم الآلي ذو الحد الأدنى لطول الرسالة يتقارب مع أي نموذج أساسي صحيح بأسرع ما يمكن). وقد أظهر سي إس والاس ودي إل داو (١٩٩٩) وجود صلة رسمية بين التعلم الآلي ذو الحد الأدنى لطول الرسالة ونظرية المعلومات الخوارزمية (أو تعقيد كولموغوروف). [ ١٨ ]

عشوائية كولموغوروف

يُعرّف مبدأ كولموغوروف العشوائي سلسلةً (عادةً من البتات ) بأنها عشوائية إذا كان أقصر برنامج حاسوبي قادر على إنتاج تلك السلسلة يُقارب طول السلسلة نفسها. ولتوضيح ذلك بدقة، فإن السلسلةx{\displaystyle x}من الطولن{\displaystyle n}يُطلق عليه اسم عشوائية كولموغوروف إذا ك(x)ن+يا(1){\displaystyle K(x)\geq n+O(1)}أينك{\displaystyle K}هي تعقيد كولموغوروف الخالي من البادئات المعرّف أعلاه. السلسلة العشوائية بهذا المعنى غير قابلة للضغط ، إذ يستحيل ضغطها إلى برنامج أقصر منها. يوجد على الأقل سلسلة عشوائية واحدة من نوع كولموغوروف لكل طول. [ 19 ]

يمكن توسيع هذا التعريف ليشمل مفهوم العشوائية للمتتاليات اللانهائية من أبجدية محدودة. ويمكن تعريف هذه المتتاليات العشوائية خوارزميًا بثلاث طرق متكافئة. تستخدم إحدى الطرق نظيرًا فعالًا لنظرية القياس ؛ وتستخدم أخرى المارتينجالات الفعالة . أما الطريقة الثالثة، فتُعرّف المتتالية اللانهائية بأنها عشوائية إذا كان تعقيد كولموغوروف الخالي من البادئات لأجزائها الأولية ينمو بسرعة كافية  - أي يجب أن يكون هناك ثابت c بحيث يكون تعقيد جزء أولي طوله n دائمًا على الأقل nc . [ 20 ]

العلاقة بالإنتروبيا

بالنسبة للأنظمة الديناميكية، يرتبط معدل الإنتروبيا والتعقيد الخوارزمي للمسارات بنظرية برودنو، التي تنص على المساواةك(x؛تي)=ح(تي){\displaystyle K(x;T)=h(T)}ينطبق على جميع الحالات تقريبًاx{\displaystyle x}[ 21 ]

يمكن إثبات [ 22 ] أن تعقيد كولموغوروف لمخرجات مصادر معلومات ماركوف يرتبط بإنتروبيا مصدر المعلومات. وبشكل أدق، فإن تعقيد كولموغوروف لمخرجات مصدر معلومات ماركوف، مُقسَّمًا على طول المخرجات، يتقارب تقريبًا بشكل مؤكد (عندما يؤول طول المخرجات إلى اللانهاية) مع إنتروبيا المصدر .

نظرية. (النظرية 14.2.5 [ 23 ] ) تعقيد كولموغوروف الشرطي لسلسلة ثنائيةx1:ن{\displaystyle x_{1:n}}يرضي1نك(x1:ن|ن)حب(1نأناxأنا)+سجلن2ن+يا(1/ن){\displaystyle {\frac {1}{n}}K(x_{1:n}|n)\leq H_{b}\left({\frac {1}{n}}\sum _{i}x_{i}\right)+{\frac {\log n}{2n}}+O(1/n)}أينحب{\displaystyle H_{b}}هي دالة الإنتروبيا الثنائية (لا ينبغي الخلط بينها وبين معدل الإنتروبيا).

مشكلة التوقف

دالة تعقيد كولموغوروف تعادل حل مشكلة التوقف.

إذا كان لدينا أوراكل متوقف، فيمكن حساب تعقيد كولموغوروف لسلسلة ما ببساطة عن طريق تجربة كل برنامج متوقف، بالترتيب المعجمي، حتى يقوم أحدهم بإخراج السلسلة.

أما الاتجاه الآخر فهو أكثر تعقيدًا بكثير. [ 24 ] [ 25 ] يُظهر أنه بمعرفة دالة تعقيد كولموغوروف، يمكننا بناء دالةص{\displaystyle p}بحيثص(ن)بب(ن){\displaystyle p(n)\geq BB(n)}لجميع الأحجام الكبيرةن{\displaystyle n}، أينبب{\displaystyle BB}هي دالة الإزاحة Busy Beaver (يشار إليها أيضًا باسمS(ن){\displaystyle S(n)}). عن طريق تعديل الدالة عند قيم أقل منن{\displaystyle n}نحصل على حد أعلى لـبب{\displaystyle BB}، مما يحل مشكلة التوقف.

ضع هذا البرنامج في الاعتبارصك{\textstyle p_{K}}، والذي يأخذ المدخلات كـن{\textstyle n}، ويستخدمك{\textstyle K}.

  • اعرض جميع السلاسل النصية ذات الطول2ن+1{\textstyle \leq 2n+1}.
  • لكل سلسلة من هذا القبيلx{\textstyle x}، قم بتعداد جميع البرامج (الخالية من البادئات) ذات الطولك(x){\displaystyle K(x)}إلى أن يقوم أحدهم بإخراج البياناتx{\textstyle x}سجل وقت تشغيلهنx{\textstyle n_{x}}.
  • أنتج أكبر قدرنx{\textstyle n_{x}}.

نثبت بالتناقض أنصك(ن)بب(ن){\textstyle p_{K}(n)\geq BB(n)}لجميع الأحجام الكبيرةن{\textstyle n}.

يتركصن{\textstyle p_{n}}كن قندسًا نشيطًا من طولن{\displaystyle n}. لنفترض هذا البرنامج (الخالي من البادئات)، والذي لا يأخذ أي مدخلات:

  • قم بتشغيل البرنامجصن{\textstyle p_{n}}وسجل مدة تشغيلهبب(ن){\textstyle BB(n)}.
  • قم بإنشاء جميع البرامج ذات الطول2ن{\textstyle \leq 2n}قم بتشغيل كل واحد منها لمدة تصل إلىبب(ن){\textstyle BB(n)}الخطوات. لاحظ مخرجات تلك التي توقفت.
  • أخرج السلسلة ذات الترتيب المعجمي الأدنى التي لم يتم إخراجها بواسطة أي من تلك السلاسل.

لنفترض أن السلسلة النصية التي يُخرجها البرنامج هيx{\textstyle x}.

مدة البرنامجن+2سجل2ن+يا(1){\textstyle \leq n+2\log _{2}n+O(1)}، أينن{\displaystyle n}يأتي من طول القندس المشغولصن{\textstyle p_{n}}،2سجل2ن{\displaystyle 2\log _{2}n}يأتي ذلك من استخدام رمز دلتا إلياس (الخالي من البادئات) للرقمن{\displaystyle n}، ويا(1){\displaystyle O(1)}يأتي ذلك من بقية البرنامج. لذلك،ك(x)ن+2سجل2ن+يا(1)2ن{\displaystyle K(x)\leq n+2\log _{2}n+O(1)\leq 2n}لجميع الكبارن{\textstyle n}علاوة على ذلك، بما أن عدد البرامج الممكنة ذات الطول محدود2ن{\textstyle \leq 2n}لدينال(x)2ن+1{\textstyle l(x)\leq 2n+1}بحسب مبدأ التوزيع . بافتراض،صك(ن)<بب(ن){\textstyle p_{K}(n)<BB(n)}لذا فإن كل سلسلة بطول2ن+1{\textstyle \leq 2n+1}يحتوي على برنامج بسيط مع وقت تشغيل<بب(ن){\textstyle <BB(n)}وبالتالي، فإن السلسلةx{\textstyle x}يحتوي على برنامج بسيط مع وقت تشغيل<بب(ن){\textstyle <BB(n)}علاوة على ذلك، فإن هذا البرنامج له طولك(x)2ن{\textstyle K(x)\leq 2n}وهذا يتناقض مع كيفيةx{\textstyle x}تم بناؤه.

الاحتمالية الكونية

إصلاح آلة تورينج العالميةيو{\displaystyle U}، وهو نفس المستخدم لتعريف تعقيد كولموغوروف (بدون بادئات). عرّف الاحتمالية العامة (بدون بادئات) لسلسلة نصيةx{\displaystyle x}يكونP(x)=يو(ص)=x2-ل(ص){\displaystyle P(x)=\sum _{U(p)=x}2^{-l(p)}}بمعنى آخر، هو احتمال أن تتوقف آلة تورينج العالمية، عند إدخال سلسلة ثنائية عشوائية بشكل منتظم، بعد قراءة بادئة معينة من السلسلة، ثم تُخرجx{\displaystyle x}.

ملحوظة.يو(ص)=x{\displaystyle U(p)=x}لا يعني ذلك أن دفق الإدخال هوص٠٠٠{\displaystyle p000\cdots }لكن آلة تورينج العالمية ستتوقف عند نقطة ما بعد قراءة الجزء الأولي.ص{\displaystyle p}دون قراءة أي مدخلات أخرى، وعندما يتوقف، يكون قد كتبx{\displaystyle x}إلى شريط الإخراج.

نظرية. (النظرية 14.11.1 [ 23 ] )سجل1P(x)=ك(x)+يا(1){\displaystyle \log {\frac {1}{P(x)}}=K(x)+O(1)}

الآثار المترتبة في علم الأحياء

استُخدم مفهوم تعقيد كولموغوروف في علم الأحياء للتأكيد على أن التناظرات والترتيبات المعيارية الملاحظة في أنواع متعددة تنشأ من ميل التطور إلى تفضيل الحد الأدنى من تعقيد كولموغوروف. [ 26 ] وبالنظر إلى الجينوم كبرنامج يجب أن يحل مهمة أو ينفذ سلسلة من الوظائف، فإن البرامج الأقصر تُفضّل لكونها أسهل في الاكتشاف بواسطة آليات التطور. [ 27 ] ومن الأمثلة على هذا النهج التناظر الثماني لدائرة البوصلة الموجودة في جميع أنواع الحشرات، والتي تتوافق مع الدائرة الوظيفية التي تتطلب الحد الأدنى من تعقيد كولموغوروف لتوليدها من وحدات ذاتية التضاعف. [ 28 ]

النسخ المشروطة

تعقيد كولموغوروف الشرطي لسلسلتينك(x|y){\displaystyle K(x|y)}يُعرَّف تعقيد كولموغوروف، بشكل تقريبي، بأنه تعقيد كولموغوروف لـ x بمعلومية y كمدخل مساعد للإجراء. [ 29 ] [ 30 ] لذا، بينما تعقيد كولموغوروف (غير المشروط)ك(x){\displaystyle K(x)}من تسلسلx{\displaystyle x}يمثل طول أقصر برنامج ثنائي يُخرجx{\displaystyle x}على جهاز كمبيوتر عالمي، ويمكن اعتبارها الحد الأدنى من المعلومات اللازمة لإنتاجx{\displaystyle x}، تعقيد كولموغوروف الشرطيك(x|y){\displaystyle K(x|y)}يُعرَّف بأنه طول أقصر برنامج ثنائي يقوم بحسابx{\displaystyle x}متىy{\displaystyle y}يتم إدخالها كمدخلات باستخدام حاسوب عالمي. [ 31 ]

يوجد أيضًا تعقيد مشروط بالطولك(x|ل(x)){\displaystyle K(x|L(x))}، وهو تعقيد x بمعلومية طول x كمدخل. [ 32 ] [ 33 ]

التعقيد المحدود زمنيًا

يُعدّ تعقيد كولموغوروف المحدود زمنيًا نسخةً مُعدّلة من تعقيد كولموغوروف، حيث يقتصر نطاق البرامج المطلوب البحث فيها عن حل على البرامج التي يمكن تشغيلها ضمن عدد مُحدّد مُسبقًا من الخطوات. [ 34 ] يُفترض أن إمكانية وجود خوارزمية فعّالة لتحديد تعقيد كولموغوروف التقريبي المحدود زمنيًا ترتبط بمسألة وجود دوال أحادية الاتجاه حقيقية . [ 35 ] [ 36 ]

انظر أيضاً

ملحوظات

  1. هذه إعادة طبع باللغة الإنجليزية للمقال الروسي الأصلي لكولموجوروف عام 1963 "О таблицах случайных чисел".
  2. مع ذلك، ليس بالضرورة أن يوجد برنامج ASCII ذو K ( s ) = n لكل قيمة لـ n . على سبيل المثال، إذا لم يكن n من مضاعفات 7، فلايمكن أن يكون طول أي برنامج ASCII هو n بت بالضبط.
  3. يوجد 1 + 2 + 2² + + ... + 2n = 2n + 1 - 1 نص برمجي مختلف بطول يصل إلى n بت؛ انظر المتسلسلات الهندسية . إذا كانت أطوال البرامج من مضاعفات 7 بت، فإن عدد النصوص البرمجية سيكون أقل.
  4. وفقًا للنظرية السابقة، توجد مثل هذه السلسلة، وبالتاليforستنتهي الحلقة في النهاية.
  5. بما في ذلك مترجم اللغة ورمز الروتين الفرعي لـKolmogorovComplexity
  6. إذاKolmogorovComplexityكان طولها n بت، فيجب تعديل الثابت m المستخدم فيGenerateComplexStringلتحقيق n +1,400,000+1218 + 7·log 10 ( m ) < m ، وهو أمر ممكن دائمًا لأن m ينمو بشكل أسرع من log 10 ( m ).
  7. بما أن هناك NL = 2L سلسلة طول كل منها L ، فإن عدد السلاسل التي طولها L = 0، 1، ...، n − 1 هو N0 + N1 + ... + Nn 1 = 20 + 21 + ... + 2n 1 ، وهي متسلسلة هندسية منتهيةمجموعها 20 + 21 + ... + 2n 1 = 20 × ( 1 − 2n ) / (1 − 2) = 2n 1

مراجع

  1. كولموغوروف، أندريه ن. (1998) [1963]. "حول جداول الأرقام العشوائية" . علوم الحاسوب النظرية . 207 (2): 387-395 . doi : 10.1016/S0304-3975(98)00075-9 . تاريخ الاسترجاع: 14 يناير 2026 .
  2. (داوني وهيرشفيلدت، 2010)، النظرية 3.1.4
  3. (داوني وهيرشفيلدت، 2010)، القسم 3.5
  4. 1 2 هوتر، ماركوس (2007-03-06). "نظرية المعلومات الخوارزمية" . موسوعة سكولاربيديا . 2 (3): 2519. رمز Bibcode : 2007SchpJ...2.2519H . doi : 10.4249/scholarpedia.2519 . hdl : 1885/15015 . ISSN 1941-6016 . 
  5. سولومونوف، راي (4 فبراير 1960). تقرير أولي عن نظرية عامة للاستدلال الاستقرائي (ملف PDF) . التقرير V-131 (تقرير). نُشرت النسخة المعدلة في نوفمبر 1960. أُرشف (ملف PDF) من النسخة الأصلية في 9 أكتوبر 2022.
  6. سولومونوف، راي (مارس 1964). "نظرية رسمية للاستدلال الاستقرائي - الجزء الأول" (ملف PDF) . المعلومات والتحكم . 7 (1): 1-22 . doi : 10.1016/S0019-9958(64)90223-2 . مؤرشف (ملف PDF) من الأصل بتاريخ 9 أكتوبر 2022.
  7. سولومونوف، راي (يونيو 1964). "نظرية رسمية للاستدلال الاستقرائي - الجزء الثاني" (ملف PDF) . المعلومات والتحكم . 7 (2): 224-254 . doi : 10.1016/S0019-9958(64)90131-7 . مؤرشف (ملف PDF) من الأصل بتاريخ 9 أكتوبر 2022.
  8. كولموغوروف، أ.ن. (1965). "ثلاثة مناهج للتعريف الكمي للمعلومات" . مشاكل نقل المعلومات . 1 (1): 1-7 . مؤرشف من الأصل في 28 سبتمبر 2011.
  9. تشايتين، غريغوري ج. (1969). "حول بساطة وسرعة البرامج لحساب مجموعات لا نهائية من الأعداد الطبيعية". مجلة ACM . 16 (3): 407-422 . CiteSeerX 10.1.1.15.3821 . doi : 10.1145/321526.321530 . S2CID 12584692 .  
  10. كولموغوروف، أ. (1968). "الأساس المنطقي لنظرية المعلومات ونظرية الاحتمالات". معاملات IEEE في نظرية المعلومات . 14 (5): 662-664 . doi : 10.1109/TIT.1968.1054210 . S2CID 11402549 . 
  11. لي، مينغ؛ فيتاني، بول (2008). "مقدمات". مدخل إلى تعقيد كولموغوروف وتطبيقاته . نصوص في علوم الحاسوب. ص 1-99 . doi : 10.1007/978-0-387-49820-1_1 . ISBN  978-0-387-33998-6.
  12. بورغين، م. (1982). "تعقيد كولموغوروف المعمم والازدواجية في نظرية الحسابات" . إشعارات الأكاديمية الروسية للعلوم . 25 (3): 19-23 .
  13. هوتر، ماركوس (2005). الذكاء الاصطناعي الشامل: قرارات متسلسلة قائمة على الاحتمالية الخوارزمية . نصوص في علوم الحاسوب النظرية. برلين - نيويورك: سبرينغر. ISBN 978-3-540-26877-2.
  14. ورد هذا الكلام دون دليل في: بي. بي. ميلترسن (2005). "ملاحظات الدورة التدريبية لضغط البيانات - تعقيد كولموغوروف" (ملف PDF) . صفحة 7. مؤرشف من النسخة الأصلية (ملف PDF) بتاريخ 9 سبتمبر 2009. 
  15. زفونكين، أ.؛ ل. ليفين (1970). "تعقيد الكائنات المحدودة وتطوير مفاهيم المعلومات والعشوائية باستخدام نظرية الخوارزميات" (ملف PDF) . المسوحات الرياضية الروسية . 25 (6): 83-124 . Bibcode : 1970RuMaS..25...83Z . doi : 10.1070/RM1970v025n06ABEH001269 . S2CID 250850390 . 
  16. غريغوري ج. تشايتين (يوليو 1974). "القيود النظرية للمعلومات للأنظمة الرسمية" (ملف PDF) . مجلة ACM . 21 (3): 403-434 . doi : 10.1145/321832.321839 . S2CID 2142553 . هنا: نظرية 4.1ب
  17. كالود، كريستيان س. (12 سبتمبر 2002). المعلومات والعشوائية: منظور خوارزمي . سبرينغر. ISBN 978-3-540-43466-5.
  18. والاس، سي إس؛ داو، دي إل (1999). "الحد الأدنى لطول الرسالة وتعقيد كولموغوروف". مجلة الكمبيوتر . 42 (4): 270-283 . CiteSeerX 10.1.1.17.321 . doi : 10.1093/comjnl/42.4.270 . 
  19. فينكاتارامانان، فينكات؛ غاتش، بيتر (2020). "تعقيد كولموغوروف" (ملف PDF) . ملاحظات المحاضرة 15-252 (ربيع 2020) . جامعة كارنيجي ميلون . تم الاسترجاع في 14 يناير 2026. يوجد 2^ n سلسلة ثنائية بطول ولكن يوجد فقط 2 ^n - 1 سلسلة ثنائية بطول أقل من n .
  20. مارتن-لوف، بير (1966). "تعريف المتتاليات العشوائية" . المعلومات والتحكم . 9 (6): 602-619 . doi : 10.1016/s0019-9958(66)80018-9 .
  21. غالاتولو، ستيفانو؛ هويروب، ماثيو؛ روخاس، كريستوبال (2010). "الديناميكيات الرمزية الفعالة، النقاط العشوائية، السلوك الإحصائي، التعقيد والإنتروبيا" ( ملف PDF) . المعلومات والحوسبة . 208 : 23-41 . arXiv : 0801.0209 . doi : 10.1016/j.ic.2009.05.001 . S2CID 5555443. مؤرشف (ملف PDF) من الأصل بتاريخ 2022-10-09. 
  22. أليكسي كالتشينكو (2004). "خوارزميات لتقدير مسافة المعلومات مع تطبيق على المعلوماتية الحيوية واللغويات". arXiv : cs.CC/0404039 .
  23. 1 2 كوفير، توماس م.؛ توماس، جوي أ. (2006). عناصر نظرية المعلومات (الطبعة الثانية ). وايلي-إنترساينس. ISBN  0-471-24195-4.
  24. تشايتين، ج.؛ أرسلانوف، أ.؛ كالود، كريستيان س. (1995-09-01). "حساب تعقيد حجم البرنامج لحل مشكلة التوقف". نشرة الجمعية الأوروبية لعلوم الحاسوب . S2CID 39718973 . 
  25. لي، مينغ؛ فيتاني، بول (2008). مقدمة في تعقيد كولموغوروف وتطبيقاته . نصوص في علوم الحاسوب. التمرين 2.7.7. Bibcode : 2008ikca.book.....L . doi : 10.1007/978-0-387-49820-1 . ISBN 978-0-387-33998-6ISSN 1868-0941 
  26. جونستون، إيان ج.؛ دينجل، كمال الدين؛ جرينبري، سام ف.؛ كامارجو، تشيكو كيو.؛ دوي، جوناثان ب.ك.؛ أنيرت، سيباستيان إي.؛ لويس، آرد أ. (2022-03-15). "ينشأ التناظر والبساطة تلقائيًا من الطبيعة الخوارزمية للتطور" . وقائع الأكاديمية الوطنية للعلوم . 119 (11) e2113883119. Bibcode : 2022PNAS..11913883J . doi : 10.1073/pnas.2113883119 . PMC 8931234. PMID 35275794 .  
  27. ألون، أوري (مارس 2007). "البساطة في علم الأحياء" . مجلة نيتشر . 446 (7135): 497. Bibcode : 2007Natur.446..497A . doi : 10.1038/446497a . ISSN 1476-4687 . PMID 17392770 .  
  28. فيليمليس أسيتونو، باو؛ دال أوستو، دومينيك؛ بيسوكاس، يوانيس (30-05-2024). كولجين، لورا ل؛ فافيديس، بانتليس (محررون). " مبادئ نظرية تشرح بنية دائرة اتجاه رأس الحشرة" . eLife . 13 e91533. doi : 10.7554/eLife.91533 . ISSN 2050-084X . PMC 11139481. PMID 38814703 .   
  29. جورما ريسانين (2007). المعلومات والتعقيد في النمذجة الإحصائية . علم المعلومات والإحصاء. سبرينغر، ص 53. doi : 10.1007 /978-0-387-68812-1 . ISBN  978-0-387-68812-1.
  30. ^ مينغ لي. بول إم بي فيتاني (2009). مقدمة لتعقيد كولموجوروف وتطبيقاته . سبرينغر. ص 105 – 106. دوى : 10.1007/978-0-387-49820-1 . رقم ISBN  978-0-387-49820-1.
  31. كيليمين، أرباد؛ إبراهيم، أجيث؛ ليانغ، يولان، محرران. (2008). الذكاء الحسابي في المعلوماتية الطبية . نيويورك؛ لندن: سبرينغر. ص. 160. ردمك  978-3-540-75766-5. OCLC 181069666 . 
  32. ^ مينغ لي. بول إم بي فيتاني (2009). مقدمة لتعقيد كولموجوروف وتطبيقاته . سبرينغر. ص. 119 . رقم ISBN  978-0-387-49820-1.
  33. فيتاني، بول إم بي (2013). "تعقيد كولموغوروف الشرطي والاحتمالية الشاملة" . علوم الحاسوب النظرية . 501 : 93-100 . arXiv : 1206.0983 . doi : 10.1016/j.tcs.2013.07.009 . S2CID 12085503 . 
  34. ^ هيراهارا، شويتشي؛ كابانيتس، فالنتين؛ لو، زينجيان؛ أوليفيرا، إيجور سي. (2024). “التخفيضات الدقيقة في عملية البحث إلى القرار لتعقيد كولموغوروف المحدد بالوقت” . مؤتمر التعقيد الحسابي التاسع والثلاثون (CCC 2024) . إجراءات لايبنيز الدولية في مجال المعلوماتية (LIPIcs). 300 . شلوس داغستوهل – Leibniz-Zentrum für Informatik: 29:1–29:56. دوى : 10.4230/LIPIcs.CCC.2024.29 . رقم ISBN 978-3-95977-331-7.
  35. كلاريش، إريكا (2022-04-06). "باحثون يحددون 'المشكلة الرئيسية' الكامنة وراء علم التشفير بأكمله" . مجلة كوانتا . تم الاطلاع عليه بتاريخ 2024-11-16 .
  36. ليو، ياني؛ باس، رافائيل (24-09-2020)، حول الدوال أحادية الاتجاه وتعقيد كولموغوروف ، arXiv : 2009.11514

للمزيد من القراءة