Birleşik mantık terimleri her zaman daha mı büyük?


9

Bu nedenle , lambda hesabı terimlerini SK birleştiricileri kullanarak birleşik mantığa dönüştüren bir algoritma vardır . Boyut olarak patlayan şeyler üretir . Bu patlama hakkında daha fazla bilgi edinmek istiyorum. Ancak daha iyi bir algoritma düşünemiyorum. İşlevsel dillerin pratik olarak birleştiricilere derlendiğini duydum, bu yüzden daha iyi bir algoritma var gibi görünüyor. David Turner'ın konuyla ilgili yazısına baktım ve temelde birkaç optimizasyon uyguladığını ve "önemli bir iyileşme" yarattıklarını söyledi.

"Önemli gelişme", boyutun sadece polinom artışına düştüğü anlamına mı geliyor? Lambda terimlerini yalnızca bir polinom (veya daha az) artışla birleştirici mantığa dönüştürmenin bilinen bir yolu var mı? Böyle bir algoritma varsa pratik mi?


Kağıt 1979'dan
kalmadır.

Beni onlara yönlendirebilir misin?
Jake

alıntı yaptığınız araştırma daha teorik "prensip kanıtı" dır ... sorunuzun odak noktası gibi görünen "boyutta polinom artışı" hakkındaki kavram / bölümden bahsederseniz daha iyi olur ... kuramsal veya uygulamalı tarafta kodun mantığa / devrelere dönüştürülmesine ilişkin genel teori mi, yoksa verimli bir şekilde yapma teorisi mi, yoksa her ikisi mi? soru farklı yönleriyle çok
kesişiyor

1) Bunu sohbete aktarmanın bir yolu var mı? Bunu anlayamıyorum. 2) Polinom boyutundaki artışla ilgili bir bölüm yoktur ve bu benim sorunumdur. Aslında, boyuttaki artışın ne kadar olduğu hakkında önemli bir şey söylemiyor (ne de bu tür referanslar bulamıyorum).
Jake

yorumlar, gönderilen ayrı yorumlardan sonra sohbet etmek için içe aktarılabilir. sohbet başlatmak için gerekli değildir. polinom artışı yeniden bu araştırma hattı hakkında bir "söylenti" veya "folklor" kavramı olabilir, emin değilim. ama " büyüklükte patlayan şeyler üretir" gibi şeyleri nereden duydunuz ; daha spesifik vb. olmak yararlı olur ...
vzn

Yanıtlar:


4

bu konuda uzman değil, ama burada soru ile yakından ilgili görünen iki tarihsel makale var ve muhtemelen yarı aktif bir araştırma alanı. Turner, SK birleştiricilerine indirgenebilecek bir dizi birleştirici önerdi. bir sonraki makale Turner birleştiricilerinin SK birleştiricilerine bile indirgenmemiş bile olsa üstel patlamaya yol açtığını (ve muhtemelen SK terimlerindeki azalmanın daha da büyük olacağını) öne sürüyor. ancak 2. makalede Turner birleştiricilerine dayanan etkin bir O (n log n) uzay algoritması olduğu belirtiliyor. (belki de tam olarak kanıtlanmayan / kanıtlanmayan ve dolayısıyla varsayım olarak kabul edilen polinom verimliliği ile ilgili iddialarda bulunulduğu anlaşılmaktadır ...

  • Λ-hesabının Verimli Uygulaması nedir? / Frandsen, Sturtivant (1991) (bkz. S.18)

    Ayrıca, Turner Combinators veya Hughes Super-birleştiricilerine dayalı uygulamaların karmaşıklıklarına , yani üstel bir alt sınıra sahip olduğunu gösteriyoruz. Bazı uygulamaların dolaylı olarak bu karmaşıklığa sahip olduğu iddia edilmesine rağmen , polinom karmaşıklığının herhangi bir uygulamasının, var olup olmadığı açıktır .2Ω(ν)νO(1)

  • Turner Combinators 'nun O (n log n) space / Noshita (1985) çevirisi

    Turner Kombinatörlerini temsil etmek için, n uzunluğundaki lambda ifadelerini çevirmek için en kötü durumda sadece O (n log n) boşluğuna ihtiyaç duyan pratik bir yöntem sunulmuştur.


1
mükemmel! Bu makaleyi, bu iki makaleyi aradıktan sonra da buldum. sciencedirect.com/science/article/pii/002001908790161X Teşekkürler!
Jake
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.