The words you are searching are inside this book. To get more targeted content, please make full-text search by clicking here.

On the Formal Constructive Theory of Computable Functionals TCF+ Iosif Petrakis and Helmut Schwichtenberg LMU Munchen - Mathematisches Institut

Discover the best professional documents and content resources in AnyFlip Document Base.
Search
Published by , 2016-04-07 00:03:03

On the Formal Constructive Theory of Computable ...

On the Formal Constructive Theory of Computable Functionals TCF+ Iosif Petrakis and Helmut Schwichtenberg LMU Munchen - Mathematisches Institut

On the Formal Constructive Theory of Computable
Functionals TCF+

Iosif Petrakis and Helmut Schwichtenberg

LMU Mu¨nchen - Mathematisches Institut

CiE 2012, University of Cambridge, 22.06.2012

The road to TCF+

1 Hilbert (1926) introduced recursion in all finite types.

The road to TCF+

1 Hilbert (1926) introduced recursion in all finite types.
2 With G¨odel’s T (1958) began the development of

constructive theories of computable functionals of finite type.
Their domains were not constructed explicitly, but described
axiomatically by the theory.

The road to TCF+

1 Hilbert (1926) introduced recursion in all finite types.
2 With G¨odel’s T (1958) began the development of

constructive theories of computable functionals of finite type.
Their domains were not constructed explicitly, but described
axiomatically by the theory.
3 Kleene and Kreisel (1959) used the continuous functionals to
grasp the finitary aspect of computations.

The road to TCF+

1 Hilbert (1926) introduced recursion in all finite types.
2 With G¨odel’s T (1958) began the development of

constructive theories of computable functionals of finite type.
Their domains were not constructed explicitly, but described
axiomatically by the theory.
3 Kleene and Kreisel (1959) used the continuous functionals to
grasp the finitary aspect of computations.
4 Platek (1966) used partial functionals in recursion theory.

The road to TCF+

1 Hilbert (1926) introduced recursion in all finite types.
2 With Go¨del’s T (1958) began the development of

constructive theories of computable functionals of finite type.
Their domains were not constructed explicitly, but described
axiomatically by the theory.
3 Kleene and Kreisel (1959) used the continuous functionals to
grasp the finitary aspect of computations.
4 Platek (1966) used partial functionals in recursion theory.
5 Scott (1969) introduced LCF, the term language of which
denotes the partial continuous functionals, which are seen as
elements of the so-called Scott-Ershov domains. He used
classical logic.

The road to TCF+

1 Plotkin (1977) treated LCF as a programming language, a
typed λ-calculus with constants for the fixed-point operators
(PCF).

The road to TCF+

1 Plotkin (1977) treated LCF as a programming language, a
typed λ-calculus with constants for the fixed-point operators
(PCF).

2 The Scott model is fully abstract for PCF + por; every
compact element of the Scott model is the denotation of a
closed term of PCF + por.

The road to TCF+

1 Plotkin (1977) treated LCF as a programming language, a
typed λ-calculus with constants for the fixed-point operators
(PCF).

2 The Scott model is fully abstract for PCF + por; every
compact element of the Scott model is the denotation of a
closed term of PCF + por.

3 The Scott model is universal for PCF + por +∃; every
computable element of the Scott model is the denotation of a
term of PCF + por + ∃.

The road to TCF+

1 The Munich logic group (Schwichtenberg and Berger,
1990-2012) developed TCF, a theory of computable
functionals, the terms TP of which extend both G¨odel’s T
and Plotkin’s PCF.

The road to TCF+

1 The Munich logic group (Schwichtenberg and Berger,
1990-2012) developed TCF, a theory of computable
functionals, the terms TP of which extend both G¨odel’s T
and Plotkin’s PCF.

2 TCF+ is an extension of TCF. Its object-terms are the terms
of TCF, representing the functionals, and its
approximation-terms represent their finite approximations.
In that way TCF+ is better adjusted to the common
(non-flat) Scott model than TCF.

Kreisel’s density theorem

Theorem (Kreisel 1959)
A compact (finitely generated) functional can be extended to a
total one

∀U∈Conρ ∃x∈Tρ (U ⊆ x ).
One would like to give a completely formal proof of DT revealing
the computational content of it.
But for that one needs to express in the formal language both
formal neighborhoods and functionals (ideals).

Why TCF+?

1 Another motivation for TCF+ is the paradigm of the formal or
point-free topology.

Why TCF+?

1 Another motivation for TCF+ is the paradigm of the formal or
point-free topology.

2 Within higher type computability this directs to an as much as
possible reconstruction of the study of the “ideal”, abstract
functionals (points) through the study of their concrete and
finite approximations (tokens and formal neighborhoods).

Why TCF+?

