Asallık Denetleyicisi
Bir sayının asal olup olmadığını test edin ve tam olarak nedenini görün: küçük ve orta sayılar için √n'ye kadar gerçek deneme bölümü ve kriptografi boyutunda sayılar için gerçek bir Miller-Rabin izlenecek yol.
Sonuç
Asallık denetleyicisi size bir tam sayının asal olup olmadığını söyler ve çevrimiçi hesap makinelerinin çoğunun aksine, önbelleğe alınmış bir arama tablosunu değil, bunu kanıtlayan gerçek algoritmayı gösterir. Pozitif veya negatif, küçük veya çok büyük herhangi bir tamsayıyı yazın; araç, boyutuna göre hangi gerçek algoritmanın çalıştırılacağına karar verir.
10¹²'nin (bir trilyon) altındaki sayılar için gerçek bir deneme bölme işlemi gerçekleştirir: 2'den başlayarak, √n tabanına kadar her tamsayı adayını olası bir bölen olarak dener, eşit olarak böldüğü anı durdurur (bileşik) veya √n'ye kadar her aday kontrol edildikten sonra (asal) hiçbirinin yapmadığını doğrular. Büyük aday sayıları için gösterilen izleme, ekranda kaç tanesinin atlandığına dair dürüst bir notla birlikte denenen ilk ~18 artı sonuncuyla sınırlıdır - ancak her bir aday hala kod tarafından kontrol edilir, hesaplamada hiçbiri atlanmaz.
Kriptografide kullanılan boyut aralığı olan bu eşik veya üzerindeki sayılar için deneme bölümü çok uzun sürecektir, bu nedenle araç, 13 temel tanıktan (2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41) oluşan sabit, deterministik bir setle Miller-Rabin asallık testine geçer. Bu kesin tanık kümesi iyi bilinen bir sonuçtur: hesaplamalı doğrulamayla belirlenen bir sınır olan 3,317,044,064,679,887,385,961,981'in (yaklaşık 3,3×10²⁴) altındaki herhangi bir n için yanlış pozitif değeri yoktur (bkz. Sorenson ve Webster, 2015 ve ait olduğu geniş çapta çoğaltılmış deterministik tanık tablosu). Bu sınırın üzerinde aynı test hala devam ediyor, ancak araç size garantinin matematiksel bir kesinlikten ziyade son derece güçlü bir olasılıksal garantiye dönüştüğünü dürüstçe söylüyor.
Miller-Rabin izlemesi, d tek ile n − 1 = 2ˢ × d yazar, ardından gerçek BigInt modüler üstelleştirmesi üzerinden yürür - kareleme ve çarpma, her adımda modulo n'yi azaltır, böylece sayılar asla patlamaz - ilk tanık için parça parça ve her tanığın kararını rapor eder, buna sayının asal olmadığı ortaya çıkarsa hangi tanığın bileşikliği kanıtladığı da dahildir. Her şey tarayıcınızda yerel olarak çalışır: sunucu yok, harici API yok, cihazınızdan hiçbir veri çıkmıyor.