SCIENZA!1!!
...Vi racconto
applied category theory
teoria delle categorie
La Matematica è fatta di diverse aree distinte:
- Algebra
- Geometria
- Logica
- ...
La teoria delle categorie studia le teorie matematiche come un oggetto matematico a sé stante.
Ci sono omomorfismi (di teorie) con cui confrontarne due distinte
- Una “categoria” è un agglomerato di oggetti matematici che
condividono delle proprietà strutturali.
wat
Gli oggetti matematici di un dato tipo sono punti in una grande scatola, collegati da frecce componibili (gli omomorfismi)
composizione
- la composizione è associativa: f . (g . h) = (f . g) . h
- esiste un omomorfismo identico: f . 1 = 1 . f = f
- Ogni oggetto nella pratica matematica fa parte di una qualche categoria
- insiemi, gruppi, anelli, spazi vettoriali, ... e ogni insieme con operazioni
- spazi topologici, spazi puntati, gruppi abeliani topologici...
- varietà differenziali, spazi di Banach, spazi di misura...
- numeri ordinali, linguaggi formali, ogni modello di teoria degli insiemi...
Eilenberg, S., and Mac Lane S., "General theory of natural equivalences." (1945)
- "CT is one of the most sterile intellectual pursuit" (M. Reid)
- "category theory is (abstract) nonsense" (N. Steenrod)
- io non sono razzista, ma... (Anonimo)
- Vi fareste operare da un bisturi che non sia sterile?
- CT è lo studio delle proprietà della Matematica.
- Alexander Grothendieck, Paul Cohen, Daniel Quillen, Maxim Kontsevich, ...
La teoria delle categorie si usa per...
...lungo da raccontare. Specie a dei non matematici.
Fin dall'inizio però si è tentato di usarla per fare matematica applicata: se si sa la CT, essa
- descrive perfettamente strutture modulari e composizionali;
- astrae pattern ricorrenti da una massa apparentemente informe di manifestazioni materiali.
Entrambe caratteristiche desiderabili per uno scienziato
Caveat: le sezioni successive hanno la seguente struttura:
- "Teoria delle categorie e X"
- Un X non è altro che una categoria tale che Y
- Allora studiamo le categorie tali che Y.
Gli esperti di X troveranno le "definizioni" della loro disciplina riduttive, pressapochiste e ingenue. E si offenderanno.
E' esattamente quel che voglio.
teoria delle categorie in
linguistica
Un "linguaggio naturale" è un insieme di simboli generato induttivamente, e soggetto a un certo numero di regole di riscrittura.
Da un insieme di tipi sintattici primitivi (nome, aggettivo, frase, verbo, avverbio...) si definiscono tipi derivati frazionari a/b e a\b, e congiunzioni di tipi sintattici
Ogni linguaggio naturale è una categoria i cui oggetti sono i tipi sintattici di quella lingua, e dove esiste un morfismo f : p → q se esiste una riduzione di p a q usando le regole di riscrittura
(Lambek, 1954) Parlare una lingua naturale equivale a operare una riduzione nel un calcolo dei sequenti di un sistema deduttivo; ossia, equivale a formulare una proposizione (nel senso tecnico) che il linguaggio (nel senso tecnico) ha la capacità espressiva di formulare.
Tram-mļöi hhâsmařpţuktôx
On the contrary, I think it may turn out that this rugged mountain range trails off at some point
teoria delle categorie in
meccanica quantistica
- In Meccanica Quantistica l'insieme degli stati di un sistema è uno spazio di Hilbert H
- Le osservabili sono endomorfismi f : H → H
- Gli autovalori di questi endomorfismi sono i valori delle osservabili in uno stato/autovettore
MQ è una teoria che si può esprimere nella categoria
spazi di Hilbert + mappe lineari
Ossia, MQ si può re-interpretare in tutte le categorie che hanno le stesse proprietà formali della categoria Hilb.
Gli operatori vengono rappresentati mediante diagrammi di stringa:
In modo tale che le operazioni sugli elementi dell'algebra di quegli operatori corrispondano a operazioni grafiche sui diagrammi di stringa:
teoria delle categorie in
programmazione funzionale
put the mo-ney in mo-nads
Come farebbe matematica una macchina?
Non si sa. Ma per la teoria delle categorie, la risposta è in un linguaggio funzionale con tipi dipendenti.
- Il sistema di tipi forma una (2?-)categoria Type
- L'I/O si modella usando delle monadi su Type
- Il parsing si fa con delle monadi su oggetti di Type
- La classe dei GADT di Haskell è una categoria¹
- Una monade è un funtore M : Hask → Hask con due costruttori
class Mona m where -- "Mona"
-- required constructors
binda :: m a -> ( a -> m b) -> m b
torna :: a -> m a
-- optional constructors
(>>) :: m a -> m b -> m b
fail :: String -> m a
¹In realtà questo è falso. E' quasi una categoria
Per esempio la monade Maybe: gestisce una computazione fallibile:
data Forse a = Solo a
| Niente
deriving (Show, Eq)
instance Mona Forse where
binda Niente _ = Niente
binda (Solo x) f = f x
torna = Solo
f :: Int -> Forse Int
f 0 = Niente
f n = Solo (2*n)
-- binda Niente Forse
-- => Niente
-- binda (Solo 7) f
-- => Solo 14
newtype Parsa a = Parsa
{ runParsa :: String -> Forse (String, a)
}
instance Mona Parsa where
binda (Parsa x) f = Parsa ?????????¹
torna x = Parsa (\s -> Solo (s, x))
Il parsing di testi si fa usando delle monadi:
some
raw
text
tizo@posto.it
caio@taltech.ee
pi.pacciani@mat.unifi.it
Parsa Email
¹ Definite prima istanze di Functor e di Applicative per Parsa. (Hint)
Un po' di cose vengono meglio con la teoria delle categorie:
-
Geometria e topologia algebrica
yeah, we know the drill
-
Logica, soprattutto se vi piace la matematica costruttiva
uh uh, go on...
- Mecc. Quantistica [ZX, ACR], specialmente teoria delle stringhe [DCCT]
- Lo studio dei linguaggi naturali [Lam, Jag, Coe,...]
- Progettare un linguaggio di programmazione [Bra]
- Proof-checkare la sicurezza di una UI, o di una banca (?!) [Sta]
- Lo studio dei sistemi dinamici [Sp, Gog]
- Teoria della computabilità e ricorsione [CH, CHH]
- ...
aha, now we're talking!
- Backens, Miriam. "Completeness and the ZX-calculus." arXiv preprint arXiv:1602.08954 (2016).
- Schreiber, Urs. "Differential cohomology in a cohesive ∞-topos." arXiv preprint arXiv:1310.7930 (2013): 35.
- Lambek, Joachim. "The mathematics of sentence structure." The American Mathematical Monthly 65.3 (1958): 154-170.
- Brady, Edwin. Type-driven development with Idris. Manning Publications Company, 2017.
- Tuyéras, Rémy. "Category Theory for Genetics." arXiv preprint arXiv:1708.05255 (2017).
- Fritz, Tobias, and Eigil Fjeldgren Rischel. "The zero-one laws of Kolmogorov and Hewitt-Savage in categorical probability." arXiv preprint arXiv:1912.02769 (2019).
- Culbertson, Jared, and Kirk Sturtz. "Bayesian machine learning via category theory." arXiv preprint arXiv:1312.1445 (2013).
- Gogioso, Stefano. "Categorical Semantics for Schrödinger's Equation." arXiv preprint arXiv:1501.06489 (2015).
qualcosa da leggere
scienzafestival
By Fouche Ehcuof
scienzafestival
- 395