Biçimsel diller arasında uygun izomorfizmler nelerdir?


9

Bir alfabe üzerindeki resmi dil nın bir alt kümesidir , yani bu alfabe üzerindeki bir kelime kümesidir. Karşılık gelen kümeler altkümeleri olarak geniş ölçüde eşitse, iki biçimsel dil ve eşittir . Karmaşıklık teorisindeki dilleri bir "problem" kavramını resmileştirmek için kullanabiliriz . "Genel olarak" genişleme eşitliğinin kararsız olduğu şikayet edilebilir, ama bunun yanlış yönlendirilebileceğine inanıyorum.LΣΣLLLL

Bir süredir şu problemi düşünüyorum: İki dil ve alfabe üzerinde ve (burada , , veLLΣ={a,b}Σ={c,d}abcdfarklı harflerdir) "tam olarak" aynı "sorunu" tanımlasalar bile asla eşit olamazlar. Ama gerçekten "tam olarak" aynı "problemi tanımlarlarsa izomorfik olmalıdırlar. Bilmek istediğim, karmaşıklık teorisine uygun olası izomorfizm kavramları. Başlangıçta, sonlu durumlu bir makine gibi hesaplamalı olarak zayıf bir "çevirmenin" izin verilen izomorfizmleri tanımlamak için kullanılabileceğini düşündüm, ama bu zaten eşdeğer mantıksal formüller arasındaki önemsiz sözdizimsel çeviriler için yıkılıyor gibi görünüyor. (Örneğin , doğrusal mantıktaki ikili sözdizimsel tanımıyla bu tabloya A bakın .)

Bugün şu fikrim vardı: Belirli bir "karar problemine" karşılık gelen dilin tanımının genellikle iki bölümü vardır: (1) İzin verilen problem örneklerinin sonlu sembol dizeleri olarak kodlanması ve (2) " dile ait sorun örnekleri kabul edildi. Belirli bir sonlu sembol dizisinin izin verilen bir problem örneğinin kodlaması olup olmadığını kontrol etmek, zaten bir sonlu durum makinesinden hesaplamalı olarak daha güçlü bir makine gerektiriyorsa, bu daha güçlü makine izin verilen izomorfizmlerin tanımlanması için de kullanılmalıdır.

Sorular: Bu akıl yürütme hattımın sorunumu "çözme" şansı var mı? Sorunum zaten çözüldü mü, sadece doğru referansları okumam gerekiyor mu? Sorunumun kendisi bir anlam ifade ediyor mu, yoksa bu, genişlemiş eşitliğin kararsızlığından şikayet etmek kadar yanlış yönlendirilmiş mi?


Düzenleme (henüz bir yanıt değil) "(1) İzin verilen sorun örneklerinin sonlu sembol dizeleri olarak kodlanmasının" normalleştirilmiş bir girişin (gizli) varsayımını içerdiğini fark ettim. Bu varsayım olmadan, iki farklı sonlu dize aynı problem örneğine karşılık gelebilir. Belirli bir sonlu dizenin geçerli olup olmadığını denetlemek yerine, denetleme normalleştirilmiş bir girdi oluşturabilir (ve geçersiz dizeleri özel bir dizeyle eşleyebilir).

