İçeriğe atla

Kolmogorov karmaşıklığı

Kolmogorov karmaşıklığı (tanımsal karmaşıklık, Kolmogorov-Chaitin karmaşıklığı, stokastik karmaşıklık, algoritmik entropi veya program boyu karmaşıklığı olarak da bilinir), bilgisayar biliminde, bir metin parçası gibi bir nesneyi tanımlamak için kullanılması gereken bilgi işlemsel kaynakların ölçüsü.

Örneğin aşağıdaki 100 karakter uzunluğundaki iki karakter katarı ele alınırsa:

0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101
1100100001100001110111101110110011111010010000100101011110010110001101111111010001100011011001110111

Birinci karakter katarı Türkçe "'01'in 50 tekrarı" ifadesi ile kısaca ve tam olarak tanımlanabilir. İkinci karakter katarının bu şekilde tanımlanması mümkün değildir. Bu karakter katarını tanımlananın en kısa yolu kendisini yazmaktır.

Daha şekilsel olarak söylemek gerekirse, bir karakter katarının karmaşıklığı sabit bir tanımlama dilinde o karakter katarının en kısa ifade edilişidir. Aşağıda tanımlama dilinin seçimi ile karmaşıklık arasındaki hassas ilişki ele alınmıştır. Bir karakter katarının Kolmogorov karmaşıklığının karakter katarının uzunluğundan daha büyük olamayacağı gösterilebilir. Kolmogorov karmaşıklıkları, kendi uzunluklarına kıyasla daha kısa olan karakter katarları karmaşık kabul edilmez.

Kolmogorov karmaşıklığı kavramı şaşırtıcı ölçüde derin bir kavramdır. Bu kavram kullanılarak Gödel'in eksiklik teoremi ve Turing'in durma problemi ile ilgili imkânsızlık sonuçlarını ifade ve ispat için kullanılabilir.

Algoritmik bilgi teorisi, bilgisayar bilimlerinin bir alt alanı olup karakter katarlarının (ve diğer veri yapılarının) Kolmogorov karmaşıklığı ve diğer türden karmaşıklarını incelenmesi ile ilgilidir. Bu çalışma alanı Andrey Kolmogorov, Ray Solomonoff ve Gregory Chaitin tarafından 1960'larda kurulmuştur. Algoritmik bilgi veya Kolmogorov karmaşıklığının pek çok çeşitlemesi vardır. Bunlardan en yaygın olanı kendi kendini ayıran programlara dayanmaktadır ve Leonid Levin (1974) tarafından ortaya konmuştur.

Tanım

Kolmogorov karmaşıklığını tanımlamak için önce karakter katarları için bir tanımlama dili belirlemeliyiz. Böyle bir tanımlama dili Lisp, Pascal veya Java bytecode gibi programlama dillerinden birine dayanabilir. Eğer P, x çıktısını üreten bir program ise P xin tanımıdır. Tanımlamanın uzunluğu P programının kaynak kodunun bir karakter katarı olarak uzunluğudur. Pnin uzunluğu belirlenirken, P içinde kullanılan altrutinler de hesaba katılmalıdır. P programındaki herhangi bir n sabitinin uzunluğu, nyi temsil etmek için gerekli bit sayısıdır ki bu da (kabaca) log2n kadardır.

Bir başka yöntem de Turing makineleri (TM) için bir kodlama seçmektir. Burada kodlama, her M Turing makinesini bit dizisi olan <M> ile ilişkilendiren bir fonksiyondur. Eğer M, w girdisine karşılık x çıktısını üreten bir TM ise bu durumda birleştirilmiş <M>w xin bir tanımıdır. Kuramsal analiz için bu yaklaşım şekilsel kanıtlar kurmaya daha yatkındır ve araştırmacılar tarafından tercih edilmektedir. Bu makalede ise biz bu kadar şekilsel olmayan bir yaklaşım kullanacağız.

