extracting the fan functional
play

Extracting the Fan Functional Ulrich Berger Swansea University - PowerPoint PPT Presentation

Extracting the Fan Functional Ulrich Berger Swansea University Theory Seminar, RIMS, Kyoto University January 17, 2019 Supported by the EU project Computation with Infinite Data 1 / 39 Overview 1. The fan functional 2. Computational


  1. Extracting the Fan Functional Ulrich Berger Swansea University Theory Seminar, RIMS, Kyoto University January 17, 2019 Supported by the EU project ’Computation with Infinite Data’ 1 / 39

  2. Overview 1. The fan functional 2. Computational content of proofs 3. Bar induction 4. Proving uniform continuity 5. Extracting the fan functional 6. Further work in program extraction 2 / 39

  3. The fan functional Given: A continuous functional F : ( N → B ) → N ( B = { 0 , 1 } ) 3 / 39

  4. The fan functional Given: A continuous functional F : ( N → B ) → N ( B = { 0 , 1 } ) Since N → B is compact, F is uniformly continuous (fan theorem). 3 / 39

  5. The fan functional Given: A continuous functional F : ( N → B ) → N ( B = { 0 , 1 } ) Since N → B is compact, F is uniformly continuous (fan theorem). Wanted: The modulus of uniform continuity of F . 3 / 39

  6. The fan functional Given: A continuous functional F : ( N → B ) → N ( B = { 0 , 1 } ) Since N → B is compact, F is uniformly continuous (fan theorem). Wanted: The modulus of uniform continuity of F . That is, the least n such that for all α, β : N → B , if α ( k ) = β ( k ) for all k < n , then F ( α ) = F ( β ). 3 / 39

  7. The fan functional Given: A continuous functional F : ( N → B ) → N ( B = { 0 , 1 } ) Since N → B is compact, F is uniformly continuous (fan theorem). Wanted: The modulus of uniform continuity of F . That is, the least n such that for all α, β : N → B , if α ( k ) = β ( k ) for all k < n , then F ( α ) = F ( β ). The function F �→ n is called fan functional . 3 / 39

  8. The fan functional Given: A continuous functional F : ( N → B ) → N ( B = { 0 , 1 } ) Since N → B is compact, F is uniformly continuous (fan theorem). Wanted: The modulus of uniform continuity of F . That is, the least n such that for all α, β : N → B , if α ( k ) = β ( k ) for all k < n , then F ( α ) = F ( β ). The function F �→ n is called fan functional . We are looking for a functional program computing the fan functional, that is, a term in PCF (arithmetic + typed lambda calculus + recursion + lazy evaluation). 3 / 39

  9. The fan functional Given: A continuous functional F : ( N → B ) → N ( B = { 0 , 1 } ) Since N → B is compact, F is uniformly continuous (fan theorem). Wanted: The modulus of uniform continuity of F . That is, the least n such that for all α, β : N → B , if α ( k ) = β ( k ) for all k < n , then F ( α ) = F ( β ). The function F �→ n is called fan functional . We are looking for a functional program computing the fan functional, that is, a term in PCF (arithmetic + typed lambda calculus + recursion + lazy evaluation). Moreover, we wish to extract the fan functional as the content of a constructive proof that F is uniformly continuous. 3 / 39

  10. Computational content of proofs via realizability - Overview Instead of defining when a formula is true or false one can define what it means to realize it, i.e. what it means to solve the computational problem it expresses: p r A (program p realizes the formula A ) 4 / 39

  11. Computational content of proofs via realizability - Overview Instead of defining when a formula is true or false one can define what it means to realize it, i.e. what it means to solve the computational problem it expresses: p r A (program p realizes the formula A ) Depending on the variant of realizability, p can be ◮ a code of a Turing machine (Kleene 1945) ◮ a higher-type functional program (e.g. a term in G¨ odel’s system T ) ◮ an element of a combinatory algebra (e.g. Scott’s D ∞ ) 4 / 39

  12. Computational content of proofs via realizability - Overview Instead of defining when a formula is true or false one can define what it means to realize it, i.e. what it means to solve the computational problem it expresses: p r A (program p realizes the formula A ) Depending on the variant of realizability, p can be ◮ a code of a Turing machine (Kleene 1945) ◮ a higher-type functional program (e.g. a term in G¨ odel’s system T ) ◮ an element of a combinatory algebra (e.g. Scott’s D ∞ ) Soundness Theorem. From a constructive proof of a formula one can extract a program realizing it. 4 / 39

  13. Intuitionistic Fixed Point logic ( IFP ) ◮ Intuitionistic first-order logic with equality. ◮ Extra constants, function symbols and atomic predicates (not necessarily decidable), depending on applications. ◮ Free predicate variables X , Y , . . . . ◮ Inductive and coinductive definitions as least and largest fixed points of monotone predicate transformers. ◮ Axioms consisting of non-computational (nc) , that is, disjunction-free, formulas (depending on applications). ◮ For the classically minded user it suffices for these nc axioms to be classically true in the intended model. 5 / 39

  14. Intuitionistic Fixed Point logic ( IFP ) ◮ Intuitionistic first-order logic with equality. ◮ Extra constants, function symbols and atomic predicates (not necessarily decidable), depending on applications. ◮ Free predicate variables X , Y , . . . . ◮ Inductive and coinductive definitions as least and largest fixed points of monotone predicate transformers. ◮ Axioms consisting of non-computational (nc) , that is, disjunction-free, formulas (depending on applications). ◮ For the classically minded user it suffices for these nc axioms to be classically true in the intended model. IFP is developed jointly with Hideki Tsuiki and Olga Petrovska . 5 / 39

  15. Intuitionistic Fixed Point logic ( IFP ) ◮ Intuitionistic first-order logic with equality. ◮ Extra constants, function symbols and atomic predicates (not necessarily decidable), depending on applications. ◮ Free predicate variables X , Y , . . . . ◮ Inductive and coinductive definitions as least and largest fixed points of monotone predicate transformers. ◮ Axioms consisting of non-computational (nc) , that is, disjunction-free, formulas (depending on applications). ◮ For the classically minded user it suffices for these nc axioms to be classically true in the intended model. IFP is developed jointly with Hideki Tsuiki and Olga Petrovska . The rational for IFP is to stay as close as possible to the axiomatic style common in mathematics while still being able to extract useful computational content from proofs. 5 / 39

  16. Intuitionistic Fixed Point logic ( IFP ) ◮ Intuitionistic first-order logic with equality. ◮ Extra constants, function symbols and atomic predicates (not necessarily decidable), depending on applications. ◮ Free predicate variables X , Y , . . . . ◮ Inductive and coinductive definitions as least and largest fixed points of monotone predicate transformers. ◮ Axioms consisting of non-computational (nc) , that is, disjunction-free, formulas (depending on applications). ◮ For the classically minded user it suffices for these nc axioms to be classically true in the intended model. IFP is developed jointly with Hideki Tsuiki and Olga Petrovska . The rational for IFP is to stay as close as possible to the axiomatic style common in mathematics while still being able to extract useful computational content from proofs. Without nc axioms the proof-theoretic strength of IFP is that of Π 1 2 -comprehension (M¨ ollerfeld 2003, Tupailo 2004). 5 / 39

  17. Induction and coinduction Let Φ = λ X λ� x A ( X , � x ) a monotone predicate transformer. Monotonicity is usually guaranteed by requiting X to occur only at strictly positive positions in A . The following rules express that µ (Φ) is the least predicate X such that Φ( X ) ⊆ X (hence Φ( µ (Φ)) = µ Φ)), and ν (Φ) is the largest predicate X such that X ⊆ Φ( X ) (hence Φ( ν (Φ)) = ν Φ)). Φ( P ) ⊆ P Φ( µ (Φ)) ⊆ µ (Φ) cl µ (Φ) ⊆ P ind P ⊆ Φ( P ) ν (Φ) ⊆ Φ( ν (Φ)) cocl P ⊆ ν (Φ) coind 6 / 39

  18. Example: Real and natural numbers ◮ Variables x , y , . . . are intended to range over abstract real numbers ◮ Constants and function symbols: 0 , 1 , + , − , ∗ , /, | · | , . . . . ◮ Atomic predicates: <, ≤ , . . . . ◮ Nc axioms: ∀ x . x + 0 = x , . . . . 7 / 39

  19. Example: Real and natural numbers ◮ Variables x , y , . . . are intended to range over abstract real numbers ◮ Constants and function symbols: 0 , 1 , + , − , ∗ , /, | · | , . . . . ◮ Atomic predicates: <, ≤ , . . . . ◮ Nc axioms: ∀ x . x + 0 = x , . . . . ◮ Inductive predicate defining the natural numbers as a subset of the reals numbers: N Def = µ Φ, where Φ = λ X λ x . x = 0 ∨ X ( x − 1). µ We write this more intuitively as N ( x ) = x = 0 ∨ N ( x − 1). 7 / 39

  20. Example: Real and natural numbers ◮ Variables x , y , . . . are intended to range over abstract real numbers ◮ Constants and function symbols: 0 , 1 , + , − , ∗ , /, | · | , . . . . ◮ Atomic predicates: <, ≤ , . . . . ◮ Nc axioms: ∀ x . x + 0 = x , . . . . ◮ Inductive predicate defining the natural numbers as a subset of the reals numbers: N Def = µ Φ, where Φ = λ X λ x . x = 0 ∨ X ( x − 1). µ We write this more intuitively as N ( x ) = x = 0 ∨ N ( x − 1). ◮ Coinductive predicate defining those real numbers that can be approximated by dyadic rationals: C Def = ν Ψ, where Ψ = λ X λ x . ∃ n ∈ N | x − n | ≤ 1 ∧ X (2 x ). Intuitive notation C ( x ) ν = ∃ n ∈ N | x − n | ≤ 1 ∧ C (2 x ). 7 / 39

Recommend


More recommend