Partial continuous functionals Terms denoting computable functionals Logic of inductive definitions Computational content Computational content of proofs Helmut Schwichtenberg Mathematisches Institut, LMU, M¨ unchen Pohlers-Fest, M¨ unster, 19. Juli 2008 Helmut Schwichtenberg Computational content of proofs
Partial continuous functionals Information systems Terms denoting computable functionals Ideals Logic of inductive definitions Free algebras Computational content Totality Computable functionals of finite types odel 1958: “¨ ◮ G¨ Uber eine bisher noch nicht ben¨ utzte Erweiterung des finiten Standpunkts”, namely computable finite type functions. ◮ Need partial continuous functionals as their intendend domain (Scott 1969). The total ones then appear as a dense subset (Kreisel 1959, Ershov 1972). ◮ Type theory of Martin-L¨ of 1983 deals with total (structural recursive) functionals only. Fresh start, based on (a simplified form of) information systems (Scott 1982). Helmut Schwichtenberg Computational content of proofs
Partial continuous functionals Information systems Terms denoting computable functionals Ideals Logic of inductive definitions Free algebras Computational content Totality Atomic coherent information systems (acis’s) ◮ Acis: ( A , � , ≥ ) such that � (consistent) is reflexive and symmetric, ≥ (entails) is reflexive and transitive and a � b → b ≥ c → a � c . ◮ Formal neighborhood: U ⊆ A finite and consistent. We write U ≥ a for ∃ b ∈ U b ≥ a , and U ≥ V for ∀ a ∈ V U ≥ a . ◮ Function space: Let A = ( A , � A , ≥ A ) and B = ( B , � B , ≥ B ) be acis’s. Define A → B = ( C , � , ≥ ) by C := Con A × B , ( U , b ) � ( V , c ) := U � A V → b � B c , ( U , b ) ≥ ( V , c ) := V ≥ A U ∧ b ≥ B c . A → B is an acis again. Helmut Schwichtenberg Computational content of proofs
Partial continuous functionals Information systems Terms denoting computable functionals Ideals Logic of inductive definitions Free algebras Computational content Totality Ideals, Scott topology ◮ Ideal: x ⊆ A consistent and deductively closed. | A | is the set of ideals (points, objects) of A . ◮ | A | carries a natural topology, with cones ˜ U := { z | z ⊇ U } generated by the formal neighborhoods U as basis. Theorem (Scott 1982) The continuous maps f : | A | → | B | and the ideals r ∈ | A → B | are in a bijective correspondence. Helmut Schwichtenberg Computational content of proofs
Partial continuous functionals Information systems Terms denoting computable functionals Ideals Logic of inductive definitions Free algebras Computational content Totality Free algebras are given by their constructors. Examples ◮ Natural numbers: 0, S . ◮ Binary trees: nil , C . ◮ Unit U : u . ◮ Booleans B : tt, ff. ◮ Signed digits SD : − 1, 0, +1. ◮ Lists of signed digits L ( SD ): nil , d :: l . We always require a nullary constructor. Helmut Schwichtenberg Computational content of proofs
Partial continuous functionals Information systems Terms denoting computable functionals Ideals Logic of inductive definitions Free algebras Computational content Totality Turning free algebras into information systems ◮ Commonly done by adding ⊥ : “flat cpo”. ◮ Problem 1: Constructors are not injective: C ( ⊥ , b ) = ⊥ = C ( a , ⊥ ). ◮ Problem2 : Constructors do not have disjoint ranges: C 1 ( ⊥ ) = ⊥ = C 2 ( ⊥ ). ◮ Solution: Use as atoms constructor expressions involving a symbol ∗ , meaning “no information”. Helmut Schwichtenberg Computational content of proofs
Partial continuous functionals Information systems Terms denoting computable functionals Ideals Logic of inductive definitions Free algebras Computational content Totality Example: atoms and entailment for N ... S ( S ( S 0)) • ❅ � ❅ � ❅ � S ( S 0) • • S ( S ( S ∗ )) ❅ � ❅ � ❅ � • • S ( S ∗ ) S 0 ❅ � ❅ � ❅ � • • 0 S ∗ ❅ � ❅ � ∗ ❅ � • Helmut Schwichtenberg Computational content of proofs
Partial continuous functionals Information systems Terms denoting computable functionals Ideals Logic of inductive definitions Free algebras Computational content Totality Example: ideals for N ... • ∞ • S ( S ( S 0)) ❅ � ❅ � ❅ � S ( S 0) • • S ( S ( S ⊥ )) ❅ � ❅ � ❅ � • • S ( S ⊥ ) S 0 ❅ � ❅ � ❅ � • • S ⊥ 0 ❅ � ❅ � ❅ � • ⊥ Helmut Schwichtenberg Computational content of proofs
Partial continuous functionals Information systems Terms denoting computable functionals Ideals Logic of inductive definitions Free algebras Computational content Totality Total and cototal ideals For a base type ι , the total ideals are defined inductively: ◮ 0 is total (0 being the nullary constructor), and ◮ If � z are total, then so is C � z . The cototal ideals x are those of the form C � z with C a constructor of ι and � z cototal. – For example, in L ( SD ), ◮ the total ideals are the finite and ◮ the cototal ideals are the finite or infinite lists of signed digits ( ∼ an interval with rational end points or a stream real, both in [ − 1 , 1]). Helmut Schwichtenberg Computational content of proofs
Partial continuous functionals Information systems Terms denoting computable functionals Ideals Logic of inductive definitions Free algebras Computational content Totality Totality in higher types, density ◮ An ideal r of type ρ → σ is total iff for all total z of type ρ , the result | r | ( z ) of applying r to z is total. ◮ Density theorem (Kreisel 1959, Ershov 1972, U. Berger 1993): Assume that all base types are finitary. Then for every U ∈ Con ρ we can find a total x such that U ⊆ x . Helmut Schwichtenberg Computational content of proofs
Partial continuous functionals Constants defined by computation rules Terms denoting computable functionals Denotational semantics: preservation of values Logic of inductive definitions Operational semantics: adequacy Computational content A common extension of G¨ odel’s T and Plotkin’s PCF ◮ Terms M , N ::= x ρ | C | D | ( λ x ρ M σ ) ρ → σ | ( M ρ → σ N ρ ) σ . ◮ Constants D defined by computation rules. Examples: Recursion R τ N : N → ( U × τ × N → τ ) → τ . R 0 xy = x , R ( S n ) xy = yn ( R nxy ) . Corecursion C τ N : τ → ( τ → U + τ + N ) → N . C xy = [ case yx of 0 | λ z ( S [ case z τ + N of λ u ( C uy ) | λ n n ])] . Case of type ρ + σ → ( ρ → τ ) → ( σ → τ ) → τ : [ case ( inl ( M )) ρ + σ of λ x N ( x ) | λ y K ( y )] = N ( M ) , [ case ( inr ( M )) ρ + σ of λ x N ( x ) | λ y K ( y )] = K ( M ) . Helmut Schwichtenberg Computational content of proofs
Partial continuous functionals Constants defined by computation rules Terms denoting computable functionals Denotational semantics: preservation of values Logic of inductive definitions Operational semantics: adequacy Computational content Denotational semantics ◮ Define ( � U , b ) ∈ [ [ λ � x M ] ]: ( � ( � U i ≥ b U , V ) ⊆ [ [ λ � x N ] ] U , V , c ) ∈ [ [ λ � x M ] ] ( V ) , ( A ) . ( � ( � U , b ) ∈ [ [ λ � x x i ] ] U , c ) ∈ [ [ λ � x ( MN )] ] For every constructor C and defined constant D ( � U , � � V ≥ � b ∗ V , b ) ∈ [ [ λ � y M ] ] x ,� ( C ) , ( D ) , ( � U , � V , C � ( � U , � P ( � b ∗ ) ∈ [ [ λ � x C ] ] V ) , b ) ∈ [ [ λ � x D ] ] with one rule ( D ) for every computation rule D � P ( � y ) = M . ] � x := { b | ( � ] � ◮ [ U ] � u U [ M ] U , b ) ∈ [ [ λ � x M ] ] } and [ [ M ] x := � u [ [ M ] x . � � � � U ⊆ � Helmut Schwichtenberg Computational content of proofs
Partial continuous functionals Constants defined by computation rules Terms denoting computable functionals Denotational semantics: preservation of values Logic of inductive definitions Operational semantics: adequacy Computational content Properties ◮ [ [ λ � x M ] ] is an ideal, i.e., consistent and deductively closed. ◮ (Monotonicity) If � ] � u ] � v v ⊇ � u , b ≥ c and b ∈ [ [ M ] x , then c ∈ [ [ M ] x . � � ] � u � u , [ [ N ] ◮ (Substitution) [ ] � u [ M ( z )] ] x � = [ [ M ( N )] x . � x , z � ◮ (Beta) [ ] � u ] � u [( λ y M ( y )) N ] x = [ [ M ( N )] x . � � ] � ] � ◮ (Eta) [ u u [ λ y ( My )] x = [ [ M ] x if y / ∈ FV ( M ). � � Helmut Schwichtenberg Computational content of proofs
Partial continuous functionals Constants defined by computation rules Terms denoting computable functionals Denotational semantics: preservation of values Logic of inductive definitions Operational semantics: adequacy Computational content Preservation of values Theorem (Substitution of constructor terms) ( � U , � ] ↔ ( � U , C � V , b ) ∈ [ [ λ � y M ( C � y )] V , b ) ∈ [ [ λ � x , z M ( z )] ] , with the x ,� same height and D-height. Corollary (Preservation of values under computation rules) For every computation rule D � P ( � y ) = M of a defined constant D, y ( D � [ [ λ � P ( � y ))] ] = [ [ λ � y M ] ] . Helmut Schwichtenberg Computational content of proofs
Recommend
More recommend