90
Computational and Fine-Structure Aspects of Intersection Types A personal encounter with intersection types Jakob Rehof Technische Universit¨ at Dortmund TLT – Types and Logic in Torino Colloquium in honor of Mariangiola Dezani-Ciancaglini, Simona Ronchi Della Rocca and Mario Coppo Torino, Italy, September 22, 2017

Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Computational and Fine-Structure Aspects ofIntersection Types

A personal encounter with intersection types

Jakob Rehof

Technische Universitat Dortmund

TLT – Types and Logic in TorinoColloquium in honor of Mariangiola Dezani-Ciancaglini, Simona

Ronchi Della Rocca and Mario CoppoTorino, Italy, September 22, 2017

Page 2: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

From the Beginning ...

Intersection types combine great logical simplicity and beauty with enormousexpressive power, capturing deep semantic properties of λ-terms (normalization,

solvability, ...) 2 / 55

Page 3: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Motivations

The classical decision problems (typability and inhabitation) areundecidable for intersection types. Still, many interesting anduseful problems can be solved computationally.

Fine structure: Explore borderline between decidability andundecidability.

Computational aspects: Algorithms & complexity ofcomponents and restrictions of the system.

Applications: Intersection types as specifications (in typability,type checking, program analysis, refinement, synthesis, ...)

3 / 55

Page 4: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Acknowledgements

My students in Dortmund (former and present) including:Jan Bessai (Dortmund), Boris Dudder (formerly Dortmund,now Copenhagen), Andrej Dudenhefner (Dortmund), MoritzMartens (formerly Dortmund, now in industry)

Collaborators and colleagues, including:Mariangiola Dezani, Simona Ronchi Della Rocca, MarioCoppo and the Torino λ-calculus group, Tzu-Chun Chen(Darmstadt), George Heineman (WPI Boston), Ugode’Liguoro (Torino), Paweł Urzyczyn, Aleksy Schubert and theWarsaw group, and Roger Hindley (Swansey)

4 / 55

Page 5: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

“BCD”

[BCDC83]

5 / 55

Page 6: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Intersection Types

DefinitionThe set T of intersection types, ranged over by σ, τ, ρ, is given by

T 3 σ, τ, ρ ::= a | α | ω | σ→ τ | σ ∩ τ

where a, b , c, . . . range over type constants drawn from the set C,ω is a special (universal type) constant, and α, β, γ range over typevariables drawn from the set V.

As a matter of notational convention, function types associate to the right, and ∩binds stronger than→. A type τ ∩ σ is said to have τ and σ as components.Intersection ∩ is tacitly ACI.

6 / 55

Page 7: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

λ-Calculus with Intersection Types

Definition ([CDCV80],[BCDC83], . . .)

(Var)Γ, x : τ ` x : τ

Γ, x : σ ` M : τ(→I)

Γ ` λx.M : σ→ τ

Γ ` M : σ→ τ Γ ` N : σ (→E)Γ ` M N : τ

Γ ` M : τ1 Γ ` M : τ2 (∩I)Γ ` M : τ1 ∩ τ2

Γ ` M : τ1 ∩ τ2 (∩E)Γ ` M : τi

Γ ` M : τ τ ≤ σ (≤)Γ ` M : σ

The system is centrally placed in the theory of typed λ-calculus, see Barendregt,Dekkers, Statman, Lambda Calculus with Types [BDS13].

7 / 55

Page 8: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Subtyping (BCD)

Definition

Subtyping ≤ is the least preorder (reflexive and transitive relation)over T (cf. [BCDC83]) such that

σ ≤ ω, ω ≤ ω→ ω

σ ∩ τ ≤ σ, σ ∩ τ ≤ τ

(σ→ τ1) ∩ (σ→ τ2) ≤ σ→ τ1 ∩ τ2

σ ≤ τ1 ∧ σ ≤ τ2 ⇒ σ ≤ τ1 ∩ τ2

σ2 ≤ σ1 ∧ τ1 ≤ τ2 ⇒ σ1 → τ1 ≤ σ2 → τ2

Write σ = τ for σ ≤ τ ∧ τ ≤ σ. Then ∩ is ACI, and

(σ→ τ1) ∩ (σ→ τ2) = σ→ (τ1 ∩ τ2)

(σ1 → τ1) ∩ (σ2 → τ2) ≤ (σ1 ∩ σ2)→ (τ1 ∩ τ2)

8 / 55

Page 9: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Subtyping (BCD)

Problem (Subtyping)

Given σ, τ ∈ T, does σ ≤ τ hold?

Lemma (Beta-Soundness [BCDC83])

Given σ =⋂i∈I

(σi → τi) ∩⋂j∈J

aj ∩⋂

k∈Kαk , we have

(i) If σ ≤ a for some a ∈ C, then a ≡ aj for some j ∈ J.

(ii) If σ ≤ α for some α ∈ V, then α ≡ αk for some k ∈ K.

(iii) If σ ≤ σ′ → τ′ , ω for some σ′, τ′ ∈ T, then I′ = i ∈ I | σ′ ≤ σi , ∅ and⋂i∈I′τi ≤ τ

′.

Theorem ([DMR17])Subtyping is decidable in quadratic time.

9 / 55

Page 10: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Subtyping (BCD)

Problem (Subtyping)

Given σ, τ ∈ T, does σ ≤ τ hold?

Lemma (Beta-Soundness [BCDC83])

Given σ =⋂i∈I

(σi → τi) ∩⋂j∈J

aj ∩⋂

k∈Kαk , we have

(i) If σ ≤ a for some a ∈ C, then a ≡ aj for some j ∈ J.

(ii) If σ ≤ α for some α ∈ V, then α ≡ αk for some k ∈ K.

(iii) If σ ≤ σ′ → τ′ , ω for some σ′, τ′ ∈ T, then I′ = i ∈ I | σ′ ≤ σi , ∅ and⋂i∈I′τi ≤ τ

′.

Theorem ([DMR17])Subtyping is decidable in quadratic time.

9 / 55

Page 11: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Subtyping (BCD)

Problem (Matching)

Given a set of constraints C = σ1 ≤ τ1, . . . , σn ≤ τn, where foreach i ∈ 1, . . . , n we have Var(σi) = ∅ or Var(τi) = ∅, is there asubstitution S : V→ T such that S(σi) ≤ S(τi) for 1 ≤ i ≤ n?

We say that a substitution S satisfies σ1 ≤ τ1, . . . , σn ≤ τn ifS(σi) ≤ S(τi) for 1 ≤ i ≤ n.

Theorem ([DMR13])Matching is NP-complete.

Matching remains NP-hard even when restricted to a single type variable and asingle type constant in the input [DMR17].

10 / 55

Page 12: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Subtyping (BCD)

Problem (Matching)

Given a set of constraints C = σ1 ≤ τ1, . . . , σn ≤ τn, where foreach i ∈ 1, . . . , n we have Var(σi) = ∅ or Var(τi) = ∅, is there asubstitution S : V→ T such that S(σi) ≤ S(τi) for 1 ≤ i ≤ n?

We say that a substitution S satisfies σ1 ≤ τ1, . . . , σn ≤ τn ifS(σi) ≤ S(τi) for 1 ≤ i ≤ n.

Theorem ([DMR13])Matching is NP-complete.

Matching remains NP-hard even when restricted to a single type variable and asingle type constant in the input [DMR17].

10 / 55

Page 13: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Subtyping (BCD)

Problem (Satisfiability)

Given a set of constraints C = σ1 ≤ τ1, . . . , σn ≤ τn, is there asubstitution S : V→ T such that S(σi) ≤ S(τi) for 1 ≤ i ≤ n?

Problem (Algebraic unification)

Given a set of constraints C = σ1 τ1, . . . , σn τn, is there asubstitution S : V→ T such that S(σi) = S(τi) for 1 ≤ i ≤ n?

Theorem ([DMR16, DMR17])

The algebraic unification problem is Exptime-hard.

Open problem

Is algebraic unification decidable?

11 / 55

Page 14: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Subtyping (BCD)

Problem (Satisfiability)

Given a set of constraints C = σ1 ≤ τ1, . . . , σn ≤ τn, is there asubstitution S : V→ T such that S(σi) ≤ S(τi) for 1 ≤ i ≤ n?

Problem (Algebraic unification)

Given a set of constraints C = σ1 τ1, . . . , σn τn, is there asubstitution S : V→ T such that S(σi) = S(τi) for 1 ≤ i ≤ n?

Theorem ([DMR16, DMR17])

The algebraic unification problem is Exptime-hard.

Open problem

Is algebraic unification decidable?

11 / 55

Page 15: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Subtyping (BCD)

Problem (Satisfiability)

Given a set of constraints C = σ1 ≤ τ1, . . . , σn ≤ τn, is there asubstitution S : V→ T such that S(σi) ≤ S(τi) for 1 ≤ i ≤ n?

Problem (Algebraic unification)

Given a set of constraints C = σ1 τ1, . . . , σn τn, is there asubstitution S : V→ T such that S(σi) = S(τi) for 1 ≤ i ≤ n?

Theorem ([DMR16, DMR17])

The algebraic unification problem is Exptime-hard.

Open problem

Is algebraic unification decidable?

11 / 55

Page 16: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Subtyping (BCD)

An axiomatization of the equational theory of intersection type subtyping (withoutω) is derived in [Sta15]. We add two additional axioms (U) and (RE) toincorporate the universal type ω.

Definition (ACIUDlReAb)

The equational theory ACIUDlReAb is given by

(A) σ ∩ (τ ∩ ρ) = (σ ∩ τ) ∩ ρ

(C) σ ∩ τ = τ ∩ σ

(I) σ ∩ σ = σ

(U) σ ∩ ω = σ

(Dl) (σ→ τ) ∩ (σ→ τ′) = σ→ τ ∩ τ′

(RE) ω = ω→ ω

(AB) σ→ τ = (σ→ τ) ∩ (σ ∩ σ′ → τ)

12 / 55

Page 17: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Subtyping (BCD)

Writing ∩ as + and→ as ∗

Definition (ACIUDlReAb)

(A) σ + (τ + ρ) = (σ + τ) + ρ

(C) σ + τ = τ + σ

(I) σ + σ = σ

(U) σ + ω = σ

(Dl) (σ ∗ τ) + (σ ∗ τ′) = σ ∗ (τ + τ′)

(RE) ω = ω ∗ ω

(AB) σ ∗ τ = (σ ∗ τ) + ((σ + σ′) ∗ τ)

Close to Exptime-complete ACID-theory studied in[ANR04, ANR03] ... Yet, due to (AB), probably far from it.

13 / 55

Page 18: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Principality and Unification

[CDCV80, RDR88, CG95]

14 / 55

Page 19: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

On the Power of Subtyping

Restriction without (∩I) studied by Kurata & Takahashi, TLCA95 [KT95].

Subtyping (distributivity) captures a certain amount of (∩I):

x : (a → c) ∩ (b → d), y : a ∩ b ` (xy) : c ∩ d