Bir tanımlama dili sabitle. Herhangi bir s karakter katarının en az bir tanımı vardır ve o da şu programdır:

 function SabitKatarUret()
    return s

snin tüm tanımları arasında en kısa olanı d(s) şeklinde gösterilir. Eğer aynı en kısa uzunlukta birden fazla program varsa herhangi birini seç. Bunun için söz gelimi sözlük sırasına göre ilk geleni seç. d(s), snin en kısa tanımıdır. snin Kolmogorov karmaşıklığı, K(s) olarak yazılır ve şu şekilde tanımlanır:

Diğer bir deyişle K(s) snin en kısa tanımının uzunluğudur.

Şimdi de tanımlama dilinin Kyı nasıl etkilediğine bakalım kullanılan dili değiştirmenin etkisinin sınırlı olduğunu gösterelim.

Teorem. Eğer K1 ve K2, L1 ve L2 tanımla dilleri kullanılarak elde edilmiş karmaşıklık fonksiyonları ise, o zaman (sadece L1 ve L2ye bağlı) öyle bir c sabiti vardır ki

eşitsizliğini sağlar.

Bakışımdan ötürü, tüm s bitdizileri için öyle bir c sabiti vardır ki,

eşitsizliği sağlanır önermesini ispat etmek yeterlidir.

Bunun neden böyle olduğunu anlamak için L2 dili için yorumlayıcı olarak çalışan ve L1 dilinde yazılmış bir fonksiyon olsun:

  function DilYorumla(string p)

burada p L2 dilinde yazılmış bir programdır. Yorumlayıcı şu özelliğe sahiptir:

p girdisi üzerinde DilYorumla fonksiyonunu çalıştırmak pyi çalıştırmanın sonucunu döndürür.

Dolayısı ile eğer p, L2 dilinde bir program ve snin en kısa tanımı ise DilYorumla(P) s karakter katarını döndürür. snin bu tanımının uzunluğu aşağıdakilerin toplamıdır:

  1. DilYorumla programının uzunluğu
  2. Pnin uzunluğu ki bu da tanım itibarıyla K2(s)dir.

Böylece yukarıda sözü geçen üst sınırın varlığı ispatlanmış olur.

Ayrıca bkz. invaryans teoremi.

Temel sonuçlar

Aşağıda tek bir tanımlama olduğunu kabul edip, snin karmaşıklığını K(s) olarak göstereceğiz.

Bir karakter katarının en kısa tanımının katarın kendisinden çok daha uzun olamayacağını görmek zor değildir: syi çıktı olarak veren yukarıdaki SabitKatarUret programı snin kendisinden sabit miktarda daha uzundur.

Teorem. Öyle bir c sabiti vardır ki

eşitsizliği sağlanır.

İlk şaşırtıcı sonuç Knın etkin olarak hesaplanamayacağı gerçeğidir.

Teorem. K hesaplanabilir bir fonksiyon değildir.

Bir başka deyişle, s karakter katarını girdi olarak alıp çıktı olarak K(s) üretebilecek bir program yazılamaz. Bunu olmayana ergi yöntemi ile gösterelim. Aşağıdaki gibi bir program bulunduğunu var sayalım

  function KolmogorovKarmasikligi(string s)

öyle ki bu program girdi olarak s karakter katarını alıp çıktı olarak da K(s) karmaşıklığını versin. Şimdi de şu programı düşünelim:

  function KarmasikKarakterKatariUret(int n)
     for i = 1 to infinity:
        for each string s of length exactly i
           if KolmogorovKarmasikligi(s) >= n
              return s
              quit

Bu program KolmogorovKarmasikligi programını bir altrutin olarak çağırır ve en kısa olanından başlayarak en az n karmaşıklığına sahip bir karakter katarı bulana dek tüm karakter katarlarını dener, sonra da bulduğu karakter katarını döndürür. Dolayısı ile herhangi bir n pozitif tam sayısı verildiğinde Kolmogorov karmaşıklığı en az n kadar büyük olan bir karakter katarı üretir. Bu programın kendisinin uzunluğu sabit bir U değeridir. KarmasikKarakterKatariUret programınının girdisi n tam sayısıdır ve burada n sayısının boyu bunu temsil etmek için gerekli bit sayısı ile ölçülür ki bu da log2(n)dir. Şimdi de aşağıdaki programı ele alalım:

  function ParadoksalKarakterKatariUret ()
      return KarmasikKarakterKatariUret(n0)

