Problem öğretme hesaplanabilirliği


22

Hesaplanabilir fonksiyonlar kavramını öğretmekte zorlanıyorum. Neden Hilbert / Ackermann / Godel / Turing / Church / ... gibi araştırmacıların 'hesaplanabilirlik' kavramını icat ettiği fikrini geliştirmeye çalıştım. Öğrenciler derhal şunları söyledi: "Hesaplanabilirlik ne anlama geliyor?" ve onlara Turing makinelerini öğretmediğim sürece cevap veremem ve sonra "bir Turing makinesi hesaplarsa bir fonksiyonun hesaplanması" cevabını verebilirim.

Yani,

Turing makinelerine, λ hesaplarına veya benzer hesaplama modellerine başvurmayı gerektirmeyen bir hesaplanabilirlik tanımı var mı? Sezgisel bir tanım bile yeterli olacaktır.


10
"Bir bilgisayarın hesaplayabileceği her işlev"? Genellikle, öğrencilerin bildiği gibi programlama dillerine başvururum. Algoritmanın sezgisel bir tanımı olarak “bir işlevi hesaplamak için herhangi bir tarif” için gidiyorum.
Michaël Cadilhac

5
Kesinli bir dinamik sistemin sonlu sayıda adımda evrimini yöneten sınırlı bir kurallar kümesi ile çözülebiliyorsa, bir problem hesaplanabilir.
Muhammed El-Türkistan

1
Ayrıca, Hilbert'in onuncu problemini öğrencilere neden çözülemez olduğunu ve çözülemezlik kanıtının gerekli olduğunu, diğerlerinin yanı sıra matematikte hesaplanabilirlik kavramını biçimlendirdiğini açıklamak için kullanabilirsiniz.
Muhammed El-Türkistan

Bir başka soru: Kilise-Turing Tezi, bir fonksiyonun bazı Turing makineleri tarafından hesaplanabildiğini ve ancak başka herhangi bir “makul ve genel” hesaplama modelinin bir makinesi tarafından hesaplanabildiği takdirde hesaplanabileceğini belirtir [Goldreich, 2008]. Peki, modelden bağımsız bir hesaplanabilirlik kavramı düşünülebilir mi?
MS Dousti

Yanıtlar:


37

75 yıl önce etrafta bilgisayar yoktu. Bu yüzden , bir bilgisayarın matematiksel fikrini çok dikkatli bir şekilde açıklamak zorunda kaldık .

Bugün herkes bir bilgisayarın ne olduğunu biliyor ve muhtemelen çoğu zaman bir tane taşıyor. Bu, öğretimde çok başarılı bir şekilde kullanılabilir, çünkü bir makinenin modası geçmiş fikrini bantla atlayabilirsiniz. Yani kim kaset kullanıyor? (Biliyorum, biliyorum, hakarete uğradığını hissediyorsun ve Turing harika bir adamdı ve hepsi seninle aynı fikirdeyim).

Sadece sınıfa girip sorabilirsiniz: iPhone'unuzun hesaplayamadığı bir şey var mı? Bu hemen size sınırlı kaynaklar hakkında sorular sorar. Öyleyse söyleyin: makinenizin aslında sınırsız belleği olduğunu varsayalım, hesaplayamadığı bir şey var mı? Ve biraz daha idealleşiyorsunuz ve sayı-teorik işlevlere olan ilginizi kısıtlıyorsunuz (çünkü şu anda Facebook ile ilgilenmiyorsunuz). Bilgisayarların nasıl çalıştığını biraz açıklamanız gerekecek (yorumlarda belirtildiği gibi, öğrenciler bir programlama dili biliyorlarsa iyidir, çünkü bunu donanım tanımlamak yerine kullanabilirsiniz), ancak bundan sonra hesaplanabilirliğin tüm klasik argümanlarını kullanabilirsiniz. sonuçları türetme teorisi. Öğrencilerin bir makinenin zihinsel resminin iPhone olması önemli değil. Aslında, önemli olan:iPhone'larının bazı şeyleri yapamayacağını bilmeleri için daha uygun .


2
Bu tartışmayı çok seviyorum, çünkü somut (iPhone) soyuttan geçiyor.
Suresh Venkat

2
İşte ilginç bir bulmaca: Haskell'de smn ve utm teoremleri nelerdir?
Andrej Bauer

18
"75 yıl önce etrafta bilgisayar yoktu." Bu sadece yanlıştır. 75 yıl önce etrafta birçok bilgisayar vardı. Onlar insanlardı, çoğunlukla kadınlardı; ileri matematik derecelerine, birkaç temel mekanik hesaplama aracına (makineler ve slayt kuralları eklemek gibi) ve çok ve çok sayıda kağıda sahiptiler. Bu bilgisayarlar, 2. Dünya Savaşı sırasında (Bombay ve Bombayla birlikte) hem Manhattan Projesi hem de Bletchley Parkı'nın omurgasıydı. Bu Turing'in modellediği bilgi işlem ortamı: kalem ve kağıda sahip insanlar.
Jeffε

