Logo

    Iowa Type Theory Commute

    Aaron Stump talks about type theory, computational logic, and related topics in Computer Science on his short commute.
    en-us160 Episodes

    People also ask

    What is the main theme of the podcast?
    Who are some of the popular guests the podcast?
    Were there any controversial topics discussed in the podcast?
    Were any current trending topics addressed in the podcast?
    What popular books were mentioned in the podcast?

    Episodes (160)

    Introduction to Cut Elimination

    Introduction to Cut Elimination

    We saw in the last few episodes that proofs in natural deduction can be simplified by removing detours, which occur when an introduction inference is immediately followed by an elimination inference on the introduced formula.  What corresponds to this for sequent calculus proofs?  The answer is cut elimination.  This episode describes the cut rule and what is meant by a cut-elimination procedure.  We will talk more about such a procedure in the next episode.

    A Brief Look at Sequent Calculus

    A Brief Look at Sequent Calculus

    Sequent calculus is a different style in which proof systems can be formulated, where for each connective, we have a left rule for introducing it (in the conclusion of the rule) in the left part of a sequent G => D (i.e., in G), and similarly a right rule for introducing it in the right part (D).  The beauty of sequent calculus is disjunction is handled without any departure from the general form for sequent calculus rules (unlike disjunction in natural deduction, as we discussed last time).  

    Natural Deduction

    Natural Deduction

    This episode begins the discussion of the style of proof known as Natural Deduction, invented by Gerhard Gentzen, a student of Hermann Weyl, himself a student of David Hilbert (sorry, I said incorrectly that Gentzen was Hilbert's own student).  Each logical connective (like OR, AND, IMPLIES, etc.) has introduction rules that let you prove formulas built with that connective; and elimination rules that let you deduce consequences from a proven formula built with that connective.

    Rules of proof, standard proof systems

    Rules of proof, standard proof systems

    We continue our gradual entry into proof theory by talking about reflecting meta-logical reasoning into logical rules, and naming the three basic proof systems (Hilbert-style, natural deduction, and sequent calculus).

    Advertising for the October 3-session Zoom mini-course on normalization continues.  Email me if you are interested!  This is just for ITTC listeners.

    Finally, if you like the podcast and want to support it, would you consider a small ($5 or $10 is great) donation?  This is not so much to cover the $12/month hosting fee at Buzzsprout but to get some kudos here at my institution, so people here know that I have a podcast [grin] and that listeners like it.  To donate, go here, then choose "Colleges", then "College of Liberal Arts and Sciences", and then tick "Computer Science Development Fund".  For "gift details", please leave "gift instructions" that say the gift is for Aaron Stump for the Iowa Type Theory Commute podcast.  Then the money will get to the right place for me to use it for this.  Thanks a lot in advance!

    Different proof systems, distinguishing logical rules from domain axioms

    Different proof systems, distinguishing logical rules from domain axioms

    I highlight two basic points in this continuing warm-up to proof theory: there are different proof systems for the same logics, and it is customary to separate purely logical rules (dealing with propositional connectives and quantifiers, for example) from rules or axioms for some particular domain (like axioms about arithmetic, or whatever domain is of interest).

    Decomposing recursions using algebras

    Decomposing recursions using algebras

    Analogously to the decomposition of a datatype into a functor (which can be built from other functors to assemble a bigger language from smaller pieces of languages) and a single expression datatype with a sole constructor that builds an Expr from an F Expr (where F is the functor) -- analogously, a recursion can be decomposed into algebras and a fold function that applies the algebra throughout the datatype.  

    Reassembling datatypes from functors using a fixed-point

    Reassembling datatypes from functors using a fixed-point

    Last episode we discussed how functors can describe a single level of a datatype.  In this episode, we discuss how to put these functors back together into a datatype, using disjoint unions of functors and a fixed-point datatype.  The latter expresses the idea that inductive data is built in any finite number of layers, where each layer is described by the functor for the datatype.

    Modular datatypes: introducing Swierstra's paper "Datatypes à la Carte"

    Modular datatypes: introducing Swierstra's paper "Datatypes à la Carte"

    In a really wonderful paper of some few years back, Swierstra introduced the idea of modular datatypes using ideas from universal algebra.  Modular datatypes allow one to assemble a bigger datatype from component datatypes, and combine functions written on the component datatypes in a modular way.   In this episode I introduce the paper and the problem (dubbed the expression problem by Phil Wadler) it is trying to solve.  Modular datatypes are a different form of modularity that I would like to consider in the context of the discussion of module systems we have been engaged in now for a while in Chapter 13 of the podcast.

    Logo

    © 2024 Podcastworld. All rights reserved

    Stay up to date

    For any inquiries, please email us at hello@podcastworld.io