Kategori Teorisinin Sınırları ve Kolimitlerinin günlük problemlerde kullanımları nelerdir?


9

Limit ve Colimits kavramlarını günlük yaşamdaki problemleri modellemede nasıl kullanabileceğimizi bilmek isterim? Herkes (Yazılım) mühendislik örnekleri sağlayabilir mi? Ya da bu kavramları ne tür modelleme problemleri için sezgisel olarak tanımlayabiliriz? Teşekkür ederim.


1
Bu kütüphanenin kullanıldığı her yerde, hackage.haskell.org/package/data-category-0.5.1/docs/…
Chad Brewbaker

3
Ne yazık ki hiçbir yerde, afaict ...
Sjoerd Visscher

1
Cs mantık el kitabında kategori teorisi ile ilgili bölüme bakınız.
Kaveh

Yanıtlar:


7

Biraz ilişki al R,0bir0xbir1, R,1bir1xbir2. İzin Vermekπ1:R,0bir1, π0:R,1bir1 ilişkileri olan alanlarla projeksiyonlar olabilir R,0, R,1. Sonra geri çekilmesiπ0, π1 birleşimi R,0 ve R,1 SQL anlamında.


5

Buna güzel bir örnek, Tate ve arkadaşlarının Kanıtlardan Derleyici Optimizasyonları Oluşturmasıdır . Okların (IIRC) ikameleri olduğu kategorilerde genelleşmiş sendikalar ve kavşaklar olarak geri çekilme ve itme kullanır.

Ross Tate (kağıt web sayfasında), kategori teorisinin sağladığı soyutlama olmadan ayrıntıların ezici olduğunu iddia ediyor. Şahsen, makalelerinde (6) ve (7) şemalarında "müstehcen kanıt" (böyle bir iddiaya dair herhangi bir kanıt varsa) sunmak istiyorum - diyagramatik formda yeterince karmaşık görünüyorlar. Yorumlarını yerinde belirtmeme izin verin.

Bazıları bize kanıt genelleme tekniğimizi neden soyutladığımızı ve kategori teorisini neden soyutlama olarak kullandığımızı sordu. Bununla birlikte, aslında soyut algoritmayı kategori teorisini kullanarak tasarladık ve daha sonra bunu somut problemimizi nasıl çözeceğimizi anlamak için kullandık. Somut bir sorunla karşılaştık, ayrıntılar ve değişkenler bunalmıştı ve aklınıza gelebilecek herhangi bir çözüm keyfi görünüyordu. Yansıtmak ve basitleştirmek için sorumuzu kategorik olarak ifade etmeye karar verdik. Bu, kaynakların ve lavaboların bir şemasına yol açar, bu yüzden işleri bir araya getirmek için sadece pushouts ve geri çekmeler kullandık. En büyük zorluk, mevcut bazı standart kavramları kullanmak yerine, tamamlamalarla ortaya çıkmaktı. Kategorik formülasyonun belirtilmesi kolay ve bununla ilgili bir neden vardı. Daha sonra soyut süreçleri somutlaştırdık,

Aslında oldukça verimli olmak için sıkıştığımızda kategori teorisine soyutlama sürecini bulduk. Sadece somut sorunumuzu çözmekle kalmıyor, aynı zamanda kendi sorunumuzu daha iyi anlıyoruz ve diğer uygulamalara kolayca uyarlanabilen soyut bir çözümle sonuçlanıyoruz. Bu nedenle, deneyimlerimiz, kategori teorisinin, resmileştirme için bir çerçeve olarak yararlı olmanın yanı sıra, gerçek algoritmaların oluşturulmasında yararlı olabileceğini düşündürmektedir. Olumlu ya da olumsuz diğer benzer deneyimleri bilmek isteriz.



4

Geniş bir uygulama alanı grafik dönüşümlerdedir (modele dayalı mühendislikte uygulanır). İki alakalı makale (Google Akademik’e bağlantılar ile birlikte verilmiştir):

DÜZENLEME: yine, temel fikir (bir kısmı) itici bir tutkal ile bir birlik olarak hareket olmasıdır. Bu, grafikler için "yeniden yazma kurallarının" tanımlanmasına izin verir - sol tarafı grafiğe eşleştirirsiniz ve ardından sağ tarafı grafiğin (geri kalanına) karşılık gelen bir şekilde yapıştırırsınız. Korkarım detay ekleyemiyorum çünkü sezgiden daha fazlasını elde etmedim.


Dave Clarke'ın bu cevabında daha iyi bir açıklama var: cstheory.stackexchange.com/a/947/989
Blaisorblade
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.