Bir fikir, akış algoritmalarından basit bir şeydir . Muhtemelen en iyi aday çoğunluk algoritmasıdır. Diyelim ki sayıları akışı görüyorsunuz ve bir sayının yarıdan daha fazla olduğunu biliyorsunuz, ancak hangisinin olduğunu bilmiyorsunuz. Bir seferde yalnızca iki sayıyı hatırlayabiliyorsanız, çoğunluk numarasını nasıl bulabilirsiniz ? Cevap Misra-Gries algoritmasıdır.s1,…,sn
Her adım adımında akıştan bir sayısı ve bir frekans sayacı . Başlangıçta akışın ilk sayısına ayarlar ve frekansını 1 olarak başlatırsınız . Daha sonra yeni bir numarası olup olmadığını kontrol . Eğer artış için , aksi azaltmak için . Eğer , ayar için ve geri . Akışın son öğesinden sonra, çoğunluk öğesi varsa, eşit olacaktırf x f s i x = s i x = s i f f + 1 f f - 1 f = 0 x s i f 1 xxfxfsix=six=siff+1ff−1f=0xsif1x .
Başka bir fikir, sıfır bilgi kanıtını gösteren iyi bilinen bir oyundur . Bence Oded Goldreich'e bağlı ve grafik izomorfizmi için sıfır bilgi kanıtına benziyor.
Cevabı kendi kendine yettirmek için oyun burada. Renk körü arkadaşınızı yeşilden kırmızı söyleyebileceğinize ikna etmek istediğinizi varsayalım. Arkadaşınızın iki deste kartı vardır ve bir destenin yeşil, diğerinin kırmızı olduğunu bilir. Onu görmeden aşağıdakileri yapar: 1/2 olasılıkla her desteden bir kart çeker, 1/4 olasılıkla sol desteden iki kart çeker ve 1/4 olasılıkla sağ desteden iki kart çeker . Sonra size kartları gösterir ve aynı renkte olup olmadıklarını sorar. Renk körü değilseniz, elbette her seferinde doğru cevap verebilirsiniz. Renk körü iseniz, olasılık 1/2 ile başarısız olacaksınız. Şimdi oyun 10 kez oynanırsa, renk körlüğü yaparken her seferinde kazanma olasılığı son derece düşüktür.
Kicker, arkadaşınız iki kart desteğinin iki farklı renk olduğunu biliyorsa, ancak hangisinin kırmızı ve hangisinin yeşil olduğunu bilmiyorsa, bunun sonunda hala bilmeyecek olmasıdır! Özet olarak:
- İspatlarda rastgelelik için bir yer vardır.
- Tanıdığınız birini hakkında bilgi vermeden ikna edebilirsiniz.