1 Another motivation for TCF+ is the paradigm of the formal or
point-free topology.

2 Within higher type computability this directs to an as much as
possible reconstruction of the study of the “ideal”, abstract
functionals (points) through the study of their concrete and
finite approximations (tokens and formal neighborhoods).

3 Instrumental to this will be the use of information systems
instead of abstract domains for the description of the Scott
model.

Why TCF+?

1 Another motivation for TCF+ is the paradigm of the formal or
point-free topology.

2 Within higher type computability this directs to an as much as
possible reconstruction of the study of the “ideal”, abstract
functionals (points) through the study of their concrete and
finite approximations (tokens and formal neighborhoods).

3 Instrumental to this will be the use of information systems
instead of abstract domains for the description of the Scott
model.

4 TCF+ provides a very direct way to formulate and investigate
the concept of computability in finite types.

Some distinctive features of TCF

1 TCF is a variant of HAω.

Some distinctive features of TCF

1 TCF is a variant of HAω.
2 Variables range over arbitrary partial continuous functionals.

Some distinctive features of TCF

1 TCF is a variant of HAω.
2 Variables range over arbitrary partial continuous functionals.
3 Constants for (partial) computable functionals, defined by

equations.

Some distinctive features of TCF

1 TCF is a variant of HAω.
2 Variables range over arbitrary partial continuous functionals.
3 Constants for (partial) computable functionals, defined by

equations.
4 Totality for ground types is inductively defined.

Some distinctive features of TCF

1 TCF is a variant of HAω.
2 Variables range over arbitrary partial continuous functionals.
3 Constants for (partial) computable functionals, defined by

equations.
4 Totality for ground types is inductively defined.
5 Induction := elimination (or least-fixed-point) axiom for a

totality predicate.

Some distinctive features of TCF

1 TCF is a variant of HAω.
2 Variables range over arbitrary partial continuous functionals.
3 Constants for (partial) computable functionals, defined by

equations.
4 Totality for ground types is inductively defined.
5 Induction := elimination (or least-fixed-point) axiom for a

totality predicate.
6 Coinduction := greatest-fixed-point for a coinductively defined

predicate.

Some distinctive features of TCF

1 The only logical connectives are →, ∀, while ∃, ∧, ∨ and =
(Leibniz) are inductively defined (Martin-Lo¨f). Moreover the
logic of TCF is minimal logic.

Some distinctive features of TCF

1 The only logical connectives are →, ∀, while ∃, ∧, ∨ and =
(Leibniz) are inductively defined (Martin-Lo¨f). Moreover the
logic of TCF is minimal logic.

2 Classical logic as a fragment: ∃˜x A is defined by ¬∀x ¬A.

Some distinctive features of TCF

1 The only logical connectives are →, ∀, while ∃, ∧, ∨ and =
(Leibniz) are inductively defined (Martin-L¨of). Moreover the
logic of TCF is minimal logic.

2 Classical logic as a fragment: ∃˜x A is defined by ¬∀x ¬A.
3 The prime formulas of TCF are restricted to those built with

inductively and coinductively defined predicates.
E.g., falsity ⊥ := (False = True) and Ex-falso-quodlibet:
⊥ → A is provable.

Some distinctive features of TCF

1 The only logical connectives are →, ∀, while ∃, ∧, ∨ and =
(Leibniz) are inductively defined (Martin-Lo¨f). Moreover the
logic of TCF is minimal logic.

2 Classical logic as a fragment: ∃˜x A is defined by ¬∀x ¬A.
3 The prime formulas of TCF are restricted to those built with

inductively and coinductively defined predicates.
E.g., falsity ⊥ := (False = True) and Ex-falso-quodlibet:
⊥ → A is provable.
4 The computational content of classical (or “weak”) existence
proofs can be analyzed in TCF, by way of G¨odel’s Dialectica
interpretation and the “refined” A-translation.

Some distinctive features of TCF

1 The only logical connectives are →, ∀, while ∃, ∧, ∨ and =
(Leibniz) are inductively defined (Martin-Lo¨f). Moreover the
logic of TCF is minimal logic.

2 Classical logic as a fragment: ∃˜x A is defined by ¬∀x ¬A.
3 The prime formulas of TCF are restricted to those built with

inductively and coinductively defined predicates.
E.g., falsity ⊥ := (False = True) and Ex-falso-quodlibet:
⊥ → A is provable.
4 The computational content of classical (or “weak”) existence
proofs can be analyzed in TCF, by way of G¨odel’s Dialectica
interpretation and the “refined” A-translation.
5 Minlog is a proof assistant for TCF developed in Munich; it is
one of the few mature theorem provers with a direct
treatment of partial computable functionals (in contrast to
Coq, Isabelle, Agda).

Algebraic Domains and Information Systems

