Esiste un calcolo SKI tipizzato?


26

Molti di noi conoscono la corrispondenza tra logica combinatoria e calcolo lambda . Ma non ho mai visto (forse non ho guardato abbastanza in profondità) l'equivalente di "combinatori tipizzati", corrispondente al calcolo lambda tipizzato semplicemente. Esiste una cosa del genere? Dove si possono trovare informazioni al riguardo?


Potresti essere interessato a The Reader Monad e all'eliminazione dell'astrazione in The Monad.Reader, Numero 17 . La monade Reader (o più precisamente il suo funzione applicativa) è strettamente correlata allo SKI tipizzato.
Petr Pudlák,

Risposte:


18

È stata dimostrata la completezza espressiva dei combinatori tipizzati rispetto al calcolo lambda semplicemente tipizzato . Per ogni combinatore non tipizzato, è necessaria un'intera famiglia di combinatori tipizzati. Ad esempio, uno ha

  • ioαα
  • Kα(βα)
  • Sα(βγ)(αβ(αγ))

per tutte le combinazioni di tipi semplici e γ .α,βγ

In alternativa, pensa ai tipi come schemi di tipi (o tipi polimorfici) e inseriscili in Haskell e voilà: combinatori .


S

S<*>pureK

SSun'pΛX.αX
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.