¿Hay un cálculo de SKI mecanografiado?


26

La mayoría de nosotros conocemos la correspondencia entre la lógica combinatoria y el cálculo lambda . Pero nunca he visto (tal vez no he mirado lo suficientemente profundo) el equivalente de "combinadores mecanografiados", correspondiente al cálculo lambda simplemente mecanografiado. ¿Existe tal cosa? ¿Dónde se puede encontrar información al respecto?


Quizás te interese The Reader Monad y Abstraction Elimination en The Monad.Reader, número 17 . La mónada Reader (o más precisamente su functor aplicativo) está estrechamente relacionada con el SKI escrito.
Petr Pudlák

Respuestas:


18

Se ha demostrado la integridad expresiva de los combinadores mecanografiados en comparación con el cálculo lambda simplemente mecanografiado . Para cada combinador sin tipo, se necesita una familia completa de combinadores con tipo. Por ejemplo, uno tiene

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

para todas las combinaciones de tipos simples y γ .α,βγ

Alternativamente, solo piense en los tipos como esquemas de tipos (o tipos polimórficos) e ingréselos en Haskell y voila: combinadores .


¡Nunca pensé que el combinador actuara sobre una mónada! ¿Es eso así? S
Hugo Sereno Ferreira

En realidad, he señalado que corresponde al operador de aplicativos Functors, y el K . S<*>pureK
Hugo Sereno Ferreira

es bastante fundamental, por lo que podría corresponder a muchas cosas. S tiene el mismo tipo como la función mónada un p para funtor Λ X . alpha X . SSapΛX.αX
Dave Clarke
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.