Theorem ([RU12])

The inhabitation problem for the system of [KT95] isExpspace-complete with subtyping and Pspace-complete withoutsubtyping.a

aBut including (∩E).

15 / 55

Page 20: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Inhabitation

Pieter Brueghel the Elder - The Dutch Proverbs -Google Art Project.jpg1559

Problem (Inhabitation Γ `? : τ)

Given Γ and τ, does there exist a term M such that Γ ` M : τ?16 / 55

Page 21: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Inhabitation and Synthesis

Problem (Inhabitation Γ `? : τ)

Given Γ and τ, does there exist a term M such that Γ ` M : τ?

17 / 55

Page 22: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Inhabitation and Synthesis

Bottom-up specification Hoare logic

Classification Taxonomy …

Types

Component-oriented Synthesis Synthesis relative to library (repository) of components

Combinatory Logic Synthesis (CLS) Libraries need classification systems to enable retrieval and composition

CLS

18 / 55

Page 23: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Combinatory Logic Synthesis (CLS)A type-theoretic approach to component-oriented synthesis

19 / 55

Page 24: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

CLS World View

20 / 55

Page 25: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Combinatory Logic Synthesis (CLS)A type-theoretic approach to component-oriented synthesis

Can we use inhabitation in combinatory logic with intersectiontypes as a foundation for component-oriented, type-basedsynthesis?

Typed combinators X : τ as named interfaces

Automated composition synthesis via inhabitation

Intersection types as semantic types (cf. alsoHaack,Wells,Yakobowski et al. [HHSW02, WY05]) forspecification

Beyond purely functional composition via meta-programming– compose a meta-program which, when executed, computes(say) a Java program

21 / 55

Page 26: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

CLS World View

22 / 55

Page 27: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Relativized Inhabitation

We consider the relativized inhabitation problem:Given a set of typed combinators Γ and τ, does there existcombinatory expression e such that Γ ` e : τ?

Inhabitation for fixed base S,K, I is Pspace-complete insimple types (Statman’s Theorem [Sta79])

Relativized inhabitation is much harder

Undecidable in simple types: Linial-Post theorems, 1948ff.[LP49]1

The CLS view: Already in simple types, relativizedinhabitation defines a Turing-complete logic programminglanguage for component composition

Reduction from 2-counter automata [Reh13]Similar idea used to prove undecidability for synthesis in ML relative to library of functions [BSWC16]

1See also A. Dudenhefner, JR: Lower End of the Linial-Post Spectrum, TYPES 201723 / 55

Page 28: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Relativized Inhabitation

We consider the relativized inhabitation problem:Given a set of typed combinators Γ and τ, does there existcombinatory expression e such that Γ ` e : τ?

Inhabitation for fixed base S,K, I is Pspace-complete insimple types (Statman’s Theorem [Sta79])

Relativized inhabitation is much harder

Undecidable in simple types: Linial-Post theorems, 1948ff.[LP49]1

The CLS view: Already in simple types, relativizedinhabitation defines a Turing-complete logic programminglanguage for component composition

Reduction from 2-counter automata [Reh13]Similar idea used to prove undecidability for synthesis in ML relative to library of functions [BSWC16]

1See also A. Dudenhefner, JR: Lower End of the Linial-Post Spectrum, TYPES 201723 / 55

Page 29: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Relativized Inhabitation

We consider the relativized inhabitation problem:Given a set of typed combinators Γ and τ, does there existcombinatory expression e such that Γ ` e : τ?

Inhabitation for fixed base S,K, I is Pspace-complete insimple types (Statman’s Theorem [Sta79])

Relativized inhabitation is much harder

Undecidable in simple types: Linial-Post theorems, 1948ff.[LP49]1

The CLS view: Already in simple types, relativizedinhabitation defines a Turing-complete logic programminglanguage for component composition

Reduction from 2-counter automata [Reh13]Similar idea used to prove undecidability for synthesis in ML relative to library of functions [BSWC16]

1See also A. Dudenhefner, JR: Lower End of the Linial-Post Spectrum, TYPES 201723 / 55

Page 30: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Relativized Inhabitation

We consider the relativized inhabitation problem:Given a set of typed combinators Γ and τ, does there existcombinatory expression e such that Γ ` e : τ?

Inhabitation for fixed base S,K, I is Pspace-complete insimple types (Statman’s Theorem [Sta79])

Relativized inhabitation is much harder

Undecidable in simple types: Linial-Post theorems, 1948ff.[LP49]1

The CLS view: Already in simple types, relativizedinhabitation defines a Turing-complete logic programminglanguage for component composition

Reduction from 2-counter automata [Reh13]Similar idea used to prove undecidability for synthesis in ML relative to library of functions [BSWC16]

1See also A. Dudenhefner, JR: Lower End of the Linial-Post Spectrum, TYPES 201723 / 55

Page 31: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Combinatory Logic with Intersection Types cl(→,∩)

Definition

Γ,X : τ ` X : S(τ)(var)

Γ ` e : τ→ σ Γ ` e′ : τ

Γ ` (e e′) : σ(→E)

Γ ` e : τ Γ ` e : σ

Γ ` e : τ ∩ σ(∩I)

Γ ` e : τ τ ≤ σ

Γ ` e : σ(≤)

The SKI-calculus has been studied with intersection types (Dezani andHindley [DCH92])

Note

But, in CLS, the combinatory theory Γ represents an arbitrary repository (basisnot fixed)

24 / 55

Page 32: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Bounded Combinatory Logic bclk (→,∩)

Definition (Levels)

`(a) = 0, for a ∈ A;`(τ→ σ) = 1 + max`(τ), `(σ);`(⋂n

i=1 τi) = max`(τi) | i = 1, . . . , n.

`(S) = max`(S(α)) | S(α) , α

Definition (bclk (→,∩), k ≥ 0)

[`(S) ≤ k ]

Γ,X : τ `k X : S(τ)(var)

Γ `k e : τ→ σ Γ `k e′ : τ

Γ `k (e e′) : σ(→E)

Γ `k e : τ Γ `k e : σ

Γ `k e : τ ∩ σ(∩I)

Γ `k e : τ τ ≤ σ

Γ `k e : σ(≤)

BCLk : Bounded Combinatory Logic, CSL 2012 [DMRU12]

FCL: Finite Combinatory Logic with Intersection Types, TLCA 2011 [RU11], taking S = id.

25 / 55

Page 33: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Bounded Combinatory Logic bclk (→,∩)

Definition (Levels)

`(a) = 0, for a ∈ A;`(τ→ σ) = 1 + max`(τ), `(σ);`(⋂n

i=1 τi) = max`(τi) | i = 1, . . . , n.

`(S) = max`(S(α)) | S(α) , α

Definition (bclk (→,∩), k ≥ 0)

[`(S) ≤ k ]

