90 likes | 201 Views
Formal Reasoning with Different Logical Foundations. Zhaohui Luo Dept of Computer Science Royal Holloway, Univ of London. Mathematical pluralism. Some positions in foundations of math: Neo-platonism (eg, set-theoretic foundation: Gödel/Manddy)
E N D
Formal Reasoning with Different Logical Foundations Zhaohui Luo Dept of Computer Science Royal Holloway, Univ of London
Mathematical pluralism • Some positions in foundations of math: • Neo-platonism (eg, set-theoretic foundation: Gödel/Manddy) • Revisionists (eg, intuitionism: Brouwer/Martin-Löf) • Pragmatic position – “pluralism” • Incorporating different approaches Classical v.s. Constructive/intuitionistic Impredicative v.s. Predicative Set-theoretic v.s. Type-theoretic • Support to such a position in theorem proving? A uniform foundational framework?
TT-based Theorem Proving Technology • Proof assistants based on TT • mainly intuitionistic logic • special features (e.g., predicativity/impredicativity) • set-theoretic reasoning? • Proof assistants based on LFs • Edinburgh LF? Twelf? • Plastic? • Isabelle?
Framework Approach: LTT • Type-theoretic frameworkLTT LTT = LF + Logic-enriched TTs + Typed Sets • LF – Logical framework (cf, Edin LF, Martin-Löf’s LF, PAL+, …) • Logic-enriched type theories [Aczel/Gambino02,06] • Typed sets: sets with base types (see later) Alternatively, LTT = Logics + Types • Logics – specified in LF • Types – inductive types + types of sets
Key components of LTT: types and props • Types and propositions: • Type and El(A): kinds of types and objects of type A • Eg, inductive types like N, x:A.B, List(A), Tree(A), … • Eg, types of sets like Set(A) • Prop and Prf(P): kinds of propositions and proofs of proposition P • Eg, x:A.P(x) : Prop, where A : Type and P : (A)Prop. • Eg, DN[P,p] : Prf(P), if P : Prop and p : Prf(¬¬P). • Induction rule • Linking the world of logical propositions and that of types • Enabling proofs about objects of types
Example: natural numbers • Formation and introduction • N : Type • 0 : N • succ[n] : N [n : N] • Elimination over types and computation: • ElimT[C,c,f,n] : C[n], for C[n] : Type [n : N] • Plus computational rules for ElimT: eg, ElimT[C,c,f,succ(n)] = f[n,ElimT[C,c,f,n]] • Induction over propositions: • ElimP[P,c,f,n] : P[n], for P[n] : Prop [n : N] • Key to prove logical properties of objects
Key components of LTT: typed sets • Typed sets • Set(A) : Type for A : Type • { x:A | P(x) } : Set(A) • t { x:A | P(x) } means P(t) • Impredicativity and predicativity • Impredicative sets • A can be any type (e.g., Set(B)) • P(x) can be any proposition (e.g., s:Set(N). sS & xs) • Predicative sets • Universes of small types and small propositions • A must be small (in particular, A is not Set(…)) • P must be small (not allowing quantifications over sets)
Case studies and future work • Case studies • (Simple) Implementation of LTT in Plastic (Callaghan) • Formalisation of Weyl’s predicative math (Adams & Luo) • Analysis of security protocols • Future work • Comparative studies with other systems (eg, ACA0) • Comparative studies in practical reasoning (eg, set-theoretical reasoning) • Meta-theoretic research • … …
References • Z. Luo. A type-theoretic framework for formal reasoning with different logical foundations. ASIAN’06, LNCS 4435. 2007. • R. Adams and Z. Luo. Weyl's predicative classical mathematics as a logic-enriched type theory. TYPES’06, LNCS 4502. 2007. Available fromhttp://www.cs.rhul.ac.uk/home/zhaohui/type.html