1 A domain (D, ≤, ⊥, D0) is a consistently complete, algebraic
cpo and it is the result of investigating the structure of the
domains arising in the Scott model of PCF.

Algebraic Domains and Information Systems

1 A domain (D, ≤, ⊥, D0) is a consistently complete, algebraic
cpo and it is the result of investigating the structure of the
domains arising in the Scott model of PCF.

2 Scott’s information system A = (A, Con, ): A are the
tokens, Con ⊆ Pfin(A) is the set of formal neighborhoods,
and ⊆ Con × A is the entailment relation,
+ axioms about U a: “the information in U is sufficient to
compute the bit of data a”.

Algebraic Domains and Information Systems

1 A domain (D, ≤, ⊥, D0) is a consistently complete, algebraic
cpo and it is the result of investigating the structure of the
domains arising in the Scott model of PCF.

2 Scott’s information system A = (A, Con, ): A are the
tokens, Con ⊆ Pfin(A) is the set of formal neighborhoods,
and ⊆ Con × A is the entailment relation,
+ axioms about U a: “the information in U is sufficient to
compute the bit of data a”.

3 An ideal x ⊆ A is consistent (U ⊆fin x → U ∈ Con) and
deductively closed (x ⊇ U a → a ∈ x).

Algebraic Domains and Information Systems

1 A domain (D, ≤, ⊥, D0) is a consistently complete, algebraic
cpo and it is the result of investigating the structure of the
domains arising in the Scott model of PCF.

2 Scott’s information system A = (A, Con, ): A are the
tokens, Con ⊆ Pfin(A) is the set of formal neighborhoods,
and ⊆ Con × A is the entailment relation,
+ axioms about U a: “the information in U is sufficient to
compute the bit of data a”.

3 An ideal x ⊆ A is consistent (U ⊆fin x → U ∈ Con) and
deductively closed (x ⊇ U a → a ∈ x).

4 If U ∈ Con, then U = {a ∈ A : U a} is a compact ideal.

Algebraic Domains and Information Systems

1 A domain (D, ≤, ⊥, D0) is a consistently complete, algebraic
cpo and it is the result of investigating the structure of the
domains arising in the Scott model of PCF.

2 Scott’s information system A = (A, Con, ): A are the
tokens, Con ⊆ Pfin(A) is the set of formal neighborhoods,
and ⊆ Con × A is the entailment relation,
+ axioms about U a: “the information in U is sufficient to
compute the bit of data a”.

3 An ideal x ⊆ A is consistent (U ⊆fin x → U ∈ Con) and
deductively closed (x ⊇ U a → a ∈ x).

4 If U ∈ Con, then U = {a ∈ A : U a} is a compact ideal.
5 (|A|, ⊆, |A|0, ∅) is a domain, and each domain “is” the ideals

of an information system.

The point-free version of a function between domains

1 If A = (A, ConA, A) and B = (B, ConB, B) are i.s., then
r ⊆ ConA × B is an approximable mapping defined only
through U, b s.t. every r determines a Scott continuous
function |r | : |A| → |B| and vice versa.

The point-free version of a function between domains

1 If A = (A, ConA, A) and B = (B, ConB, B) are i.s., then
r ⊆ ConA × B is an approximable mapping defined only
through U, b s.t. every r determines a Scott continuous
function |r | : |A| → |B| and vice versa.

2 An i.s. A → B is defined s.t.
|A → B| = {r : A B} =∼ |A| → |B|.

Free non-flat algebras as data types

1 The algebras ι considered here are of the form
µξ(K0, . . . , Kl−1), where each constructor Kj is of type of the
form
ρ → (σν → ξ)ν<n → ξ.

Free non-flat algebras as data types

1 The algebras ι considered here are of the form
µξ(K0, . . . , Kl−1), where each constructor Kj is of type of the
form
ρ → (σν → ξ)ν<n → ξ.

2 B := µξ(ξ, ξ) (booleans).

Free non-flat algebras as data types

1 The algebras ι considered here are of the form
µξ(K0, . . . , Kl−1), where each constructor Kj is of type of the
form
ρ → (σν → ξ)ν<n → ξ.

2 B := µξ(ξ, ξ) (booleans).
3 N := µξ(ξ, ξ → ξ) (natural numbers).

Free non-flat algebras as data types

1 The algebras ι considered here are of the form
µξ(K0, . . . , Kl−1), where each constructor Kj is of type of the
form
ρ → (σν → ξ)ν<n → ξ.

2 B := µξ(ξ, ξ) (booleans).
3 N := µξ(ξ, ξ → ξ) (natural numbers).
4 D := µξ(ξ, ξ → ξ → ξ) (derivations).

Free non-flat algebras as data types