Γ,X : τ `k X : S(τ)(var)

Γ `k e : τ→ σ Γ `k e′ : τ

Γ `k (e e′) : σ(→E)

Γ `k e : τ Γ `k e : σ

Γ `k e : τ ∩ σ(∩I)

Γ `k e : τ τ ≤ σ

Γ `k e : σ(≤)

BCLk : Bounded Combinatory Logic, CSL 2012 [DMRU12]

FCL: Finite Combinatory Logic with Intersection Types, TLCA 2011 [RU11], taking S = id.

25 / 55

Page 34: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Complexity for Finite and Bounded CL

Theorem (TLCA 2011 [RU11])

For finite combinatory logic fcl:1 Relativized inhabitation in fcl(→) is in Ptime2 Relativized inhabitation in fcl(→,∩) is Exptime-complete

Theorem (CSL 2012 [DMRU12])For bounded combinatory logic bclk :

1 Relativized inhabitation in bclk (→) is Exptime-complete for all k2 Relativized inhabitation in bclk (→,∩) is

(k + 2)-Exptime-complete

26 / 55

Page 35: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Upper Bound ATM for bclk (→,∩): Aspace(expk+1(n))

Input : Γ, τ, k Γ = f : (0→ 1) ∩ (1→ 0),x : (α→ β)→ (β→ γ)→ (α→ γ)

τ = (0→ 0) ∩ (1→ 1)loop :

1 choose (x : σ) ∈ Γ; σ′ = (0→ 0)→ (0→ 0)→ (0→ 0) ∩ · · · ∩

2 σ′ :=⋂S(σ) | S ∈ S(Γ,τ,k)

x ; (1→ 1)→ (1→ 1)→ (1→ 1)

3 choose m ∈ 0, . . . , ‖σ′‖; (0→ 1)→(1→ 0)→(0→ 0)∩4 choose P ⊆ Pm(σ′); (1→ 0)→(0→ 1)→(1→ 1)

5 if (⋂π∈P tgtm(π) ≤ τ) then (0→ 0)∩(1→ 1)≤ τ

6 if (m = 0) then accept;7 else8 forall(i = 1 . . .m)9 τ :=

⋂π∈P argi(π); τ :=(0→ 1)∩(1→ 0)

τ :=(1→ 0)∩(0→ 1)10 goto loop;11 else reject;

(x f) f : (0→ 0) ∩ (1→ 1)

27 / 55

Page 36: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Upper Bound ATM for bclk (→,∩): Aspace(expk+1(n))

Input : Γ, τ, k Γ = f : (0→ 1) ∩ (1→ 0),x : (α→ β)→ (β→ γ)→ (α→ γ)

τ = (0→ 0) ∩ (1→ 1)loop :

1 choose (x : σ) ∈ Γ; σ′ = (0→ 0)→ (0→ 0)→ (0→ 0) ∩ · · · ∩

2 σ′ :=⋂S(σ) | S ∈ S(Γ,τ,k)

x ; (1→ 1)→ (1→ 1)→ (1→ 1)

3 choose m ∈ 0, . . . , ‖σ′‖; (0→ 1)→(1→ 0)→(0→ 0)∩4 choose P ⊆ Pm(σ′); (1→ 0)→(0→ 1)→(1→ 1)

5 if (⋂π∈P tgtm(π) ≤ τ) then (0→ 0)∩(1→ 1)≤ τ

6 if (m = 0) then accept;7 else8 forall(i = 1 . . .m)9 τ :=

⋂π∈P argi(π); τ :=(0→ 1)∩(1→ 0)

τ :=(1→ 0)∩(0→ 1)10 goto loop;11 else reject;

(x f) f : (0→ 0) ∩ (1→ 1)

27 / 55

Page 37: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Upper Bound ATM for bclk (→,∩): Aspace(expk+1(n))

Input : Γ, τ, k Γ = f : (0→ 1) ∩ (1→ 0),x : (α→ β)→ (β→ γ)→ (α→ γ)

τ = (0→ 0) ∩ (1→ 1)loop :

1 choose (x : σ) ∈ Γ; σ′ = (0→ 0)→ (0→ 0)→ (0→ 0) ∩ · · · ∩

2 σ′ :=⋂S(σ) | S ∈ S(Γ,τ,k)

x ; (1→ 1)→ (1→ 1)→ (1→ 1)

3 choose m ∈ 0, . . . , ‖σ′‖; (0→ 1)→(1→ 0)→(0→ 0)∩4 choose P ⊆ Pm(σ′); (1→ 0)→(0→ 1)→(1→ 1)

5 if (⋂π∈P tgtm(π) ≤ τ) then (0→ 0)∩(1→ 1)≤ τ

6 if (m = 0) then accept;7 else8 forall(i = 1 . . .m)9 τ :=

⋂π∈P argi(π); τ :=(0→ 1)∩(1→ 0)

τ :=(1→ 0)∩(0→ 1)10 goto loop;11 else reject;

(x f) f : (0→ 0) ∩ (1→ 1)

27 / 55

Page 38: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Upper Bound ATM for bclk (→,∩): Aspace(expk+1(n))

Input : Γ, τ, k Γ = f : (0→ 1) ∩ (1→ 0),x : (α→ β)→ (β→ γ)→ (α→ γ)

τ = (0→ 0) ∩ (1→ 1)loop :

1 choose (x : σ) ∈ Γ; σ′ = (0→ 0)→ (0→ 0)→ (0→ 0) ∩ · · · ∩

2 σ′ :=⋂S(σ) | S ∈ S(Γ,τ,k)

x ; (1→ 1)→ (1→ 1)→ (1→ 1)

3 choose m ∈ 0, . . . , ‖σ′‖; (0→ 1)→(1→ 0)→(0→ 0)∩4 choose P ⊆ Pm(σ′); (1→ 0)→(0→ 1)→(1→ 1)

5 if (⋂π∈P tgtm(π) ≤ τ) then (0→ 0)∩(1→ 1)≤ τ

6 if (m = 0) then accept;7 else8 forall(i = 1 . . .m)9 τ :=

⋂π∈P argi(π); τ :=(0→ 1)∩(1→ 0)

τ :=(1→ 0)∩(0→ 1)10 goto loop;11 else reject;

(x f) f : (0→ 0) ∩ (1→ 1)

27 / 55

Page 39: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Upper Bound ATM for bclk (→,∩): Aspace(expk+1(n))

Input : Γ, τ, k Γ = f : (0→ 1) ∩ (1→ 0),x : (α→ β)→ (β→ γ)→ (α→ γ)

τ = (0→ 0) ∩ (1→ 1)loop :

1 choose (x : σ) ∈ Γ; σ′ = (0→ 0)→ (0→ 0)→ (0→ 0) ∩ · · · ∩

2 σ′ :=⋂S(σ) | S ∈ S(Γ,τ,k)

x ; (1→ 1)→ (1→ 1)→ (1→ 1)

3 choose m ∈ 0, . . . , ‖σ′‖; (0→ 1)→(1→ 0)→(0→ 0)∩4 choose P ⊆ Pm(σ′); (1→ 0)→(0→ 1)→(1→ 1)

5 if (⋂π∈P tgtm(π) ≤ τ) then (0→ 0)∩(1→ 1)≤ τ

6 if (m = 0) then accept;7 else8 forall(i = 1 . . .m)9 τ :=

⋂π∈P argi(π); τ :=(0→ 1)∩(1→ 0)

τ :=(1→ 0)∩(0→ 1)10 goto loop;11 else reject;

(x f) f : (0→ 0) ∩ (1→ 1)

27 / 55

Page 40: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Upper Bound ATM for bclk (→,∩): Aspace(expk+1(n))

Input : Γ, τ, k Γ = f : (0→ 1) ∩ (1→ 0),x : (α→ β)→ (β→ γ)→ (α→ γ)

τ = (0→ 0) ∩ (1→ 1)loop :

1 choose (x : σ) ∈ Γ; σ′ = (0→ 0)→ (0→ 0)→ (0→ 0) ∩ · · · ∩

2 σ′ :=⋂S(σ) | S ∈ S(Γ,τ,k)

x ; (1→ 1)→ (1→ 1)→ (1→ 1)

3 choose m ∈ 0, . . . , ‖σ′‖; (0→ 1)→(1→ 0)→(0→ 0)∩4 choose P ⊆ Pm(σ′); (1→ 0)→(0→ 1)→(1→ 1)

5 if (⋂π∈P tgtm(π) ≤ τ) then (0→ 0)∩(1→ 1)≤ τ

6 if (m = 0) then accept;7 else8 forall(i = 1 . . .m)9 τ :=

⋂π∈P argi(π); τ :=(0→ 1)∩(1→ 0)

τ :=(1→ 0)∩(0→ 1)10 goto loop;11 else reject;

(x f) f : (0→ 0) ∩ (1→ 1)

27 / 55

Page 41: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Ongoing: optimization & algorithm engineering

From B. Dudder: Automatic Synthesis of Component & Connector-Software Architectures with Bounded CombinatoryLogic, Diss. Dortmund, Aug. 2014, [Dud14].

28 / 55

Page 42: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Refinement (after [FP91])

Definition ([SMGB12])

Let To be simple types over an atom o. Fix X ⊆ A and define uniform typesUX (τ) for τ ∈ To :

UX (o) = X∩

UX (τ→ σ) = (UX (τ)⇒UX (σ))∩

With such types we can represent any finite function f : A→ B at the typelevel by

⋂a∈A(a → f(a))

We can express finite abstract interpretations, e.g.,

succ : (Nat→ Nat) ∩ (zero→ pos) ∩ (pos→ pos) ∩(even→ odd) ∩ (odd→ even)

Inhabitation (λ-calculus) is undecidable. Proof: Note that [SMGB12] usesonly uniform types for λ-definability.

29 / 55

Page 43: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

CL(→,∩) over Uniform (Refinement) Types

Definition

Let To be simple types over an atom o. Fix X ⊆ A and define uniform typesUX (τ) for τ ∈ To :

UX (o) = X∩

UX (τ→ σ) = (UX (τ)⇒UX (σ))∩

Corollary

Relativized inhabitation with uniform types is nonelementary recursive.

Proof.

Upper bound: every problem Γ `? : σ is decidable within bclk (→,∩) withk = max`(τ) | τ ∈ rn(Γ).Lower bound: notice that all constructions in l.b. for bclk (→,∩) can be carried outwith uniform types.

30 / 55

Page 44: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Corollary: Henkin’s theory Ω in bclk (→,∩)

Satisfiability of formulae

Φ ::= 0 ∈ x1 | 1 ∈ x1 | xk ∈ yk+1 | ¬Φ | ∀xk .Φ | Φ ∧Φ′

where xk ranges over Dk with D0 = 0, 1, Dk+1 = P(Dk ).

L. Henkin: A theory of propositional types, Fundamenta Mathematicae 52 (1963) 323–344.

Representation in bclk (→,∩) (for sufficiently large k ):

A set variable xk is represented by a type variable xk .

Membership predicate Memk

Numk (xk )→ Numk+1(yk+1)→ Ink (xk , yk+1)→ Memk (xk , yk+1)

where Ink (xk , xk → 1) and NotIn(xk , xk → 0) are axioms.

Use alternation to code quantifiers as usual (Urzyczyn 1997).

31 / 55

Page 45: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

CLS Framework

Scala-integrated framework and experiments by Bessai (Dortmund), Dudder(Copenhagen), Dudenhefner (Dortmund) in collaboration with Chen (formerlyTorino), De’Liguoro (Torino), Heineman (Boston), Martens (formerly Dortmund),Urzyczyn (Warsaw) [Reh13] [DGM+12] [DMR13] [BDD+14] [DMR14] [BDD+15] [DRH15] [HHDR15] [BDHR16]

[HBDR16a] [BDD+16a]

32 / 55

Page 46: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

CLS Framework

33 / 55

Page 47: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

CLS Framework – Experiments

ArchiType [Dud14], Combinatory Process Synthesis [BDD+16b], LaunchPad (Feature-Oriented Synthesis) [HBDR16b].

34 / 55

Page 48: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

CLS – Research Challenges

INTERSECTION TYPE SPECIFICATIONfstproc ∩ car ∩ followsLine ∩ twoLightSensors ∩stopsOnTouch ∩ robotProgram

ComponentRepository in

SCALA extension

Inhabitation algorithm for CL

CombinatoryMeta-Program

Output Program

Execution ofMeta-Program

35 / 55

Page 49: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

CLS – Research Challenges

Larger-scale experimentsModel theory of semantic types

Generate-Test and LearningThe idea of using intersection types as foundation for type-based synthesis also taken up for λ-calculusinhabitation: Frankle, Osera, Walker, and Zdancewic, Example-directed synthesis: a type-theoreticinterpretation, POPL 2016 [FOWZ16]Combinators already used in ML: Liang, Jordan and Klein, Learning Programs: A Hierarchical BayesianApproach ML 2010 [LJK10]

Integration with theorem proving

GOAL:fstproc ∩ car ∩ followsLine ∩ twoLightSensors ∩stopsOnTouch ∩ robotProgram

ComponentRepository

Generate

Test suiteStochastic model

TestLearn

Inhabitation problem in CL

36 / 55

Page 50: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Inhabitation in λ-Calculus with Intersection Types

Inhabitation in λ-calculus with intersection types is undecidable

P. Urzyczyn, The Emptiness Problem for Intersection Types, JSL 1999 [Urz99] via reduction from halting problems

for queue automata using rank 4 intersections.

Rank 2-inhabitation is decidable and Expspace-complete, and rank k -inhabitationis undecidable for all ranks k > 2

P. Urzyczyn, Inhabitation of Low-Rank Intersection Types, TLCA 2009 [Urz09] (Exptime-hardness [Kus07])

Proof techniques via bus machines, an alternating, expanding instruction device, also used to show

Expxpace-completeness of inhabitation with explicit intersection [RU12]. Direct TM-reduction: TYPES 2016, Rank

3 Inhabitation of Intersection Types Revisited [BDDR16] and extended version at arXiv.

Related to the λ-definability problem

Undecidability of λ-definability: Loader 1993 [Loa01]

S. Salvati, Recognizability in the Simply Typed Lambda-Calculus, WoLLIC 2009 [Sal09]

Salvati, Manzonetto, Gehrke, Barendregt, Urzyczyn and Loader are logically related, ICALP 2012 [SMGB12]

37 / 55

Page 51: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Inhabitation in λ-Calculus with Intersection Types

Inhabitation in λ-calculus with intersection types is undecidable

P. Urzyczyn, The Emptiness Problem for Intersection Types, JSL 1999 [Urz99] via reduction from halting problems

for queue automata using rank 4 intersections.

Rank 2-inhabitation is decidable and Expspace-complete, and rank k -inhabitationis undecidable for all ranks k > 2

P. Urzyczyn, Inhabitation of Low-Rank Intersection Types, TLCA 2009 [Urz09] (Exptime-hardness [Kus07])

Proof techniques via bus machines, an alternating, expanding instruction device, also used to show

Expxpace-completeness of inhabitation with explicit intersection [RU12]. Direct TM-reduction: TYPES 2016, Rank

3 Inhabitation of Intersection Types Revisited [BDDR16] and extended version at arXiv.

Related to the λ-definability problem

Undecidability of λ-definability: Loader 1993 [Loa01]

S. Salvati, Recognizability in the Simply Typed Lambda-Calculus, WoLLIC 2009 [Sal09]

Salvati, Manzonetto, Gehrke, Barendregt, Urzyczyn and Loader are logically related, ICALP 2012 [SMGB12]

37 / 55

Page 52: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Inhabitation in λ-Calculus with Intersection Types

Inhabitation in λ-calculus with intersection types is undecidable

P. Urzyczyn, The Emptiness Problem for Intersection Types, JSL 1999 [Urz99] via reduction from halting problems

for queue automata using rank 4 intersections.

Rank 2-inhabitation is decidable and Expspace-complete, and rank k -inhabitationis undecidable for all ranks k > 2

P. Urzyczyn, Inhabitation of Low-Rank Intersection Types, TLCA 2009 [Urz09] (Exptime-hardness [Kus07])

Proof techniques via bus machines, an alternating, expanding instruction device, also used to show

Expxpace-completeness of inhabitation with explicit intersection [RU12]. Direct TM-reduction: TYPES 2016, Rank

3 Inhabitation of Intersection Types Revisited [BDDR16] and extended version at arXiv.

Related to the λ-definability problem

Undecidability of λ-definability: Loader 1993 [Loa01]

S. Salvati, Recognizability in the Simply Typed Lambda-Calculus, WoLLIC 2009 [Sal09]

Salvati, Manzonetto, Gehrke, Barendregt, Urzyczyn and Loader are logically related, ICALP 2012 [SMGB12]

37 / 55

Page 53: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Dimensional λ-Calculus

View of Order-4 dodecahedral honeycomb generated by software: http://geometrygames.org/CurvedSpaces Curved Spaces v1.9 Topology and Geometry Software, Jeff Weeks

Intersection Type Calculi of Bounded Dimension, POPL 2017 [DR17a].Typability in Bounded Dimension, LICS 2017 [DR17b].

38 / 55

Page 54: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Strict Intersection Type System

Definition (Strict Intersection Types)

A ,B ::= a | σ→ A

σ, τ ::= [A1, . . . ,An] n ≥ 1

Definition (Strict Type Assignment [vB11](Def. 5.1))

1 ≤ i ≤ n (Var)Γ, x : [A1, . . . ,An] `s x : [Ai]

