エピソード

  • Krivine's Proof of FD, Using Intersection Types
    2025/05/05

    Krivine's book (Section 4.2) has a proof of the Finite Developments Theorem, based on intersection types. I discuss this proof in this episode.

    続きを読む 一部表示
    22 分
  • A Measure-Based Proof of Finite Developments
    2025/04/16

    I discuss the paper "A Direct Proof of the Finite Developments Theorem", by Roel de Vrijer. See also the write-up at my blog.

    続きを読む 一部表示
    23 分
  • Introduction to the Finite Developments Theorem
    2025/03/27

    The finite developments theorem in pure lambda calculus says that if you select as set of redexes in a lambda term and reduce only those and their residuals (redexes that can be traced back as existing in the original set), then this process will always terminate. In this episode, I discuss the theorem and why I got interested in it.

    続きを読む 一部表示
    16 分
  • Nominal Isabelle/HOL
    2025/01/31

    In this episode, I discuss the paper Nominal Techniques in Isabelle/HOL, by Christian Urban. This paper shows how to reason with terms modulo alpha-equivalence, using ideas from nominal logic. The basic idea is that instead of renamings, one works with permutations of names.

    続きを読む 一部表示
    16 分
  • The Locally Nameless Representation
    2025/01/03

    I discuss what is called the locally nameless representation of syntax with binders, following the first couple of sections of the very nicely written paper "The Locally Nameless Representation," by Charguéraud. I complain due to the statement in the paper that "the theory of λ-calculus identifies terms that are α-equivalent," which is simply not true if one is considering lambda calculus as defined by Church, where renaming is an explicit reduction step, on a par with beta-reduction. I also answer a listener's question about what "computational type theory" means.

    Feel free to email me any time at aaron.stump@bc.edu, or join the Telegram group for the podcast.

    続きを読む 一部表示
    20 分
  • POPLmark Reloaded, Part 2
    2024/12/23

    I continue the discussion of POPLmark Reloaded , discussing the solutions proposed to the benchmark problem. The solutions are in the Beluga, Coq (recently renamed Rocq), and Agda provers.

    続きを読む 一部表示
    14 分
  • POPLmark Reloaded, Part 1
    2024/12/23

    I discuss the paper POPLmark Reloaded: Mechanizing Proofs by Logical Relations, which proposes a benchmark problem for mechanizing Programming Language theory.

    続きを読む 一部表示
    15 分
  • Introduction to Formalizing Programming Languages Theory
    2024/11/25

    In this episode, I begin discussing the question and history of formalizing results in Programming Languages Theory using interactive theorem provers like Rocq (formerly Coq) and Agda.

    続きを読む 一部表示
    12 分