Bu ayarın avantajı, kontrol / normalleştirmeyi yapan makinenin zaten sınırlı dizeleri diğer sonlu dizelere dönüştürmek için araçlarla donatılmış olmasıdır. Bu görev için izin verilen makine (karmaşıklık sınıfı) sorun tanımının bir parçası olabilir ve (iso) morfizmleri aynı makineyi (karmaşıklık sınıfı) kullanır. (Raphael'in yorumundan "çok-zamanlı bir-çoklu indirimler" önerisi gerçekten de problemleri için bir olasılık olacaktır .)P

Bir dezavantajı, bu şartname yönteminin sadece deterministik makineler için uygun olabilmesidir. Deterministik olmayan makineler, iki giriş dizesinin aynı sorun örneğine karşılık gelip gelmediğini belirlemek / karar vermek için daha esnek yollar gerektirebilir.


1
Tüm sonsuz diller (sonlu alfabelerin üzerinde) izomorfiktir (sayılabilir oldukları için). Ne istediğinizi geliştirmeniz gerekiyor. Ayrıca, hangi önlemle iki sorunun "aynı" olduğunu söylüyorsunuz? Muhtemelen, poli-zaman çok-bir indirimler istediğiniz gibi bir haritalama sağlar, ancak bu harita birbiriyle "farklı" (ancak benzer şekilde zor) problemleri eşleştirir.
Raphael

@Raphael "İstediğinizi düzeltmeniz gerekiyor" yorumuyla biraz kafam karıştı. Bu soru tam olarak hangi izomorfizm kavramını kullanmak isteyebileceğim ile ilgilidir. Gerçekten ne istediğini bilmek bazen zor olabilir! "Tam olarak" aynı açıklayan diller hakkında konuşurken soruya geçişi için "sorunu," Ben belirlerken temelde her ihtimale düşünerek oldu ile ve ile yapacak ve eşittir. Bu akıl yürütmeye devam etmek, başlangıçta beni sonlu durum makinelerini "çevirmenler" olarak görmeye itti. acbdLL
Thomas Klimpel

@ Raphael Sanırım çoğu sorun için, çoklu zaman çoklu bir azaltma, aklımdaki izomorfizmler için hesaplama açısından çok güçlü. İzomorfizmin benim için çözümü hesaplamasını veya bir grafik teorik problemini mantıksal tatmin problemine indirmesini istemiyorum. Sadece aynı sorun örneğinin iki farklı ama aslında eşdeğer kodlamasını tanımlamak istiyorum. Bu izomorfizm kavramının, belirli (teorik) grafik teorik problemleri bazı (kodlama) mantıksal tatmin problemleriyle de tanımlaması gerekiyorsa sorunum yok.
Thomas Klimpel

kabaca, bu amaçla indirimlerle ilişkili karmaşıklık kullanılmaktadır. P süresinden daha az güçlü bir azalma, örneğin kütük alanı azaltmalarını,O(nc)vb.
vzn

Yanıtlar:


6

Sorunum zaten çözüldü mü, sadece doğru referansları okumam gerekiyor mu?

Soyut dil ailesi teorisi önemlidir. Örneğin, sonlu durum transdüserleri tarafından tanımlanan morfizmler koni ailesine yol açar . Eilenberg en kısa ICM konuşma 1970'den güzel, bu çerçeveyi açıklıyor dan 11 "dillerin ailelerin Kapatma özelliklerini" ayrıca bkz bölüm (1 ed.) Otomata Teorisi, Diller ve Hesaplamaya Giriş Ancak 1979 den J. Hopcroft ve J. Ullman tarafından , yalnızca çerçevesiz diller bu çerçeveye uyar 1 . Sonunda, 1985'ten J. Berstel ve D. Perrin'in kodlar teorisi kitabı, sorunum için makul çözümler bulmama yardımcı oldu. Kodlar ve Otomatlar2009'dan J. Berstel, D. Perrin ve C. Reutenauer , bu kitabın daha geniş kapsamlı bir revizyonudur.

Bu akıl yürütme hattımın sorunumu "çözme" şansı var mı? Sorunumun kendisi bir anlam ifade ediyor mu, yoksa bu kadar yanlış yönlendirilmiş mi?

"Bir problem kavramını resmileştirmek" için diller arasında izomorfizmlerin modellenmesi için tek bir doğru kategori olduğu varsayımı yanlış yönlendirilmiştir. Biçimsel diller bağlamında ilginç olabilecek birçok farklı kategori vardır.

Toplam , kısmi ve ilişkisel olarak adlandırılacak olan bir çok azaltma ile ilgili üç ilginç kategori . Kategorilerin nesneleri çifttir(Σ,L) sonlu bir alfabe Σ ve bir dil LΣ kelimelerin üstü Σ. İçin toplam kaynak nesne arasında, Morfizm(Σ,L) ve hedef nesne (Σ,L) toplam fonksiyonlar f:ΣΣ ile L=f1(L). İçin kısmi , morfizma kısmi fonksiyonlarf:ΣΣ ile L=f1(L), burada iki kısmi işlev f, g eşit olduğu düşünülürse (biçimsel olarak) f(x)=g(x) hepsi için xL. İçin ilişkisel , morfizma ilişkilerdirRΣ×Σ ile L=R1(L)ve aynı kaynak ile hedef arasındaki herhangi bir iki biçimin eşit olduğu düşünülür. İzin verilen işlevler veya ilişkiler kümesi, ilginç izomorfizmlere sahip kategoriler elde etmek için çeşitli basit "çevirmenlerle" sınırlandırılabilir.

  • Monoid homomorfizmleri Σ için Σçok temel bir toplam kategori verir. Bu kategorinin izomorfizmaları temelde sadeceΣ ve Σ. Makul bir dil ailesi bu izomorfizmlere daha iyi saygı göstermelidir, yani ters homomorfizmalar altında kapatılmalıdır.
  • Deterministik log-space Turing makine çevirmenleri tarafından tanımlanan kısmi fonksiyonlar oldukça doğal bir kısmi kategori verir. Birçok önemsiz sözdizimsel dönüşüm gerçekleştirebilir (atomlara negatifleri taşımak için De Morgan yasalarını uygulamak gibi), fonksiyonel sonlu durum transdüserleri 1 tarafından tanımlanan morfizmi içerir ve sıralayabilir. Yine de tamamen ilgisiz iki dili izomorfik olarak tanımlamayacaktır, çünkü iki morfizmin kompozisyonunun bir kimlik morfizmi ile eşitliği, her iki yönde çok sayıda azalmanın varlığından çok daha güçlü bir gereksinimdir.
  • Belirsiz log-uzay Turing makine çevirmenleri tarafından tanımlanan ilişkiler ilginç bir ilişkisel kategori verir. SAT, bu kategoride HORNSAT için izomorfiktir, ancak TAUTOLOGY veya başka bir ortak NP tam probleminin HORNSAT için izomorfik olup olmadığı açık bir sorudur.

İki dil L ve L alfabelerin üzerinde Σ={a,b} ve Σ={c,d} (nerede a, b, c ve dfarklı harflerdir) "tam olarak" aynı "sorunu" tanımlasalar bile asla eşit olamazlar. Ama gerçekten "tam olarak" aynı "problemi tanımlarlarsa izomorfik olmalıdırlar.

Yukarıda açıklanan çok temel toplam kategori bu sorunu çözmektedir.

"Tam olarak aynı", "en pratik amaçlar için neredeyse aynı" ile değiştirilirse sorun daha ilginç hale gelir: L üzerinde dil olmak Σ={U,C,A,G} ve bırak L dil olmak Σ={0,1} şuradan alınmıştır L oyuncu değişikliği ile U00, C01, A10, ve G11. Herhangi bir toplam kategoride,L ve L izomorfik değil L=Σ. Aynısı kısmi kategoriler için de geçerlidir;f, g eşit olduğu düşünülürse (biçimsel olarak) f(x)=g(x) hepsi için xL"tanımından çıkarıldı.

Yukarıda açıklanan oldukça doğal kısmi kategori yapmak için yeterlidirL ve Lizomorf. Onları izomorfik yapan daha temel (yani daha kısıtlayıcı) bir kategoriye sahip olmak güzel olurdu. Aşağıdaki (art arda daha kısıtlayıcı) kategoriler benim için makul görünüyor:

  • Kesin sonlu durum dönüştürücüler ( 2) tarafından gerçekleştirilen kısmi fonksiyonlar, burada tek kabul eden durum başlangıç ​​durumudur. Bu kısmi kategorinin izomorfizmi, tanınabilir değişken uzunluk kodları arasındaki (bir alt kümesi) bağıntılardır .
  • Tek kabul eden durumun başlangıç ​​durumu olduğu deterministik sonlu durum transdüserleri tarafından gerçekleştirilen kısmi fonksiyonlar. Bu kısmi kategorinin izomorfizmaları, önek kodları arasındaki (bir alt kümesi) iki yönlüdür .
  • Kısmi fonksiyonlar, tek kabul eden durumun başlangıç ​​durum olduğu hem ileri hem de geri deterministik bir dönüştürücü tarafından eşzamanlı olarak gerçekleştirilir. Bu kısmi kategorinin izomorfizmaları, bifix kodları arasındaki iki yönlüdür .
  • Kısmi fonksiyonların, izomorfizmlerin, blok kodları arasındaki bağlanmalar (bir alt kümesi) olacağı şekilde daha fazla kısıtlanması da mantıklı olabilir.

Karmaşıklık teorisindeki dilleri bir "problem" kavramını resmileştirmek için kullanabiliriz.

Kategori teorisini öğrenmeden önce bile, bir "sorun" kavramını resmileştirmek için "daha sadık" yollar olup olmadığını merak ettim. Kategori teorisine aşina olduktan sonra, bazen olası çözümler bulmaya çalıştım, ancak her zaman hızlı bir şekilde ilk tökezleme bloğundan vazgeçtim (çünkü hiç kimse umursamıyor). Yuri Gurevich'in bazı ilgili soruları çözdüğünü biliyorum , ancak çözümleri pratik olarak uygulanabilirken, daha çok güzel ve soyut, pratik uygulanabilirlikten bağımsız bir şey arıyordum.

Son üç hafta için boş zamanlarımın çoğu nihayet bu sorun üzerinde ilerleme kaydetti. Çoğu zaman aklımdaki olası çözümlerde sinir bozucu sorunlar bulmak için zaman harcamaktaydı. İlerleme hissi, eski kitap ve makaleleri okumaktan ve dönüştürücü ve rasyonel setlerle ilgili birçok temel kavram ve gerçeği öğrenmekten doğmuştur. Sonunda, bir önek kodu ve bifix kodu (eski adıyla Berstel'in kitabında biprefix kodu ) kavramlarını öğrendim , bu da yukarıda açıklanan makul 3 kategoriyi bulmamı sağladı .

Daha belirgin kategorilerdeki bazı sorunları görmeden bu (kodla ilgili) kategorileri takdir etmek zor olabilir. Genel bir sorun, kompozisyon altında kapanmanın, hoş bir şekilde kısıtlanmış bir kısmi fonksiyon sınıfı tanımlamayı zorlaştırabilmesidir. Başka bir konu, sayının rakamları düşük-endian düzeninde verilmişse, bir eklemenin (veya bir sabitle çarpmanın) "hesaplaması kolay bir işlev" olması ile ilgilidir, ancak rakamlar büyük- endian düzeni.


1 İşlevsel bir sonlu durum dönüştürücüsü, kısmi bir işlevi gerçekleştiren belirsiz olmayan bir sonlu durum dönüştürücüsüdür. Bu kısmi fonksiyonlar deterministik sonlu durum transdüserleri tarafından gerçekleştirilemez. Deterministik bimachines ile gerçekleştirilebilirler , ancak bunlar gerekebilirO(n) giriş yapmak istiyorlarsa, giriş üzerinde ileri ve geri tarama yapar O(1) Uzay.

2 Belirsiz bir sonlu durum dönüştürücüsü, her bir giriş için en fazla bir kabul yoluna sahip, belirsiz olmayan bir sonlu durum dönüştürücüsüdür. Kısmi bir fonksiyon gerçekleştirir, dolayısıyla aynı zamanda fonksiyonel bir sonlu durum transdüseridir. Belirli bir sonlu durum dönüştürücüsünün kesin olup olmadığı karar verilebilir.

3 Yukarıda verilen toplamın ve ilişkisel kategorilerin gerçekten ne kadar makul olduğundan emin değilim . Kısmi kategoriye basit alternatifler göstermek istedim . Daha fazla alternatifin ortaya konması kolaydır, örneğin , morfizmlerin ilişki olduğu ortak ilişkiselRΣ×Σ ile L=R1(L)R1(ΣL)ve aynı kaynak ile hedef arasındaki herhangi bir iki biçimin eşit olduğu düşünülür.

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.