Γ `s M : [Ai] for i = 1 . . . n(∩I)

Γ `s M : [Ai , . . . ,An]

Γ `s M : [σ→ A ] Γ `s N : σ(→E)

Γ `s M N : [A ]

Γ, x : σ `s M : [A ](→I)

Γ `s λx.M : [σ→ A ]

39 / 55

Page 55: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Set-Theoretic Elaboration System

Definition (Γ ` P : σ)

1 ≤ i ≤ n (Var)Γ, x : [A1, . . . ,An] ` x〈[Ai]〉 : [Ai]

Γ, x : σ ` P : [A ](→I)

Γ ` (λx.P)〈[σ→ A ]〉 : [σ→ A ]

Γ ` P : [σ→ A ] Γ ` Q : σ(→E)

Γ ` (P Q)〈[A ]〉 : [A ]

Γ ` Pi : [Ai] for i = 1 . . . n(∩I)

Γ `⊔n

i=1 Pi : [A1, . . . ,An]

Intuition

The operation⊔n

i=1 Pi allows us to measure usage of (∩I) as a logical resourceunder norm ‖•‖

40 / 55

Page 56: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Set-Theoretic Elaboration System

Definition (Γ ` P : σ)

1 ≤ i ≤ n (Var)Γ, x : [A1, . . . ,An] ` x〈[Ai]〉 : [Ai]

Γ, x : σ ` P : [A ](→I)

Γ ` (λx.P)〈[σ→ A ]〉 : [σ→ A ]

Γ ` P : [σ→ A ] Γ ` Q : σ(→E)

Γ ` (P Q)〈[A ]〉 : [A ]

Γ ` Pi : [Ai] for i = 1 . . . n(∩I)

Γ `⊔n

i=1 Pi : [A1, . . . ,An]

Intuition

The operation⊔n

i=1 Pi allows us to measure usage of (∩I) as a logical resourceunder norm ‖•‖

40 / 55

Page 57: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Norm

Definition (P t Q, defined for dPe ≡ dQe)

x〈S〉 t x〈S ′〉 ≡ x〈S∪S ′〉

(λx.P)〈S〉 t (λx.Q)〈S ′〉 ≡ (λx.PtQ)〈S∪S ′〉

(PQ)〈S〉 t (P′Q′)〈S ′〉 ≡ ((PtP′)(QtQ′))〈S∪S ′〉

Definition (Norm ‖•‖)

‖x〈S〉‖ = |S |

‖(λx.P)〈S〉‖ = max‖P‖, |S |

‖(PQ)〈S〉‖ = max‖P‖, ‖Q‖, |S |

Non-negativity : ‖P‖ > 0Subadditivity : ‖P t Q‖ ≤ ‖P‖+ ‖Q‖ for dPe ≡ dQe

41 / 55

Page 58: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Norm

Definition (P t Q, defined for dPe ≡ dQe)

x〈S〉 t x〈S ′〉 ≡ x〈S∪S ′〉

(λx.P)〈S〉 t (λx.Q)〈S ′〉 ≡ (λx.PtQ)〈S∪S ′〉

(PQ)〈S〉 t (P′Q′)〈S ′〉 ≡ ((PtP′)(QtQ′))〈S∪S ′〉

Definition (Norm ‖•‖)

‖x〈S〉‖ = |S |

‖(λx.P)〈S〉‖ = max‖P‖, |S |

‖(PQ)〈S〉‖ = max‖P‖, ‖Q‖, |S |

Non-negativity : ‖P‖ > 0Subadditivity : ‖P t Q‖ ≤ ‖P‖+ ‖Q‖ for dPe ≡ dQe

41 / 55

Page 59: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Intersection Type Calculus of Bounded Dimension

Definition

Write Γ ` M 7−→ P : σ iff Γ ` P : σ with M ≡ dPe.

Clearly, Γ `s M : σ iff ∃P. Γ ` M 7−→ P : σ

Definition (λ[∩]n )

Γ `n M : σ iff ∃P. Γ ` M 7−→ P : σ with ‖P‖ ≤ n

Lemma

Γ `s M : σ iff Γ `n M : σ for some n > 0

Definition (Dimension)

The set theoretic dimension of a term M at Γ and σ is

dimσΓ = minn | Γ `n M : σ

42 / 55

Page 60: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Subject Reduction in Bounded Dimension

Terms can be elaborated in non-increasing norm underβ-reduction:

Theorem (Subject Reduction for λ[∩]n )

If Γ ` M 7−→ P : τ and M →β M′,then there exists R with ‖R‖ ≤ ‖P‖ such that

Γ ` M′ 7−→ R : τ

Consequences:

Each dimensional fragment λ[∩]n is a meaningful type system.

Inhabitation in bounded dimension for λ[∩]n can be limited to

search for normal forms.

43 / 55

Page 61: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Inhabitation in Bounded Set Theoretic Dimension

Problem (Inhabitation for λ[∩])

Given environment Γ, type σ and number n > 0:is there a term M such that Γ `n M : σ?

Theorem

The inhabitation problem for λ[∩] is undecidable.

Proof.By subject reduction and normalization it suffices to search fornormal forms in norm n. Let N be the size of input. By thesubformula property [BCDC83] (Lemma 4.5), inhabitation inbounded norm N is equivalent to inhabitation.

For n = 1 set-theoretic inhabitation is Pspace-complete ([RU12] Cor. 22).44 / 55

Page 62: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Inhabitation in Bounded Set Theoretic Dimension

Problem (Inhabitation for λ[∩])

Given environment Γ, type σ and number n > 0:is there a term M such that Γ `n M : σ?

Theorem

The inhabitation problem for λ[∩] is undecidable.

Proof.By subject reduction and normalization it suffices to search fornormal forms in norm n. Let N be the size of input. By thesubformula property [BCDC83] (Lemma 4.5), inhabitation inbounded norm N is equivalent to inhabitation.

For n = 1 set-theoretic inhabitation is Pspace-complete ([RU12] Cor. 22).44 / 55

Page 63: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Non-idempotence

[BKRDR14]

45 / 55

Page 64: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Multiset Elaboration System

Definition

Treat types [A1, . . . ,An] and sets S as multisets s and let

denote multiset union.

Definition (∆ P : s)

1 ≤ i ≤ n (Var)∆, x : [A1, . . . ,An] x〈[Ai]〉 : [Ai]

∆, x : s P : [A ](→I)

∆ (λx.P)〈[s→ A ]〉 : [s→ A ]

∆ P : [s→ A ] ∆ Q : s(→E)

∆ (P Q)〈[A ]〉 : [A ]

∆ Pi : [Ai] for i = 1 . . . n (?)(∩I)

∆ n

i=1 Pi : [A1, . . . ,An]

(?) For each x〈s〉 inn

i=1 Pi : if x free in M, then sF ∆(x).46 / 55

Page 65: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Inhabitation in Bounded Multiset Dimension

Definition

Γ n M : σ iff∃∆,P, s. (∆ M Z=⇒ P : s with Γ = ∆ and σ = s and ‖P‖ ≤ n)where ( ) collapses multisets to underlying sets.

Problem (Γ n? : σ)

Given Γ, σ and n > 0:is there a term M such that Γ n M : σ?

Theorem

Inhabitation in bounded multiset dimension is Expspace-complete.For each dimensional bound d > 0, inhabitation is in ATIME(N2d) where Ndenotes the size of the input Γ and σ.

Corollary

For each fixed n inhabitation in multiset dimension n is Pspace-complete.

47 / 55

Page 66: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Dimensional Analysis of Rank 2 Typings

Proposition

Suppose we can derive ∆ ` N Z=⇒ P : [A1, . . . ,An] in rank 2, where N is a normalform. Then ‖P‖ = n.

Consequence

Inhabitation in bounded multiset dimension is Expspace-complete.Substantial generalization of inhabitation in rank 2 fragment [Urz09] , generalizingacross all ranks within Expspace.

Compare to linear, non-idempotent system of Bucciareli, Kesner, Ronchi DellaRocca [BKRDR14]:

Inhabitation is decidable [BKRDR14] and NP-complete [DR17a]

Typability is undecidable.

48 / 55

Page 67: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Multiset Norm, Treewidth, and Bus Machines [Urz09]

See also talk at TYPES 2016, Rank 3 Inhabitation of Intersection Types Revisited [BDDR16] and extendedversion at arXiv.

49 / 55

Page 68: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Bounded Width Theorem

Definition (Width)

VaW = 1Vσ→ AW = maxVσW,VAWVA1 ∩ · · · ∩ AmW = maxm,VA1W, . . . ,VAmW

Lift to environments, elaborations, and derivations by taking maximal width overall types appearing.

Theorem (Bounded Width Property, LICS 2017 [DR17b])

Let a derivation D . Γ ` M 7−→ P : σ be given with ‖P‖ ≤ d. Then there exists aderivation D′ . Γ′ ` M 7−→ P′ : σ′ such that VD′W ≤ d · |M| and ‖P′‖ = ‖P‖.

Proof.

By filtration with FTP and using VFTP (DW ≤ |TP| together with

|TP| ≤ ‖P‖ · |M| ≤ d · |M|

50 / 55

Page 69: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Typability in Bounded Dimension

Problem (Typability in bounded set-theoretic dimension)

Given a λ-term M and a dimension d, does there exist Γ and σ such thatΓ `d M : σ?

(Recall: Γ `d M : σ iff ∃P. Γ ` P : σ, dPe ≡ M, ‖P‖ ≤ d)

Theorem (LICS 2017 [DR17b])

The typability problem in bounded set-theoretic dimension is Pspace-complete.a

The typability problem in bounded multiset dimension is in NP.

aUpper bound constructed by nondeterministic reduction to standard unification.

Problem is nonelementary in rank:

Kfoury, Mairson, Turbak, Wells, Relating Typability and Expressiveness inFinite-Rank Intersection Type Systems ICFP 1999 [KMTW99]

51 / 55

Page 70: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Dimensional Calculus – Research Challenges

Implementation and applications of algorithms (synthesis and typeinference)

Models of dimensional calculus and relation to linear systems

Is there a corresponding Church-style variant?

Complexity: What is the complexity of β-equality under dimensional bound?

Abstract vector space structure of elaborations

Theory of principality in bounded dimension

...

52 / 55

Page 71: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Conclusion

Intersection types combine great logical simplicity and beauty withenormous expressive power ...

... and the work of the Torino group continues to inspire new andinteresting problems and to enable new and unforeseen

applications.

53 / 55

Page 72: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Thanks

... for all the inspiration and hospitality!

Simona UgoAndrej

Tzu-

Chun

54 / 55

Page 73: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Thanks

ET IN ARCADIA EGO

55 / 55

Page 74: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

S. Anantharaman, P. Narendran, and M. Rusinowitch.Acid-unification is NEXPTIME-decidable.In Mathematical Foundations of Computer Science 2003,pages 169–178. Springer, 2003.

S. Anantharaman, P. Narendran, and M. Rusinowitch.Unification Modulo ACUI Plus Distributivity Axioms.Journal of Automated Reasoning, 33(1):1–28, 2004.

H. P. Barendregt, M. Coppo, and M. Dezani-Ciancaglini.A Filter Lambda Model and the Completeness of TypeAssignment.Journal of Symbolic Logic, 48(4):931–940, 1983.

Jan Bessai, Andrej Dudenhefner, Boris Dudder, MoritzMartens, and Jakob Rehof.Combinatory Logic Synthesizer.

55 / 55

Page 75: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

In Tiziana Margaria and Bernhard Steffen, editors, ISoLA’14,volume 8802, pages 26–40, 2014.

Jan Bessai, Andrej Dudenhefner, Boris Duedder, UgoDe’Liguoro, Tzu-Chun Chen, and Jakob Rehof.Mixin Composition synthesis Based on Intersection Types.In LIPIcs-Leibniz International Proceedings in Informatics,volume 38. Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik,2015.

Jan Bessai, Andrej Dudenhefner, Boris Dudder, MoritzMartens, and Jakob Rehof.Combinatory process synthesis.In Leveraging Applications of Formal Methods, Verification andValidation: Foundational Techniques - 7th InternationalSymposium, ISoLA 2016, Imperial, Corfu, Greece, October10-14, 2016, Proceedings, Part I, pages 266–281, 2016.

55 / 55

Page 76: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Jan Bessai, Andrej Dudenhefner, Boris Dudder, MoritzMartens, and Jakob Rehof.Combinatory Process Synthesis.In Leveraging Applications of Formal Methods, Verification andValidation: Foundational Techniques - 7th InternationalSymposium, ISoLA 2016, Imperial, Corfu, Greece, October10-14, 2016, Proceedings, Part I, pages 266–281, 2016.

Jan Bessai, Boris Dudder, Andrej Dudenhefner, and JakobRehof.Rank 3 Inhabitation of Intersection Types Revisited .In Proceedings TYPES 2016, 22nd International Conferenceon Types for Proofs and Programs, Novi Sad, May 2016, 2016.

Jan Bessai, Boris Dudder, George T. Heineman, and JakobRehof.Combinatory Synthesis of Classes using Feature Grammars.

55 / 55

Page 77: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

In C. Braga and P.C. Olveczky, editors, Proceedings of the12th International Conference on Formal Aspects ofComponent Software (FACS’15), volume 9539, pages 1–18.Springer, 2016.

H. P. Barendregt, W. Dekkers, and R. Statman.Lambda Calculus with Types.Perspectives in Logic, Cambridge University Press, 2013.

Antonio Bucciareli, Delia Kesner, and Simona RonchiDella Rocca.The inhabitation problem for non-idempotent intersectiontypes.In TCS 2014, Proceedings of 8th IFIP TC 1/WG 2.2International Conference on Theoretical Computer Science,Rome, Italy, September 1-3, 2014. Springer, 2014.

Marcin Benke, Aleksy Schubert, and DariaWalukiewicz-Chrzaszcz.

55 / 55

Page 78: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Synthesis of Functional Programs with Help of First-OrderIntuitionistic Logic.In Delia Kesner and Brigitte Pientka, editors, 1st InternationalConference on Formal Structures for Computation andDeduction (FSCD 2016), volume 52 of Leibniz InternationalProceedings in Informatics (LIPIcs), pages 12:1–12:16,Dagstuhl, Germany, 2016. Schloss Dagstuhl–Leibniz-Zentrumfuer Informatik.

Mario Coppo, Mariangiola Dezani-Ciancaglini, and BettiVenneri.Principal Type Schemes and Lambda-Calculus Semantics,pages 480–490.Accademic Press, London, 1980.Ed.: R. Hindley and J. Seldin.

Mario Coppo and Paola Giannini.

55 / 55

Page 79: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Principal types and unification for a simple intersection typesystem.Information and Computation, 122(1):70–96, 1995.

M. Dezani-Ciancaglini and R. Hindley.Intersection Types for Combinatory Logic.Theoretical Computer Science, 100(2):303–324, 1992.

Boris Dudder, Oliver Garbe, Moritz Martens, Jakob Rehof, andPaweł Urzyczyn.Using Inhabitation in Bounded Combinatory Logic withIntersection Types for Composition Synthesis.In Stephane Graham-Lengrand and Luca Paolini, editors,Proceedings Sixth Workshop on Intersection Types andRelated Systems, ITRS 2012, Dubrovnik, Croatia, 29th June2012., volume 121 of EPTCS, pages 18–34, 2012.

Boris Dudder, Moritz Martens, and Jakob Rehof.Intersection Type Matching with Subtyping.

55 / 55

Page 80: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

In Proceedings of TLCA’13, volume 4(6) of LNCS.http://dx.doi.org/10.4230/DagRep.4.6.29, 2013.

Boris Dudder, Moritz Martens, and Jakob Rehof.Staged Composition Synthesis.In ESOP 2014, Proceedings of European Symposium onProgramming, Grenoble, France 2014, volume 8410 of LNCS,pages 67–86. Springer, 2014.

Andrej Dudenhefner, Moritz Martens, and Jakob Rehof.The Intersection Type Unification Problem.In Delia Kesner and Brigitte Pientka, editors, 1st InternationalConference on Formal Structures for Computation andDeduction, FSCD 2016, June 22-26, 2016, Porto, Portugal,volume 52 of LIPIcs, pages 19:1–19:16. Schloss Dagstuhl -Leibniz-Zentrum fuer Informatik, 2016.

A. Dudenhefner, M. Martens, and J. Rehof.The Algebraic Intersection Type Unification Problem.

55 / 55

Page 81: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Logical Methods in Computer Science, 13(3), 2017.

Boris Dudder, Moritz Martens, Jakob Rehof, and PawełUrzyczyn.Bounded Combinatory Logic.In CSL 2012, Proceedings of Computer Science Logic,volume 16 of LIPIcs, pages 243–258. Schloss Dagstuhl, 2012.

Andrej Dudenhefner and Jakob Rehof.Intersection Type Calculi of Bounded Dimension.In POPL 2017, Proceedings of the 44th ACMSIGPLAN-SIGACT Symposium on Principles of ProgrammingLanguages, Paris, France, January, 2017.

Andrej Dudenhefner and Jakob Rehof.Typability in Bounded Dimension.In LICS 2017, Proceedings of the 32nd ACM/IEEE Symposiumon Logic in Computer Science, Reykjavik, Iceland, June, 2017.

55 / 55

Page 82: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Boris Dudder, Jakob Rehof, and George T. Heineman.Synthesizing Type-Safe Compositions in Feature OrientedSoftware Designs Using Staged Composition.In Proceedings of the 19th International Conference onSoftware Product Line, SPLC 2015, Nashville, TN, USA, July20-24, 2015, pages 398–401, 2015.

Boris Dudder.Automatic Synthesis of Component & Connector-SoftwareArchitectures with Bounded Combinatory Logic.PhD thesis, Technische Universitat Dortmund, Fakultat furInformatik, Dortmund, 2014, 2014.

Jonathan Frankle, Peter-Michael Osera, David Walker, andSteve Zdancewic.Example-Directed Synthesis: A Type-Theoretic Interpretation.In POPL’16, pages 802–815. ACM, 2016.

T. Freeman and F. Pfenning.55 / 55

Page 83: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Refinement Types for ML.In Proceedings of PLDI’91, pages 268–277. ACM, 1991.

George T. Heineman, Jan Bessai, Boris Dudder, and JakobRehof.A long and winding road towards modular synthesis.In Leveraging Applications of Formal Methods, Verification andValidation: Foundational Techniques - 7th InternationalSymposium, ISoLA 2016, Imperial, Corfu, Greece, October10-14, 2016, Proceedings, Part I, pages 303–317, 2016.

George T. Heineman, Jan Bessai, Boris Dudder, and JakobRehof.A long and winding road towards modular synthesis.In Leveraging Applications of Formal Methods, Verification andValidation: Foundational Techniques - 7th InternationalSymposium, ISoLA 2016, Imperial, Corfu, Greece, October10-14, 2016, Proceedings, Part I, pages 303–317, 2016.

55 / 55

Page 84: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

George T. Heineman, Armend Hoxha, Boris Dudder, andJakob Rehof.Towards Migrating Object-Oriented Frameworks to EnableSynthesis of Product Line Members.In Proceedings of the 19th International Conference onSoftware Product Line, SPLC 2015, Nashville, TN, USA, July20-24, 2015, pages 56–60, 2015.

Christian Haack, Brian Howard, Allen Stoughton, and Joe B.Wells.Fully Automatic Adaptation of Software Components Based onSemantic Specifications.In AMAST, volume 2422 of LNCS, pages 83–98. Springer,2002.

Assaf J. Kfoury, Harry G. Mairson, Franklyn A. Turbak, andJ. B. Wells.

55 / 55

Page 85: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Relating typability and expressiveness in finite-rankintersection type systems (extended abstract).In Didier Remi and Peter Lee, editors, Proceedings of thefourth ACM SIGPLAN International Conference on FunctionalProgramming (ICFP ’99), Paris, France, September 27-29,1999., pages 90–101. ACM, 1999.

T. Kurata and M. Takahashi.Decidable properties of intersection type systems.In TLCA 1995, Proceedings of Typed Lambda Calculus andApplications, volume 902 of LNCS, pages 297–311. Springer,1995.

Dariusz Kusmierek.The Inhabitation Problem for Rank Two Intersection Types.In TLCA 2007, Proceedings of Typed Lambda Calculus andApplications, volume 4583 of LNCS, pages 240–254. Springer,2007.

55 / 55

Page 86: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Percy Liang, Michael A. Jordan, and Dan Klein.Learning Programs: A Hierarchical Bayesian Approach.In Proceedings of the 26th International Conference onMachine Learning Haifa, Israel, 2010.

Ralph Loader.The undecidability of lambda definability.Logic, Meaning and Computation: Essays in Memory ofAlonzo Church, pages 331–342, 2001.

Samuel Linial and Emil L. Post.Recursive Unsolvability of the Deducibility, Tarski’sCompleteness and Independence of Axioms Problems ofPropositional Calculus.Bulletin of the American Mathematical Society, 55:50, 1949.

Simona Ronchi Della Rocca.

55 / 55

Page 87: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Principal Type Scheme and Unification for Intersection TypeDiscipline.Theor. Comput. Sci., 59:181–209, 1988.

Jakob Rehof.Towards Combinatory Logic Synthesis.In BEAT 2013, 1st International Workshop on BehaviouralTypes. ACM, 2013.

Jakob Rehof and Paweł Urzyczyn.Finite Combinatory Logic with Intersection Types.In TLCA 2011, Proceedings of Typed Lambda Calculus andApplications, volume 6690 of LNCS, pages 169–183. Springer,2011.

Jakob Rehof and Paweł Urzyczyn.The Complexity of Inhabitation with Explicit Intersection.In Robert L. Constable and Alexandra Silva, editors, Logic andProgram Semantics - Essays Dedicated to Dexter Kozen on

55 / 55

Page 88: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

the Occasion of His 60th Birthday, volume 7230 of LNCS,pages 256–270. Springer, 2012.

S. Salvati.Recognizability in the Simply Typed Lambda-Calculus.In H. Ono, M. Kanazawa, and R. J. G. B. de Queiroz, editors,WoLLIC 2009, Proceedings of Workshop on Logic, Language,Information and Computation, volume 5514 of LNCS, pages48–60. Springer, 2009.

S. Salvati, G. Manzonetto, M. Gehrke, and H. P. Barendregt.Urzyczyn and Loader are logically related.In ICALP 2012, Proceedings of Automata, Languages, andProgramming - 39th International Colloquium, volume 7392 ofLNCS, pages 364–376. Springer, 2012.

Richard Statman.Intuitionistic Propositional Logic is Polynomial-spaceComplete.

55 / 55

Page 89: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

Theoretical Computer Science, 9:67–72, 1979.

R. Statman.A finite model property for intersection types.In Proceedings Seventh Workshop on Intersection Types andRelated Systems, ITRS 2014, Vienna, Austria, 18 July 2014.,pages 1–9, 2015.

P. Urzyczyn.The Emptiness Problem for Intersection Types.Journal of Symbolic Logic, 64(3):1195–1215, 1999.

P. Urzyczyn.Inhabitation of Low-Rank Intersection Types.In TLCA 2009, Proceedings of Typed Lambda Calculus andApplications, volume 5608 of LNCS, pages 356–370. Springer,2009.

Steffen van Bakel.Strict Intersection Types for the Lambda Calculus.

55 / 55

Page 90: Computational and Fine-Structure Aspects of Intersection ...tlt2017.di.unito.it/Slides/Rehof.pdf · Computational and Fine-Structure Aspects of Intersection Types A personal encounter

ACM Computing Surveys, 43(3), 2011.

Joe B. Wells and Boris Yakobowski.Graph-Based Proof Counting and Enumeration withApplications for Program Fragment Synthesis.In LOPSTR 2004, volume 3573 of LNCS, pages 262–277.Springer, 2005.

55 / 55