Bu program KarmasikKarakterKatariUret programini altrutin olarak çağırmaktadır ve n0 isimli bir serbest parametresi vardır. Program, karmaşıklığı en az n0 olan bir s karakter katarı üretir. n0 için uygun bir değer verilirse bir çelişki elde ederiz. Bu değeri seçmek için snin, uzunluğu en fazla

olan ParadoksalKarakterKatariUret programı tarafından üretildiğine dikkat edelim; burada C, ParadoksalKarakterKatariUret tarafından eklenmiş sabit bir fazlalıktır. n, log2(n) değerinden daha hızlı büyüdüğü için aşağıdaki eşitsizliği sağlayan bir n0 değeri vardır

Ancak bu durum en az n0 kadar bir karmaşıklık değeri olduğu tanımı ile çelişir. Dolayısı ile "KolmogorovKarmasikligi" olarak isimlendirilmiş program istenen Kolmogorov karmaşıklığında karakter katarları üretiyor olamaz.

Olmayan ergi ile yapılan bu ispat Berry paradoksuna benzer: "n yirmi İngilizce sözcükten daha az sözcük ile tanımlanamayan en küçük tam sayı olsun. Az önce bu sayıyı yirmiden az İngilizce sözcük ile tanımladım."

Sıkıştırma

Ancak K(s) değeri için üst sınırları hesaplamak basit bir iştir: uygun bir yöntemle s karakter katarını sıkıştır, seçilen dilde sıkıştırma yönteminin tersi olan açma yöntemini yaz, bu açıcı programın kaynak kodunu sıkıştırılmış karakter katarına ekle ve sonuçta elde ettiğin karakter katarının uzunluğunu ölç.

Bir s karakter katarı eğer uzunluğu |s| - c değerini geçmeyecek şekilde tanımlanabiliyorsa o zaman c kadar sıkıştırılabilir demektir. Bu da K(s) ≤ |s| - c demektir. Aksi takdirde s karakter katarı c kadar sıkıştırılabilir değildir. En az bir bit kadar bile sıkıştırılamayan karakter katarına kısaca sıkıştırılamaz denir. Güvercin deliği ilkesine göre sıkıştırılamaz karakter katarları mevcut olmak zorundadır çünkü n uzunluğunda 2n adet bit katarı varken sadece 2n-1 tane daha kısa katar vardır ki bunların da boyu n - 1 kadardır.

Aynı sebepten ötürü "çoğu" karakter katarı karmaşıktır yani çok fazla sıkıştırılamazlar. Yani K(s), s katarının bit cinsinden uzunluğu olan |s| değerinden çok daha küçük olamaz. Bunu daha detaylı olarak söylemek için belli bir n değeri alalım. Uzunluğu n olan n farklı bit katarı vardır. Üniform olasılık dağılımına göre bu bit katarı uzayında n uzunluğundaki her bit katarının ağırlığı 2-n kadardır.

Teorem. n uzunluğundaki bit katarları uzayındaki üniform olasılık dağılımına göre herhangi bir bit katarının c kadar sıkıştırılamama olasılığı en az 1 - 2-c+1 + 2-n kadardır.

Bu önermeyi ispatlamak için şuna dikkat edelim: n - c uzunluğunu geçmeyen katar tanımlamalarının sayısı şu geometrik dizi ile belirlenir:

Böylece n uzunluğunda olup da c kadar sıkıştırılamayan en az

kadar bit katarı kalır. Olasılığı belirlemek için bunu 2n ile bölmek yeterlidir.

