Skip to content
scrambled
Programming Language Theory Concept

Alpha-equivalence

Then, =_\\alpha ParseError: Got function '\\' with no arguments as subscript at position 3: =_\ฬฒ\ฬฒalpha is the strongest Congruence on mathcalAthat contains the followings:

  • Formal definition according to Practical foundations for programming languages

    Consider:

    • A fixed set of Sort ๐’ฎ, which categorize ASTs into Syntactic category.

    • A sort-indexed family of Variables ๐’ณ={๐’ณs}, where ๐’ณs is the set of variables with sort ๐’ฎ. A sequence of variable is written as xโ†’.

    • A sort-indexed family of Abstract syntax tree (AST)s ๐’œ={๐’œs}, where ๐’œs is the set of ASTs with sort ๐’ฎ.

    • An Arity-indexed family of Operator ๐’ช={๐’ชฮฑ}, where ๐’ชฮฑ is the set of operators with the given arity ฮฑ.

    • A fresh renaming with respect to ๐’ณ is a bijection ฯ:xโ†’โ†”yโ†’ such that yโ†’ is fresh in ๐’ณ.

      Then, =ฮฑ is the strongest Congruence on ๐’œthat contains the followings:

    • For xโˆˆ๐’ณ, then x=ฮฑx.

    • For oโˆˆ๐’ช, then o(xโ†’1.a1;โ€ฆ;xโ†’n.an)=ฮฑo(xโ†’1โ€ฒ.a1โ€ฒ;โ€ฆ;xโ†’nโ€ฒ.anโ€ฒ) if for every 1โ‰คiโ‰คn, ฯห†i(ai)=ฮฑฯห†iโ€ฒ(aiโ€ฒ) for all fresh renamings ฯi:xโ†’iโ†”zโ†’i and ฯiโ€ฒ:xโ†’iโ€ฒโ†”zโ†’i.