1 The algebras ι considered here are of the form
µξ(K0, . . . , Kl−1), where each constructor Kj is of type of the
form
ρ → (σν → ξ)ν<n → ξ.

2 B := µξ(ξ, ξ) (booleans).
3 N := µξ(ξ, ξ → ξ) (natural numbers).
4 D := µξ(ξ, ξ → ξ → ξ) (derivations).
5 O := µξ(ξ, ξ → ξ, (N → ξ) → ξ) (ordinals).

Free non-flat algebras as data types

1 The algebras ι considered here are of the form
µξ(K0, . . . , Kl−1), where each constructor Kj is of type of the
form
ρ → (σν → ξ)ν<n → ξ.

2 B := µξ(ξ, ξ) (booleans).
3 N := µξ(ξ, ξ → ξ) (natural numbers).
4 D := µξ(ξ, ξ → ξ → ξ) (derivations).
5 O := µξ(ξ, ξ → ξ, (N → ξ) → ξ) (ordinals).
6 Types ρ, σ, τ : from algebras ι by ρ → σ, or

ρ = τ1 → ... → τn → ι.

The non-flat Scott model

1 We simultaneously define Cι, Cρ→σ, Conι, Conρ→σ, ι and
ρ→σ .

The non-flat Scott model

1 We simultaneously define Cι, Cρ→σ, Conι, Conρ→σ, ι and
ρ→σ .

2 If Cρ = (Cρ, Conρ, ρ), then the partial continuous
functionals of type ρ are defined by:
Dι = |Cι|,
Dρ→σ = |Cρ→σ| = |Cρ| → |Cσ|.

Why non-flat algebras?

1 Every constructor C ρ1→...→ρn→σ generates an a.m. rC defined
by
rC (U, C a∗) :↔ U a∗,
|rC |(x) = {C a∗ : ∃U⊆x (U a∗)}.

Theorem (S 2012)
Constructors are injective, |rC |(x) ⊆ |rC |(y ) ↔ x ⊆ y and have
disjoint ranges, |rC |(x) ∩ |rC |(y ) = ∅.

Why non-flat algebras?

1 Every constructor C ρ1→...→ρn→σ generates an a.m. rC defined
by
rC (U, C a∗) :↔ U a∗,
|rC |(x) = {C a∗ : ∃U⊆x (U a∗)}.

Theorem (S 2012)
Constructors are injective, |rC |(x) ⊆ |rC |(y ) ↔ x ⊆ y and have
disjoint ranges, |rC |(x) ∩ |rC |(y ) = ∅.

2 Both properties are false for flat algebras

|rC |(∅, y ) = ∅ = |rC |(x, ∅),

|rC1|(∅) = ∅ = |rC2|(∅).

Computable functionals (Compρ)ρ

1 x ∈ Compρ ⊆ Dρ → x is continuous and limit of its finite
approximations.

Computable functionals (Compρ)ρ

1 x ∈ Compρ ⊆ Dρ → x is continuous and limit of its finite
approximations.

2 So, x ∈ Compρ, if the set of its finite approximations is
recursively enumerable.

Computable functionals (Compρ)ρ

1 x ∈ Compρ ⊆ Dρ → x is continuous and limit of its finite
approximations.

2 So, x ∈ Compρ, if the set of its finite approximations is
recursively enumerable.

3 However, it is more convenient to present x by terms of a
functional programming language.

The typed λ-calculus TP

1 Common extension of Go¨del’s T and Plotkin’s PCF:
M, N ::= x ρ|C ρ|Dρ|(λxρ Mσ)ρ→σ|(Mρ→σNρ)σ.

2 Every defined constant Dρ comes with a system of
computation rules.

3 Go¨del’s higher type primitive recursion operators R:
R(0, r , s) = r , R(Sn, r , s) = s(n, R(n, r , s)).

4 The fixed-point operators Yρ:
Yρw = w (Yρw ).

Point-free inductive definition of denotational semantics

1 Point-free inductive definition of (U, a) ∈ λx M .
2 M is an ideal.
3 MN = M N .
4 M is preserved under reduction, generated from

β, η-conversion.
5 Point-free inductive definition of (U, V , a) ∈ por and

(U, boolean) ∈ ∃ .

Plotkin’s definability theorem for the non-flat N

A partial continuous functional Φ of type ρ1 → ... → ρk → N is
recursive in por + ∃, if it is the denotation of a term involving the
constructors 0, S and the constant predecessor, the fixed-point
operators Yρ, por, ∃.

Theorem (HKS, 2010)
A partial continuous functional is computable if and only if it is
recursive in por and ∃.

Proof.
Informal proof within the Scott model in [HKS, 2010], and sketch
of its formalization within TCF+.

Remark (Karadais 2012): This proof of definability works only for
algebras with at most unary constructors.


Click to View FlipBook Version