Bu teorem comp.compression FAQ 11 Ekim 2006 tarihinde Wayback Machine sitesinde arşivlendi. belgesindeki pek çok meydan okuma için temel teşkil eder. Bu teoremin varlığına rağmen zaman zaman bazı kişiler (bunlara çatlak denir) herhangi bir veriyi kayıpsız olarak büyük ölçüde sıkıştırabilen algoritmalar geliştirdiklerini iddia ederler. Bkz. kayıpsız sıkıştırma

Chaitin'in eksiklik teoremi

Biliyoruz ki çoğu karakter katarı karmaşıktır yani önemli ölçüde "sıkıştırılamaz". Bununla birlikte eğer uzunluğu belli bir eşik değerini geçerse o karakter katarının karmaşık olduğu şekilsel olarak ispatlanamaz. Detaylı olarak söylemek gerekirse doğal sayılar için belli bir S aksiyomatik sistemi alın. Bu aksiyomatik sistem yeterince güçlü olmalıdır yani karakter katarlarının karmaşıklığı ile ilgili A önermelerine FA formülleri karşılık getirilebilmelidir ve bunlar da S içinde olmalıdır. Bu karşılık getirme, ilişkilendirme, şu özelliğe sahip olmalıdır: eğer FA ifadesi S içindeki aksiyomlardan yola çıkılmak sureti ile ispatlanabiliyorsa o zaman buna karşılık gelen A önermesi doğrudur. Bu şekilleştirme (formalizasyon) Gödel numaralandırması gibi yapay bir kodlama ile yapılabileceği gibi S sisteminin kast edilen yorumuna daha uygun olan bir şekilleştirme ile de yapılabilir.

Teorem. Öyle bir L sabiti vardır ki (sadece belli bir aksiyomatik sisteme ve seçilmiş belli bir tanımlama diline bağlı olan) aşağıdaki

ifadesinin S aksiyomatik sisteminde ispatlanabileceği bir s karakter katarı olmasın.

Hemen hemen sıkıştırılamaz olan karakter katarlarının bolluğundan ötürü bu ifadelerin çoğunun doğru olmak zorunda olduğuna dikkat edin.

Bu sonucun ispatı için Berry paradoksundaki kendine gönderme (self-referantial) yapısı kullanılır. Olmayana ergi yöntemi ile teoremdeki iddianın yanlış olduğunu var sayalım, bu durumda:

Varsayım (X): Herhangi bir n tam sayısı için öyle bir s katarı vardır ki S sisteminde "K(s) ≥ n" ifadesinin ispatı mevcuttur (ifadenin S sisteminde şekilsel olarak yazılabildiğini var sayıyoruz).

S sistemindeki tüm şekilsel ispatları numaralandırmak için girdi olarak n tam sayısını alan ve bir ispatı çıktı olarak üreten aşağıdaki gibi bir prosedür bulabiliriz

  function NinciIspat(int n)

Bu fonksiyon tüm ispatları numaralandırır. Bu ispatların bir kısmı bizim ilgilenmediğimiz formüllerin ispatlarıdır (örneğin Fermat'nın küçük teoremi, Fermat'nın son teoremi gibi ispatlar NinciIspat fonksiyonu tarafından üretilebilir ispatlardır). İspatların küçük bir kısmı ise K(s) ≥ n şeklindeki karmaşıklık formüllerinin ispatlarıdır (burada s ve n S dilindeki sabitlerdir). Öyle bir

  function NinciIspatKarmasiklikFormulunuIspatlar(int n)

programı vardır ki ninci ispatın K(s) ≥ L karmaşıklık formülünün ispatı olup olmadığını belirler. s karakter katarı ve L tam sayısı şu programlar tarafından hesaplanabilir:

  function KatarNinciIspat(int n)
  function KarmasiklikAltSinirNinciIspat(int n)

Aşağıdaki programı ele alalım

  function KarmasikligiIspatlanabilirKarakterKatariUret(int n)
     for i = 1 to infinity:
        if  NinciIspatKarmasiklikFormulunuIspatlar(i) and 
            KarmasiklikAltSinirNinciIspat(i) >= n 
              return KatarNinciIspat(i)
              quit