10
@Jeffe: Hadi, ne demek istediğimi biliyorsun.
Andrej Bauer

8
@JeffE: Hipotezinizi test edebiliriz. Meslektaşlarına git ve onlardan "kısa etekli bir bilgisayar" resmi çizmelerini isteyin. Lütfen bir insanın kaç tane çektiğini rapor edin.
Andrej Bauer

12

"Girdiden çıktıya geçiş için 'etkili bir prosedür' varsa, bir işlev hesaplanabilir." Bu konuyu tanıtırken, geçmişte ikinci dereceden denklemleri çözme konusunda (öğrencilerinin) etkili bir prosedürleri olduğunu, ancak derece 5 veya daha fazla olan denklemleri çözmede bunlara sahip olmadıklarını belirttim. Bu, birinin 'etkili prosedürü' nasıl biçimselleştireceğine dair bir tartışmaya girebilir, ancak bu tartışma, olmasını istediğiniz bir şeydir, bu yüzden bunun bir böcek yerine bir özellik olduğunu düşünüyorum.


3
Nitpicking: Abel – Ruffini teoremi , beşinci veya daha yüksek derecedeki polinom denklemlerine yönelik genel bir cebirsel çözüm (yani, radikallerde çözüm) olmadığını belirtir. Bununla birlikte, Quintic denklemlerinin kapalı formlu çözümlerini elde etmek için Bring radikal gibi yöntemler vardır .
MS Dousti

Nitpicking aslında doğrudur. Hesaplanabilirliği tartışırken, "izin verilen işlemler" gibi şeylerden bahsetmek istersiniz ve polinomlara yönelik çözümler, baktığınız daha karmaşık hale gelen şeylerden biridir. Ancak bir giriş için, "etkili prosedür" kelimelerinin ve ikinci dereceden formülün söz edilmesinin harika bir başlangıç ​​noktası olduğunu düşünüyorum. Tamamen doğru değiller ama sezgi oldukça haklı, IMO.
Peter Boothe

8

Belki de asıl nokta, bu modellerin hepsinin hesaplanabilirlik kavramının ne olduğunu yakalamayı amaçlamasıdır. Hepsinin eşdeğer olması, yakalamaya çalıştıkları nosyonun sağlam olduğu anlamına gelir. Dolayısıyla, bu ikileminizden kaçmasa da, bu sağlamlık "bir hesaplayan Turing makinesi varsa, bir fonksiyonun hesaplanabilir olduğu" fikrine güvenir.


6

"Hiçbir bilgisayarın inandırıcı bir şekilde cevaplayamayacağı bir soru var mı?" Diye sormaya başladım. ve tartışmayı “ormandaki bir ağaç düşerse ses çıkarır mı?” gibi felsefi sorulara yöneltin. ya da "öbür dünya var mı?" İnsan dilinin paradokslar veya matematiksel olarak ifade edilemeyen kavramları içeren soruları evet / hayır olarak ifade edebileceği konusunda hızlıca bir fikir birliğine varıyoruz ve dolayısıyla evet, hesaplanamayan sorular var.

Daha sonra söylemsel olarak, bilgisayarda temsil edilebilecek kavramlarla ilgili hesaplanabilir sorular olup olmadığını , örneğin tamsayılar ve grafikler olup olmadığını soruyorum . Evet, bir örnek, programın tanımını incelemek ve herhangi bir sonsuz döngüye sahip olup olmadığını söylemekle ilgili olan ünlü durma problemidir. Sezgisel olarak, sonsuz döngülerin kara delikler gibi olduğu ve sonsuz bir döngü gözlemleyen herhangi bir programın sonsuz bir döngüde sıkışıp kalabileceği ortaya çıktı. Bu nedenle bu soruna cevap veren herhangi bir prosedür sonsuza kadar çalışabilir, bu nedenle "algoritma" tanımı ile hiçbir algoritma durma sorununa cevap veremez.

Sonra Turing makinelerinde ispatlara geri dönüyorum.


0

Eh, bir fonksiyon belirli bir düzen tarafından oluşturulan veya üretilen girdileri kabul ederse hesaplanabilir. Özel bir düzen, tüm girişlerin bir ilişkisi olması gerektiği anlamına gelir, belirli bir giriş önceki veya sonraki giriş tarafından üretilebilir. Girdilerde bu tür bir sıra yoksa, kabul edebilecek bir model veya işlev geliştirme olasılığı yoktur. Söylemek istediğim bir şey daha söylemek gerekirse, bir makine ve insan arasında temel bir fark var. Sıralı olmayan girişler için bir makine oluşturulamadı ancak insanlar var. Ayrıca bu, gerçek insan davranışı robotları yapmanın büyük kesintisidir.


Soru hesaplanabilirlik öğretimi ile ilgili. Cevabınızı, bu soruyu cevaplayan materyallerle sınırlandırmanız iyi olur. OP'nin lisans eğitimi verdiğini unutmayın, bu nedenle kişisel görüşleriniz (son üç ifadeniz gibi) kapsamda olmayabilir.
Vijay D
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.