柯氏複雜性

在算法信息論 （ 計算機科學和數學的一個分支 ） 中 ， 一個對象比如一段文字的柯氏複雜性 （ 亦作柯爾莫哥洛夫複雜性 、 描述複雜性 、 柯爾莫哥洛夫 - 複雜度 、 隨機複雜度 ， 或算法熵 ） 是衡量描述這個對象所需要的信息量的一個尺度 。 柯氏複雜性是由安德雷 · 柯爾莫哥洛夫於1963年發現 ， 所以用他的名字命名 。 以下面的兩個長度爲64的字符串爲例 。 0101010101010101010101010101010101010101010101010101010101010101 1100100001100001110111101110110011111010010000100101011110010110 第一個字符串可以用中文簡短地描述爲 “ 重複32個 ‘ 01 ’” 。 第二個字符串沒有明顯的簡短描述 。 一個字符串的柯氏複雜性 （ 或者 ， 區別如後 ） 是這個字符串的最短描述的長度 。 換言之 ， 一個字符串的柯氏複雜性是能夠輸出且僅輸出這個字符串的最短計算機 ／ 圖靈機程序的長度 。 這樣的定義導致在使用不同的描述語言或者不同的圖靈機的時候柯氏複雜性不一樣 。 所以在討論柯氏複雜性的時候 ， 通常都事先固定一個通用圖靈機作爲參照 。 可以證明在使用做參照的時候 ， 對任意的圖靈機 ， 都存在一個僅決定於和的常數使得對所有的字符串相對於的柯氏複雜性 （ 或者 ） 和相對於的柯氏複雜性 （ 或者 ） 都滿足 。 根據這點 ， 通常確定了一個參照圖靈機後就用和表示柯氏複雜性 （ 省略 ） 。 不難證明 ， 任何字符串的柯氏複雜度都不會比字符串自身的長度超過太多 。 類似與上文中的0101字符串 ， 它的柯氏複雜度和字符串的長度關係不大 ， 因此並不複雜 。 與康托爾的對角論證法 、 哥德爾不完備定理和圖靈的停機問題類似 ， 柯氏複雜度的概念可以用於闡述和證明不可能性 。