Bir n tam sayısı verildiğinde bu program S siteminde K(s) ≥ n formülünün ispatını ve buna karşılık gelen katarı bulana dek tüm ispatları dener. Program bizim Varsayım (X) koşulumuz sağlanınca durur. Şimdi bu programın uzunluğuna U diyelim. Öyle bir n0 tam sayısı vardır ki U + log2(n0) + C < n0, burada C aşağıdaki programın getirdiği ek uzunluktur:

   function IspatlanabilirParadoksalKarakterKatariUret()
      return KarmasikligiIspatlanabilirKarmasikKarakterKatariUret(n0)
      quit

IspatlanabilirParadoksalKarakterKatariUret programı K(s) ≥ n0 formülünün S sisteminde şekilsel olarak ispatlanabildiği s karakter katarını üretir. K(s) ≥ n0 ifadesi tek başına doğrudur. Ancak s aynı zamanda uzunluğu U+log2(n0)+C olan program tarafından da tanımlanabilir dolayısı ile karmaşıklığı n0dan azdır. Bu da çelişkiye yol açar ve Varsayım (X) olarak söylediklerimizin doğru olmadığını gösterir.

Chaitin sabitinin özelliklerini ispatlamak için de benzer fikirler kullanılır.

İstatistiksel/tümevarımsal çıkarım ve makina öğrenme alanlarındaki en kısa ileti uzunluğu prensibi C.S. Wallace ve D.M. Boulton tarafından 1968 yılında geliştirilmiştir. EKİU Bayesçi (önsel inançları işin içine katar) ve bilgi kuramsaldır. İstatistiksel invaryansın istenen özelliklerine sahiptir (çıkarım yeniden parametikleştirme ile dönüştürülebilir, söz gelimi kutupsal koordinatlardan Kartezyen koordinatlara), istatistiksel tutarlılığı vardır (en zor problemler için bile EKİU herhangi bir modele yakınsar) ve etkindir (EKİU herhangi bir modele en kısa sürede yakınsar). C.S. Wallace 14 Haziran 2006 tarihinde Wayback Machine sitesinde arşivlendi. ve D.L. Dowe, EKİU ile algoritmik bilgi teorisi (veya Kolmogorov karmaşıklığı) arasındaki şekilsel ilişkiyi 1999 yılında göstermişlerdir.

Kaynakça

  • Ming Li and Paul Vitányi, An Introduction to Kolmogorov Complexity and Its Applications, Springer, 1997. Giriş bölümünün tam metni (İngilizce)17 Mayıs 2008 tarihinde Wayback Machine sitesinde arşivlendi..
  • Yu Manin, A Course in Mathematical Logic, Springer-Verlag, 1977.
  • Michael Sipser, Introduction to the Theory of Computation, PWS Publishing Company, 1997.
  • Rónyai Lajos, Ivanyos Gábor, Szabó Réka, Algoritmusok. TypoTeX, 1999.

Dış bağlantılar

İlgili Araştırma Makaleleri

<span class="mw-page-title-main">Pisagor teoremi</span> Öklid geometrisinde bir dik üçgenin üç kenarı arasındaki bağıntı

Pisagor teoremi veya Pisagor bağıntısı, Öklid geometrisinde üçgenin kenarları arasındaki temel ilişkiyi kuran ilk teoremlerden biridir. Teoreme gerçek hayattan örnek olarak telli çalgıları gösterilebilir; 'telin uzunluğu arttıkça titreşim artar' prensibine dayanır. Pisagor'un denklemi olarak da isimlendirilen bu teorem, a, b ve c kenarlarının arasındaki ilişkiyi şu şekilde açıklar:

Komut kümesi mimarisi, CPU'nun yazılım tarafından nasıl kontrol edileceğini tanımlayan bilgisayar soyut modelinin bir parçasıdır. ISA, işlemcinin ne yapabileceğini ve bunu nasıl yapacağını belirterek donanım ve yazılım arasında bir arayüz gibi davranır.

