Nominal Sets Names and Symmetry in Computer Science

Nominal sets provide a promising new mathematical analysis of names in formal languages based upon symmetry, with many applications to the syntax and semantics of programming language constructs that involve binding, or localising names. Part I provides an introduction to the basic theory of nominal...

Celý popis

Uloženo v:
Podrobná bibliografie
Hlavní autor: Pitts, Andrew M.
Médium: E-kniha Kniha
Jazyk:angličtina
Vydáno: Cambridge Cambridge University Press 30.05.2013
Vydání:1
Edice:Cambridge Tracts in Theoretical Computer Science
Témata:
ISBN:9781107017788, 1107017785
On-line přístup:Získat plný text
Tagy: Přidat tag
Žádné tagy, Buďte první, kdo vytvoří štítek k tomuto záznamu!
Obsah:
  • 8.6 Induction -- Exercises -- 9 Locally scoped names -- 9.1 The category of nominal restriction sets -- 9.2 Products and coproducts -- 9.3 Functions -- 9.4 λν-Calculus -- 9.5 Free nominal restriction sets -- 9.6 ν-Calculus -- 9.7 Total concretion -- Exercises -- 10 Functional programming -- 10.1 Types of names -- 10.2 Name abstraction types -- 10.3 Dynamically allocated names -- 10.4 Name swapping -- 10.5 Freshness relation -- 10.6 Name abstraction expressions -- 10.7 Name abstraction patterns -- 10.8 FML -- 10.9 Type assignment -- 10.10 Contextual equivalence -- 10.11 Step-indexed logical relation -- 10.12 Abstractness -- 10.13 Purity -- Exercises -- 11 Domain theory -- 11.1 Nominal posets -- 11.2 Discontinuity of name abstraction -- 11.3 Uniform directed complete posets -- 11.4 Recursive domain equations -- 11.5 Nominal Scott domains -- Exercises -- 12 Computational logic -- 12.1 Unification -- 12.2 Term rewriting -- 12.3 Logic programming -- Exercises -- References -- Index of notation -- Index
  • Cover -- Contents -- Preface -- 0 Introduction -- 0.1 Atomic names -- 0.2 Support and freshness -- 0.3 Abstract syntax with binders -- 0.4 Name abstraction -- 0.5 Orbit-finiteness -- 0.6 Alternative formulations -- 0.7 Prerequisites -- 0.8 Notation -- PART ONE THEORY -- 1 Permutations -- 1.1 The category of G-sets -- 1.2 Products and coproducts -- 1.3 Natural numbers -- 1.4 Functions -- 1.5 Power sets -- 1.6 Partial functions -- 1.7 Quotient sets -- 1.8 Finite permutations -- 1.9 Name symmetries -- Exercises -- 2 Support -- 2.1 The category of nominal sets -- 2.2 Products and coproducts -- 2.3 Natural numbers -- 2.4 Functions -- 2.5 Power sets -- 2.6 FM-sets -- 2.7 Failure of choice -- 2.8 Partial functions -- 2.9 Quotient sets -- 2.10 Non-finite support -- Exercises -- 3 Freshness -- 3.1 Freshness relation -- 3.2 Freshness quantifier -- 3.3 Fresh names -- 3.4 Separated product -- Exercises -- 4 Name abstraction -- 4.1 α-Equivalence -- 4.2 Nominal set of name abstractions -- 4.3 Concretion -- 4.4 Functoriality -- 4.5 Freshness condition for binders -- 4.6 Generalized name abstraction -- 4.7 Many sorts of names -- Exercises -- 5 Orbit-finiteness -- 5.1 Orbits -- 5.2 Atomic nominal sets -- 5.3 Finitely presentable objects -- 5.4 Orbit-finite subsets -- 5.5 Uniformly supported subsets -- Exercises -- 6 Equivalents of -- 6.1 Sets with name swapping -- 6.2 Continuous G-sets -- 6.3 The Schanuel topos -- 6.4 Named sets -- Exercises -- PART TWO APPLICATIONS -- 7 Inductive and coinductive definitions -- 7.1 Inductively defined subsets -- 7.2 Rule induction -- 7.3 Equivariant rules -- 7.4 Tarski's fixed-point theorem -- 7.5 Equivariant fixed-points -- 7.6 Coinductively defined subsets -- Exercises -- 8 Nominal algebraic data types -- 8.1 Signatures -- 8.2 α-Equivalence -- 8.3 Algebraic functors -- 8.4 Initial algebra semantics -- 8.5 Primitive recursion