Encoding Abstract Syntax Without Fresh Names

被引:1
|
作者
Lakin, Matthew R. [1 ]
Pitts, Andrew M. [1 ]
机构
[1] Univ Cambridge, Comp Lab, Cambridge CB2 3QG, England
基金
英国工程与自然科学研究理事会;
关键词
Meta-programming; Alpha-equivalence; Nominal abstract syntax; SEMANTICS;
D O I
10.1007/s10817-011-9220-7
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
This paper introduces a variant of nominal abstract syntax in which bindable names are represented by normal meta-variables as opposed to a separate class of globally fresh names. Distinct meta-variables can be instantiated with the same concrete name, which we call aliasing. The possible aliasing patterns are controlled by explicit constraints on the distinctness (freshness) of names. This approach has already been used in the nominal meta-programming language alpha ML. We recap that language and develop a theory of contextual equivalence for it. The central result of the paper is that abstract syntax trees (ASTs) involving binders can be encoded into alpha ML in such a way that alpha-equivalence of ASTs corresponds with contextual equivalence of their encodings. This is novel because the encoding does not rely on the existence of globally fresh names and fresh name generation, which are fundamental to the correctness of the pre-existing encoding of abstract syntax into FreshML.
引用
收藏
页码:115 / 140
页数:26
相关论文
共 50 条
  • [31] Two studies on the internal syntax of complex names
    Acquaviva, Paolo
    ITALIAN JOURNAL OF LINGUISTICS, 2019, 31 (02): : 3 - 36
  • [32] Proofs without syntax
    Hughes, Dominic J. D.
    ANNALS OF MATHEMATICS, 2006, 164 (03) : 1065 - 1076
  • [33] Syntax Encoding with Application in Authorship Attribution
    Zhang, Richong
    Hu, Zhiyuan
    Guo, Hongyu
    Mao, Yongyi
    2018 CONFERENCE ON EMPIRICAL METHODS IN NATURAL LANGUAGE PROCESSING (EMNLP 2018), 2018, : 2742 - 2753
  • [34] DESIGN OF A SPECIFICATION LANGUAGE BY ABSTRACT SYNTAX ENGINEERING
    BAETEN, JCM
    BERGSTRA, JA
    LECTURE NOTES IN COMPUTER SCIENCE, 1991, 490 : 363 - 394
  • [35] A new approach to abstract syntax with variable binding
    Gabbay, Murdoch J.
    Pitts, Andrew M.
    Formal Aspects of Computing, 2002, 13 (3-5) : 341 - 363
  • [36] Migrating to an Extensible Architecture for Abstract Syntax Trees
    Couto, Luis Diogo
    Tran-Jorgensen, Peter W. V.
    Coleman, Joey W.
    Lausdahl, Kenneth
    2015 12TH WORKING IEEE/IFIP CONFERENCE ON SOFTWARE ARCHITECTURE (WICSA), 2015, : 145 - 154
  • [37] Augmenting abstract syntax trees for program understanding
    Welty, CA
    AUTOMATED SOFTWARE ENGINEERING, 12TH IEEE INTERNATIONAL CONFERENCE, PROCEEDINGS, 1997, : 126 - 133
  • [38] ASTLOG: A language for examining abstract syntax trees
    Crew, RF
    PROCEEDINGS OF THE CONFERENCE ON DOMAIN-SPECIFIC LANGUAGES, 1997, : 229 - 242
  • [39] LANGUAGE CONVERSION BASED ON ABSTRACT SYNTAX.
    Diel, H.
    Grunefeld, K.
    Menzel, P.
    1639, (15):
  • [40] Polymorphic Abstract Syntax via Grothendieck Construction
    Hamana, Makoto
    FOUNDATIONS OF SOFTWARE SCIENCE AND COMPUTATIONAL STRUCTURES, 2011, 6604 : 381 - 395