Matematikte cebirin temel teoremi karmaşık değişkenli polinomların köklerinin varlığıyla ilgili temel bir sonuçtur. D'Alembert-Gauss teoremi olarak da anılmaktadır.

<span class="mw-page-title-main">İntegral</span> fonksiyon eğrisinin altında kalan alan

İntegral veya tümlev, toplama işleminin sürekli bir aralıkta alınan hâlidir. Türev ile birlikte kalkülüsün temelini oluşturan iki işlemden birisidir. Kalkülüsün temel teoremi sayesinde aynı zamanda türevin ters işlemidir.

Bolzano-Weierstrass teoremi klasik matematik analizin temel teoremlerinden biridir. İlk kez "Fonksiyonlar" adlı kitabında Bernhard Bolzano tarafından kullanıldı. Sonraki yıllarda bu teoremin ispatı tam olarak Karl Weierstrass tarafından verilmiştir. Bu nedenle, bu teorem analizde Bolzano-Weierstrass teoremi olarak bilinir.

<span class="mw-page-title-main">Vektör</span> büyüklüğü (veya uzunluğu) ve yönü olan geometrik nesne

Matematik, fizik ve mühendislikte, Öklid vektörü veya kısaca vektör sayısal büyüklüğü ve yönü olan geometrik bir objedir. Vektör, genellikle bir doğru parçası ile özdeşleştirilir. Bir başlangıç noktası A ile bir uç noktası B'yi birleştiren bir ok şeklinde görselleştirilir ve ile belirtilir.

<span class="mw-page-title-main">Yarıçap</span> merkezinden çevresine bir daire veya küre içinde bölüm veya yüzeyi ile uzunluğu

Yarıçap, bir daire veya kürenin özeğinin (merkezinin) çemberine olan mesafesidir. Çapın yarısına eşittir.

<span class="mw-page-title-main">Ceva teoremi</span> Öklid düzlem geometrisinde bir üçgenin kenar doğru parçası çiftlerinin çarpımlarının oranının bire eşit olduğunu belirten teorem

Ceva Teoremi, herhangi bir ABC üçgeni verildiğinde, A, B ve C'den üçgenin zıt kenarlarına doğru olan doğru parçalarının üçgenin her iki kenarında oluşan doğru parçası çiftlerinin oranlarının çarpımı 1'e eşit olduğunda tek noktada kesiştiğini belirtir. Teorem adını İtalyan matematikçi Giovanni Ceva'dan alır.

Merkezi limit teoremi büyük bir sayıda olan bağımsız ve aynı dağılım gösteren rassal değişkenlerin aritmetik ortalamasının, yaklaşık olarak normal dağılım göstereceğini ifade eden bir teoremdir. Matematiksel bir ifadeyle, bir merkezi limit teoremi olasılık kuramı içinde bulunan bir zayıf yakınsama sonucu setidir. Bunların hepsi, birçok bağımsız aynı dağılım gösteren rassal değişkenlerin herhangi bir toplam değerinin limitte belirli bir "çekim gücü gösteren dağılıma" göre dağılım gösterme eğiliminde olduğu gerçeğini önerir.

Matematiğin bir alt dalı olan karmaşık analizde, Liouville teoremi tam fonksiyonların sınırlılığıyla ilgili temel bir teoremdir.

İstatistik bilim dalında, Kolmogorov-Smirnov (K-S) sınaması parametrik olmayan istatistik olup Andrey Kolmogorov ve Nikolai Smirnov adlarındaki iki Sovyet bilim insanı tarafından oluşturulmuştur.

SAT problemi bir NP-tam sınıfı problemidir.

<span class="mw-page-title-main">Andrey Kolmogorov</span> Sovyet matematikçi

