Denotational Semantics in Agda
PCF.Types
Initializing search
    pdmosses/xds-agda
    • About
    • Meta-notation
    • ULC
    • PCF
    • Scheme
    pdmosses/xds-agda
    • About
    • Meta-notation
      • Untyped λ-calculus
      • ULC.All
      • ULC.Variables
      • ULC.Terms
      • ULC.Domains
      • ULC.Environments
      • ULC.Semantics
      • ULC.Checks
      • PCF (Plotkin 1977)
      • PCF.All
      • PCF.Domain Notation
      • PCF.Types
      • PCF.Constants
      • PCF.Variables
      • PCF.Terms
      • PCF.Environments
      • PCF.Checks
      • Core Scheme (R5RS)
      • Scheme.All
      • Scheme.Domain Notation
      • Scheme.Abstract Syntax
      • Scheme.Domain Equations
      • Scheme.Auxiliary Functions
      • Scheme.Semantic Functions

    PCF.Types

    module PCF.Types where
    
    open import Data.Bool.Base 
      using (Bool)
    open import Agda.Builtin.Nat
      using (Nat)
    
    open import PCF.Domain-Notation
      using (_+⊥)
    
    -- Syntax
    
    data Types : Set where
      ι    : Types                  -- natural numbers
      o    : Types                  -- Boolean truthvalues
      _⇒_  : Types → Types → Types  -- functions
    
    variable σ τ : Types
    
    infixr 1 _⇒_
    
    -- Semantics 𝒟
    
    𝒟 : Types → Set  -- Set should be a sort of domains
    
    𝒟 ι        = Nat  +⊥
    𝒟 o        = Bool +⊥
    𝒟 (σ ⇒ τ)  = 𝒟 σ → 𝒟 τ
    
    variable x y z : 𝒟 σ
    
    Made with Material for MkDocs