{"title":"作为λ微积分模型的寻址机","authors":"G. D. Penna, B. Intrigila, Giulio Manzonetto","doi":"10.46298/lmcs-18(3:10)2022","DOIUrl":null,"url":null,"abstract":"Turing machines and register machines have been used for decades in\ntheoretical computer science as abstract models of computation. Also the\n$\\lambda$-calculus has played a central role in this domain as it allows to\nfocus on the notion of functional computation, based on the substitution\nmechanism, while abstracting away from implementation details. The present\narticle starts from the observation that the equivalence between these\nformalisms is based on the Church-Turing Thesis rather than an actual encoding\nof $\\lambda$-terms into Turing (or register) machines. The reason is that these\nmachines are not well-suited for modelling $\\lambda$-calculus programs.\n We study a class of abstract machines that we call \"addressing machine\" since\nthey are only able to manipulate memory addresses of other machines. The\noperations performed by these machines are very elementary: load an address in\na register, apply a machine to another one via their addresses, and call the\naddress of another machine. We endow addressing machines with an operational\nsemantics based on leftmost reduction and study their behaviour. The set of\naddresses of these machines can be easily turned into a combinatory algebra. In\norder to obtain a model of the full untyped $\\lambda$-calculus, we need to\nintroduce a rule that bares similarities with the $\\omega$-rule and the rule\n$\\zeta_\\beta$ from combinatory logic.","PeriodicalId":314387,"journal":{"name":"Log. Methods Comput. Sci.","volume":"104 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2021-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"1","resultStr":"{\"title\":\"Addressing Machines as models of lambda-calculus\",\"authors\":\"G. D. Penna, B. Intrigila, Giulio Manzonetto\",\"doi\":\"10.46298/lmcs-18(3:10)2022\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Turing machines and register machines have been used for decades in\\ntheoretical computer science as abstract models of computation. Also the\\n$\\\\lambda$-calculus has played a central role in this domain as it allows to\\nfocus on the notion of functional computation, based on the substitution\\nmechanism, while abstracting away from implementation details. The present\\narticle starts from the observation that the equivalence between these\\nformalisms is based on the Church-Turing Thesis rather than an actual encoding\\nof $\\\\lambda$-terms into Turing (or register) machines. The reason is that these\\nmachines are not well-suited for modelling $\\\\lambda$-calculus programs.\\n We study a class of abstract machines that we call \\\"addressing machine\\\" since\\nthey are only able to manipulate memory addresses of other machines. The\\noperations performed by these machines are very elementary: load an address in\\na register, apply a machine to another one via their addresses, and call the\\naddress of another machine. We endow addressing machines with an operational\\nsemantics based on leftmost reduction and study their behaviour. The set of\\naddresses of these machines can be easily turned into a combinatory algebra. In\\norder to obtain a model of the full untyped $\\\\lambda$-calculus, we need to\\nintroduce a rule that bares similarities with the $\\\\omega$-rule and the rule\\n$\\\\zeta_\\\\beta$ from combinatory logic.\",\"PeriodicalId\":314387,\"journal\":{\"name\":\"Log. Methods Comput. Sci.\",\"volume\":\"104 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2021-07-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"1\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Log. Methods Comput. Sci.\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.46298/lmcs-18(3:10)2022\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Log. Methods Comput. Sci.","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.46298/lmcs-18(3:10)2022","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Turing machines and register machines have been used for decades in
theoretical computer science as abstract models of computation. Also the
$\lambda$-calculus has played a central role in this domain as it allows to
focus on the notion of functional computation, based on the substitution
mechanism, while abstracting away from implementation details. The present
article starts from the observation that the equivalence between these
formalisms is based on the Church-Turing Thesis rather than an actual encoding
of $\lambda$-terms into Turing (or register) machines. The reason is that these
machines are not well-suited for modelling $\lambda$-calculus programs.
We study a class of abstract machines that we call "addressing machine" since
they are only able to manipulate memory addresses of other machines. The
operations performed by these machines are very elementary: load an address in
a register, apply a machine to another one via their addresses, and call the
address of another machine. We endow addressing machines with an operational
semantics based on leftmost reduction and study their behaviour. The set of
addresses of these machines can be easily turned into a combinatory algebra. In
order to obtain a model of the full untyped $\lambda$-calculus, we need to
introduce a rule that bares similarities with the $\omega$-rule and the rule
$\zeta_\beta$ from combinatory logic.