Andrey Nikolayeviç Kolmogorov olasılık teorisi, topoloji, sezgisel mantık, türbülans, klasik mekanik, algoritmik bilgi teorisi ve hesaplama karmaşıklığının matematiğine katkıda bulunan Sovyet bir matematikçiydi.

<span class="mw-page-title-main">Menelaus teoremi</span> Bir üçgenin her bir kenar doğrusundan tepe noktası olmayan birer nokta olmak üzere üç noktanın, ancak ve ancak her üç kenar doğrusu üzerinde belirledikleri işaretli oranların çarpımı -1 ise eş doğrusal olduğunu belirten Öklid geometri

İskenderiyeli Menelaus'a izafe edilen Menelaus teoremi düzlemsel geometride üçgenler üzerine bir teoremdir. , ve noktalarından oluşan üçgeninde , ve doğruları üzerinde bulunan ve üçgenin köşelerinden ayrık , ve noktalarının aynı doğru üzerinde olabilmesi ancak ve ancak:

Kriptografide blok şifreleme, blok olarak adlandırılmış sabit uzunluktaki bit grupları üzerine simetrik anahtar ile belirlenmiş bir deterministik algoritmanın uygulanmasıdır. Blok şifreleme birçok kriptografik protokol tasarımının önemli temel bileşenlerindendir ve büyük boyutlu verilerin şifrelemesinde yaygın biçimde kullanılmaktadır.

Matematikte, Green kuramı basit, kapalı bir C eğrisi etrafındaki çizgi integrali ile C eğrisinin sınırlandırdığı D düzlem bölgesi üzerindeki çift katlı integral arasındaki ilişkiyi verir. Teorem adını matematikçi George Green'den almıştır ve daha genel hâli olan Stokes teoreminin iki boyuttaki özel durumudur.

<span class="mw-page-title-main">Thales teoremi</span>

Geometride, Thales teoremi, A, B ve C, AC çizgisinin bir çap olduğu bir daire üzerinde farklı noktalar ise, ∠ABC açısının bir dik açı olduğunu belirtir. Thales teoremi, çevre açı teoreminin özel bir durumudur ve Öklid'in Elemanlar adlı eserinin üçüncü kitabında 31. önermenin bir parçası olarak bahsedilmiş ve kanıtlanmıştır. Genellikle, teoremin keşif için şükran kurbanı olarak bir öküz sunduğu söylenen Miletli Thales'e atfedilir, ancak bazen Pisagor'a da atfedilir.

<span class="mw-page-title-main">De Gua teoremi</span>

Adını Fransız matematikçi Jean Paul de Gua de Malves'den alan De Gua teoremi, Pisagor teoreminin üç boyutlu bir analojisidir.

<span class="mw-page-title-main">Asal sayı teoremi</span> sayılar teorisinde bir teorem

Asal sayı teoremi (PNT), asal sayıların pozitif tam sayılar arasındaki asimptotik dağılımını tanımlar. Bunun meydana gelme hızını tam olarak ölçerek, asal sayıların büyüdükçe daha az yaygın hale geldiği şeklindeki sezgisel fikri resmîleştirir. Teorem, 1896'da Jacques Hadamard ve Charles Jean de la Vallée Poussin tarafından bağımsız olarak Bernhard Riemann'ın ortaya attığı fikirler kullanılarak kanıtlandı.

<span class="mw-page-title-main">Rolle teoremi</span> reel türevlenebilir bir fonksiyonun iki eşit değeri arasındaki durağan noktalar üzerine bir reel analiz teoremi

Kalkülüste, Rolle teoremi veya Rolle lemması temel olarak, iki farklı noktada eşit değerlere sahip herhangi bir gerçel değerli türevlenebilir fonksiyonun, aralarında bir yerde, teğet doğrusunun eğiminin sıfır olduğu en az bir noktaya sahip olması gerektiğini belirtir. Böyle bir nokta, durağan nokta olarak bilinir. Bu nokta, fonksiyonun birinci türevinin sıfır olduğu noktadır. Teorem adını Michel Rolle'den almıştır.