A domain-theoretic characterisation of strong normalisation in the - - PowerPoint PPT Presentation

a domain theoretic characterisation of strong
SMART_READER_LITE
LIVE PREVIEW

A domain-theoretic characterisation of strong normalisation in the - - PowerPoint PPT Presentation

Domains VIII Sobolev Institute of Mathematics Novosibirsk Akademgorodok 11 - 15 September, 2007 A domain-theoretic characterisation of strong normalisation in the - R -calculus Ulrich Berger Swansea University 1 / 52 Introduction


slide-1
SLIDE 1

Domains VIII Sobolev Institute of Mathematics Novosibirsk Akademgorodok 11 - 15 September, 2007

A domain-theoretic characterisation of strong normalisation in the λ-R-calculus

Ulrich Berger Swansea University

1 / 52

slide-2
SLIDE 2
  • Introduction
  • The λ-R-calculus
  • Domain-theoretic semantics
  • Characterising strong normalisation
  • Types and totality
  • Applications
  • Conclusion
  • References

2 / 52

slide-3
SLIDE 3

Introduction

The strong normalisation problem

Given a higher type rewrite system - typically an extension of G¨

  • del’s system T by constants and rewrite rules - how can we

prove strong normalisation?

3 / 52

slide-4
SLIDE 4

Introduction

Strong normalisation via totality

We define a domain model with totality such that for any rewrite system: if all constants are total, then all terms are strongly normalising. Advantages

  • 1. Totality is often easy to prove (for example, the totality of

  • del’s primitive recursor is proved by a trivial induction).
  • 2. Totality is compositional, hence it can be proved for each

constant separately.

4 / 52

slide-5
SLIDE 5

Introduction

Example: G¨

  • del’s system T

β-conversion, (λx.M)N → M[N/x], plus R A G 0 → A R A G (n + 1) → G n (R A G n) Suppressing arguments that are not changed in the recursive call of R this simplifies to R 0 → A R (n + 1) → G n (R n) In the following examples we use this simplified notation.

5 / 52

slide-6
SLIDE 6

Introduction

Example: Spector’s barrecursion

BR(α, n) → if Y α < n then G(α, n) else H α n (λx.BR(αx

n, n + 1))

where x < 0 → F 0 < (y + 1) → T (x + 1) < (y + 1) → x < y and αx

n := λm.if m = n then x else α m

Think of (α, n) as coding the finite sequence [α 0, . . . , α (n − 1)]. Hence (αx

n, n + 1) codes the sequence [α 0, . . . , α (n − 1), x].

6 / 52

slide-7
SLIDE 7

Introduction

Example: Open recursion

OR α → Y α (λn, x, β.if x ≺ α n then OR (αx,β

n ) else 0 )

where αx,β

n

= λm.if m ≤ n then αx

n m else β m .

Think of α as ranging over infinite sequences ordered lexicographically by ≺. Hence αx,β

n , with x ≺ α n, ranges over all infinite sequences

lexicographically below α.

7 / 52

slide-8
SLIDE 8

Introduction

From operational to denotational semantics

The rewrite rules we have seen are all meaningful w.r.t. a domain semantics, since they can be viewed as recursive definition. That is, the denotational semantics of a constant is the least fixed point of the effectively continuous function explicitely defined by the rules.

8 / 52

slide-9
SLIDE 9

Introduction

Example: Nondeterministic choice

x | | y → x x | | y → y

◮ Used by Kristiansen (CiE 2006) to characterise the

nondeterministic polynomial hierarchy in terms of fragments

  • f G¨
  • del’s T.

◮ What is its denotational semantics? ◮ Can destroy termination: extending G¨

  • del’s T by

f 0 1 x → f x x x still terminates, but adding further | | yields f 0 1 (0 | | 1) → f (0 | | 1) (0 | | 1) (0 | | 1) →2 f 0 1 (0 | | 1) (Toyama)

9 / 52

slide-10
SLIDE 10

Introduction

Nondeterministic denotational semantics

We interpret terms as nondeterministic values, i.e. as finite sequences of deterministic values. The choice operator | | is interpreted as the concatenation

  • peration.

10 / 52

slide-11
SLIDE 11

Introduction

From denotational semantics to strong normalisation

We characterise strong normalisation by the denotational property

  • f having a defined value. Altogether we have:

[ [M] ] total ⇒ [ [M] ] = ⊥ ⇔ M strongly normalising

11 / 52

slide-12
SLIDE 12

Introduction

The main ideas

◮ Adequacy for PCF (Plotkin): If a closed PCF-term of base

type denotes a numeral in the domain model, then it weak head reduces to that numeral.

◮ Characterisation of strongly normalising (pure) λ-terms by

intersection types (Pottinger).

◮ Intersection types as a filter model of λ-terms (Barendregt,

Coppo, Dezani, van Bakel). The connection with intersection types was pointed out by Thomas Ehrhard.

12 / 52

slide-13
SLIDE 13

Introduction

Previous work

◮ “[

[M] ] = ⊥ ⇒ SN(M)” for deterministic rewrite systems, assuming SN for the underlying type theory (B 05).

◮ “[

[M] ] = ⊥ ⇒ SN(M)” for deterministic rewrite systems, unconditionally, using the “intersection types as filter models” idea (Coquand, Spiwack 06). New in this talk:

◮ Nondeterminism. ◮ Completeness: “[

[M] ] = ⊥ ⇔ SN(M)”.

◮ Abstract domain theory instead of formal typing rules.

13 / 52

slide-14
SLIDE 14

The λ-R-calculus

Terms

Λ ∋ M, N ::= x variable | c constructor (always includes T, F) | f constant | (M, N) pair | λx.M abstraction | M N application | if(M, N) definition by cases Notation: if K then M else N := if(M, N) K.

14 / 52

slide-15
SLIDE 15

The λ-R-calculus

Rewrite systems

For every constant f we assume a list Rf of rules of the form f P → M where

P is a list of patterns, i.e. terms built from constructors, variables and pairing, such that in P no variable occurs more than once;

◮ M is a term with FV(M) ⊆ FV(

P);

◮ the length of the pattern list

P is fixed for each f (this fixed length is called the arity of f );

◮ only finitely many left hand sides are allowed to be unifiable.

15 / 52

slide-16
SLIDE 16

The λ-R-calculus

Example

R A G 0 → A R A G (S, n) → G n (R A G n) R constant of arity 3 0, S constructors A, G, n variables

16 / 52

slide-17
SLIDE 17

The λ-R-calculus

Reduction, K → K ′

Contracting a subterm of K which is not in a branch of an if-term, where contracts to (λx.M) N M[N/x] if(M, N) T M if(M, N) F N f Pθ M θ (f P → M a rule, θ a substitutition)

17 / 52

slide-18
SLIDE 18

The λ-R-calculus

Strong normalisation

A term M is strongly normalising, SN(M), if there is no infinite reduction sequence M → M′ → M′′ → . . .

18 / 52

slide-19
SLIDE 19

The λ-R-calculus

Safety

A term is safe if (1) every constant f occurs only in contexts of the form f M1 . . . Mk where k is the arity of f , (2) no constructor or pair occurs as the left hand side of an application, (3) (inductively) all reducts are safe. Safety is usually guaranteed by typability.

19 / 52

slide-20
SLIDE 20

Domain-theoretic semantics

A strict reflexive Scott-domain

D = C⊥ ⊕ (D∗ ⊗ D∗) ⊕ (D∗

!

→ D∗) C⊥ flat domain of constructors D∗ strict finite lists (non-deterministic values) ⊗ strict (or smash) product ⊕ strict (or coalesced) sum

!

→ strict function space The elements of D+ := D \ ⊥: c (c a constructor) (d, e) (d, e ∈ D∗

+)

fun(f ) (f : D∗ → D∗, continuous, strict, = ⊥)

20 / 52

slide-21
SLIDE 21

Domain-theoretic semantics

Some important operations

app(fun(f ), d) := f (d) app(d, d) := ⊥, if d is a pair or a constructor d • e := [app(d, e) | d ← d] T ⊲ d := d F ⊲ d := [] matchP : D∗ → (FV(P) → D∗)∗ matchx(d) = [[x → d]] matchc(d) = (c ∈ d) ⊲ [∅] match(P,Q)(d) = [η ∪ η′ | (e, e′) ← d, η ← matchP(e), η′ ← matchQ(e′)]

21 / 52

slide-22
SLIDE 22

Domain-theoretic semantics

The value of a term: [ [M] ]η ∈ D∗

[ [x] ]η = η(x) [ [c] ] = [c] [ [(M, N)] ]η = [([ [M] ]η, [ [N] ]η)] [ [MN] ]η = [ [M] ]η • [ [N] ]η [ [λx.M] ]η = [fun(λd ∈ D∗.[ [M] ]η[x := d])] [ [if(M, N)] ]η = [fun(λd ∈ D∗.(T ∈ d ⊲ [ [M] ]η) + + (F ∈ d ⊲ [ [N] ]η))] [ [f ] ] = [funk(λ d ∈ (D∗)k. concat[ [ [M] ]η | ( P → M) ← Rf , η ← match

P(

d) ] )] where η: FV(M) → D∗ and k = arity(f ).

22 / 52

slide-23
SLIDE 23

Domain-theoretic semantics

The analogy with intersection types

The relation U ⊑ [ [M] ]η, where U ranges over non-deterministic defined compacts, can be defined inductively, similar to typing judgements in the intersection type calculus (η ⊢ M : U). This has been carried out (without non-determinism) by Coquand and Spiwack. Hence, “[ [M] ]η = ⊥”, which is equivalent to “∃U (U ⊑ [ [M] ]η)”, can be read as “M is typeable”.

23 / 52

slide-24
SLIDE 24

Characterising strong normalisation

Strong normalisation theorem

Set [ [M] ] := [ [M] ]η0 where η0(x) := [] for all variables x. For every safe term M, [ [M] ] = ⊥ ⇔ M is strongly normalising We sketch the proof of “⇒” (which doesn’t need the safety assumption).

24 / 52

slide-25
SLIDE 25

Characterising strong normalisation

Reducibility candidates

A term is simple if it has neither of the following forms: c N, (M1, M2) N, λx.M, if then M else N , f N1 . . . Nk where k < arity(f ). A reducibility candidate is a set X of terms such that RC1 X ⊆ SN. RC2 If M ∈ X and M → M′, then M′ ∈ X. RC3 If M is simple and ∀M′ (M → M′ ⇒ M′ ∈ X), then M ∈ X. X → Y := {M | ∀N (N ∈ X ⇒ MN ∈ Y )}. X × Y := {(M, N) | M ∈ X, N ∈ Y } (⊆ Λ). RC3(X) := the closure of X under the rule RC3 above.

25 / 52

slide-26
SLIDE 26

Characterising strong normalisation

Rank

D = limn Dn, with canonical embeddings ǫn : Dn → D, where D0 = {⊥} Dn+1 = C⊥ ⊕ (D∗

n ⊗ D∗ n) ⊕ (D∗ n !

→ D∗

n)

For compacts U ∈ D \ ⊥ and U ∈ D∗ \ ⊥ we set rk(U) := min{n | n ∈ ǫn(Dn)} rk(U) := sup{rk(U) | U ∈ U} (the stage where U resp. U is constructed)

26 / 52

slide-27
SLIDE 27

Characterising strong normalisation

Properties of rk(U)

◮ rk(Ui) < rk((U1, U2)). ◮ If F(d) = ⊥, then

  • rk(F(d)) < rk(fun(F)) and
  • F(d) = F(U) for some U ⊑ d with rk(U) < rk(fun(F)).

27 / 52

slide-28
SLIDE 28

Characterising strong normalisation

Assigning reducibility candidates to defined compacts

Λ(c) = RC3(c) Λ((U, V)) = RC3(Λ(U) × Λ(V)) Λ(fun(F)) = {Λ(U) → Λ(F(U)) | U ∈ dom(F), rk(U)<rk(fun(F))} = {Λ(U) → Λ(F(U)) | U ∈ dom(F)} Λ(U) = RC3({Λ(U) | U ∈ U})

28 / 52

slide-29
SLIDE 29

Characterising strong normalisation

Properties of Λ(U)

◮ If U ⊆ V, then Λ(U) ⊆ Λ(V) ◮ If U ⊑ V, then Λ(U) ⊇ Λ(V) ◮ If M ∈ Λ(U) and N ∈ Λ(V), then M N ∈ Λ(U • V) ◮ If M[N/x] ∈ Λ(F(U)) for all U ∈ dom(F) and all N ∈ Λ(U),

then λx.M ∈ Λ(fun(F))

◮ If Pθ ∈ Λ(U), then θ ∈ Λ(η) for some η ∈ matchP(U)

29 / 52

slide-30
SLIDE 30

Characterising strong normalisation

Main Claim

If U ⊑ [ [M] ]nη and θ ∈ Λ(η), then Mθ ∈ Λ(U). Proof by “Scott induction”, i.e. induction on n.

30 / 52

slide-31
SLIDE 31

Characterising strong normalisation

Proof of “SN(M) ⇒ [ [M] ] = ⊥”

Main Claim: If M is strongly normalising, then

  • 1. [

[M] ] = ⊥,

  • 2. for every linear pattern P and every η ∈ matchP([

[M] ]) there exists a substitution θ with dom(θ) = FV(P) such that M →∗ Pθ and η = [ [θ] ], i.e. η(x) = [ [θ] ](x), Proof by induction on the strong normalisability of M.

31 / 52

slide-32
SLIDE 32

Types and totality

Typed systems

Polymorphic types

  • | ι | ρ → σ | ∀p .ρ

A typed system is given by a rewrite system and typing axioms f : ρ → σ where f is a function constant and ρ, σ are types.

32 / 52

slide-33
SLIDE 33

Types and totality

Typing judgements

Γ ⊢ T : o Γ ⊢ F : o Γ ⊢ 0 : ι Γ ⊢ M : ι Γ ⊢ (S, M) : ι Γ, x : ρ ⊢ x : ρ Γ, x : ρ ⊢ M : σ Γ ⊢ λx.M : ρ → σ Γ ⊢ M : ρ → σ Γ ⊢ N : ρ Γ ⊢ MN : σ Γ ⊢ M : ρ Γ ⊢ M : ∀p .ρ (p not free in Γ) Γ ⊢ M : ∀p .ρ Γ ⊢ M : ρ[σ/p] Γ ⊢ Mi : ρi (i = 1, . . . , k) Γ ⊢ f M1 . . . Mk : σ (f : ρ1, . . . , ρk → σ axiom) Γ ⊢ M : ρ Γ ⊢ N : ρ Γ ⊢ if then M else N : o → ρ

33 / 52

slide-34
SLIDE 34

Types and totality

Denotational semantics of types

[ [ρ] ]t ⊆ D+ (ρ type, t : type variables → powerset of D) [ [p] ]t = t(p). [ [o] ]t = {T, F}. [ [ι] ]t = the least subset of D+ containing 0 and with d1, . . . , dn also ([S], [d1, . . . , dn]). [ [ρ → σ] ]t = {fun(f ) | f ([ [ρ] ]t∗) ⊆ [ [σ] ]t∗}. [ [∀p .ρ] ]t =

A⊆D+[

[ρ] ]t[p:=A]. [ [ρ] ] := [ [ρ] ]t∅ where t∅(p) := ∅ for all type variables p.

34 / 52

slide-35
SLIDE 35

Types and totality

Total typed systems

A typed system is total if [ [f ] ] ∈ [ [ ρ → σ] ]∗

t for every axiom

f : ρ → σ and every assignment t. Semantic typing Γ | = M : ρ :⇔ ∀η, t(η ∈ [ [Γ] ]∗

t ⇒ [

[M] ]η ∈ [ [ρ] ]∗

t )

Semantic soundness theorem for total typed systems Γ ⊢ M : ρ ⇒ Γ | = M : ρ Corollary Every total typed system is strongly normalising.

35 / 52

slide-36
SLIDE 36

Types and totality

Type correct systems

A type correct system is a typed system such that

  • 1. for every axiom f : ρ1, . . . , ρk → σ, k ≥ arity(f ),
  • 2. for every rewrite rule f

P → M and context Γ, if Γ ⊢ Pi : ρi for all i = 1, . . . , k, then Γ ⊢ M : σ. Lemma Type correct systems are safe, i.e. every typeable term is safe. Corollary In a type correct system a typeable term is strongly normalising if and only if it does not denote ⊥.

36 / 52

slide-37
SLIDE 37

Applications

Extensions of G¨

  • dels T

R : ρ, (ι → ρ → ρ), ι → ρ BR : τG, τH, τY , (ι → ρ), ι → σ where τG = (ι → ρ) → ι → σ τH = (ι → ρ) → ι → (ρ → σ) → σ τY = (ι → ρ) → o OR : τY , (ι → ρ), ι where τY = (ι → ρ) → (ι → ρ → (ι → ρ) → ι) → ι | | ρ, ρ → ρ

37 / 52

slide-38
SLIDE 38

Applications

New strong normalisation results

Theorem The typed system comprising system T, barrecursion, open recursion and non-deterministic choice is strongly normalising. Proof It suffices to show that all constants are total. For example, [ [ | | ] ] • d • e = d+ +e. Hence, clearly [ [ | | ] ] ∈ [ [ρ → ρ → ρ] ].

38 / 52

slide-39
SLIDE 39

Applications

Totality of R

[ [R] ] • d1 • d2 • d3 = ((0 ∈ d3)⊲d1) + + concat [d2•e•([ [R] ]•d1•d2•e) | ([S], e) ← d3] One easily shows [ [R] ] • d1 • d2 • d3 ∈ [ [ρ] ]∗ for all (d1, d2, d3) ∈ [ [ρ] ]∗ × [ [ι → ρ → ρ] ]∗ × [ [ι] ]∗, by induction on the number of occurrences of the constructor S in d3 ∈ [ [ι] ]∗.

39 / 52

slide-40
SLIDE 40

Applications

Co-products

Γ ⊢ Mi : ρi Γ ⊢ (i, M) : ρ0 + ρ1 (i = 0, 1) Casek : (ρ0 → σ′), (ρ1 → σ′), (ρ0 + ρ1), σ1, . . . , σk → σ, where σ′ := σ1 → . . . → σk → σ. Case0 x0 x1 (i, y) → xi y (i = 0, 1) Casek+1 x0 x1 (i, y) z → xi y z (i = 0, 1)

40 / 52

slide-41
SLIDE 41

Applications

Permutative conversions

Casek+1 x0 x1 u z → Casek (λy0.x0 y0 z) (λy1.x1 y1 z) u. Recall: Casek : (ρ0 → σ′), (ρ1 → σ′), (ρ0 + ρ1), σ1, . . . , σk → σ, where σ′ := σ1 → . . . → σk → σ. Theorem The system comprising the previously considered extensions of G¨

  • del’s T plus co-procucts and permutative conversions is strongly

normalising. Proof : Show that [ [Casek] ] is total, by induction on k.

41 / 52

slide-42
SLIDE 42

Applications

ω-rule

Γ ⊢ M0 : ρ Γ ⊢ M1 : ρ Γ ⊢ M2 : ρ . . . Γ ⊢< Mi >i∈N: ι → ρ < Mi >i∈N 0 → M0 < Mi >i∈N (S, K) → < Mi+1 >i∈N K Reduction inside < Mi >i∈N is not allowed.

42 / 52

slide-43
SLIDE 43

Applications

Strong normalisation for the ω-rule

Theorem The system comprising the previous system plus ω-rule is strongly normalising. Proof : The ω-rule can be simulated by constants f⌈

x,<Mi>i∈N⌉, for

every infinite sequence of terms M0, M1, M2, . . . with free variable included in x, and the rewrite rules f⌈

x,<Mi>i∈N⌉

x 0 → M0 f⌈

x,<Mi>i∈N⌉

x (S, K) → f⌈

x,<Mi+1>i∈N⌉

x K It is easy to prove that each f⌈

x,<Mi>i∈N⌉ is total.

43 / 52

slide-44
SLIDE 44

Conclusion

Summary

◮ We introduced a flexible, powerful and easy to use method for

proving strong normalisation for λ-calculi with rewriting.

◮ In typed systems additional constants only need to be shown

total.

◮ Can cope with non-determinism and infinitary terms (ω-rule). ◮ Restricted to “definitional rules”. Hence rules like

(x + y) + z → x + (y + z) are excluded.

◮ Can our semantic method be combined with more syntax

  • riented methods (Blanqui, Jouannaud, . . . ), that can deal

with rules like the above?

44 / 52

slide-45
SLIDE 45

Conclusion

Foundational aspects

◮ Although easy to use, our method is too heavy handed, from

a foundational point of view:

  • The definition of Λ(U) requires a reflection principle (as does

the usual definition of Tait’s strong computability predicates).

  • The definition of [

[ρ → σ] ] requires quantification over domain elements (i.e. second-order objects).

  • Similarly, the interpretation of polymorphic types requires

third-order quantification.

◮ Due to recent results by Abel (HOR’97) it is likely that the

characterisation theorem can be proven elementarily (see also Valentini’s elementary proof of the corresponding theorem for intersection types).

45 / 52

slide-46
SLIDE 46

References

  • K. G¨
  • del.

¨ Uber eine bisher noch nicht ben¨ utzte Erweiterung des finiten

  • Standpunktes. Dialectica 12 (1958) 280–287.
  • C. Spector.

Provably recursive functionals of analysis: a consistency proof

  • f analysis by an extension of principles in current intuitionistic
  • mathematics. In F. D. E. Dekker, editor, Recursive Function

Theory: Proc. Sympos. in Pure Math., 5, 1–27. AMS, 1962

  • D. S. Scott.

Outline of a mathematical theory of computation. In 4th Annual Princeton Conference on Information Sciences and Systems, pages 169–176, 1970.

46 / 52

slide-47
SLIDE 47

References

W.W. Tait. Normal form theorem for barrecursive functions of finite type. In J.E. Fenstad, ed, Proceedings of the Second Scandinavian Logic Symp., 353–367. North–Holland, 1971.

  • H. Vogel.

Ein starker Normalisationssatz f¨ ur die barrekursiven

  • Funktionale. Archive for Mathematical Logic, 18:81–84, 1976.

Yuri L. Ershov. Model C of partial continuous functionals. Logic Colloquium

  • 1976. R. Gandy and M. Hyland, editors, North Holland,

Amsterdam 455–467, 1977.

  • G. D. Plotkin.

LCF considered as a programming language. Theoretical Computer Science, 5:223–255, 1977.

47 / 52

slide-48
SLIDE 48

References

  • G. Pottinger.

A type assignment for the strongly normalisable terms. In J.P. Seldin and J.R. Hindley, editors, To H.B. Curry: Essays on Combinatory Logic, Lambda Calculus and Formalism, pages 561–577. Academic Press, 1980.

  • H. Barendregt, , M. Coppo, and M. Dezani-Ciancaglini.

A filter lambda model and the completeness of type

  • assignment. Journ. Symb. Logic, 48(4):931–940, 1983.
  • M. Bezem.

Strong normalization of barrecursive terms without using infinite terms. Arch. Math. Logic, 25:175–181, 1985.

  • Y. Toyama.

Counterexample to termination for the direct sum of term rewriting systems. Information Processing Letters, 25:141–143, 1987.

48 / 52

slide-49
SLIDE 49

References

  • S. van Bakel.

Complete restrictions of the intersection type discipline. Theoretical Computer Science, 102:135–163, 1992.

  • J. van de Pol and H. Schwichtenberg.

Strict functionals for termination proofs. In

  • M. Dezani-Ciancaglini and G. Plotkin, editors, Typed Lambda

Calculi and Applications, volume 902 of LNCS, pages 350–364. Springer Verlag, Berlin, Heidelberg, New York, 1995.

  • Y. Toyama, J.W. Klop, and H.P. Barendregt.

Termination for direct sums of left-linear complete term rewriting systems. Journal of the Association for Computing Machinery, 42(6):1275–1304, 1995.

49 / 52

slide-50
SLIDE 50

References

  • A. Pitts.

Relational Properties of Domains. Information and Computation, 127(2):66–90, 1996.

  • S. Berardi, M. Bezem, and T. Coquand.

On the computational content of the axiom of choice. Journal

  • f Symbolic Logic, 63(2):600–622, 1998.
  • F. Blanqui, J-P. Jouannaud, and M. Okada.

The calculus of algebraic constructions. In P. Narendran and

  • M. Rusinowitch, editors, Proceedings of RTA’99, number 1631

in LNCS, pages 301–316. Springer Verlag, Berlin, Heidelberg, New York, 1999.

50 / 52

slide-51
SLIDE 51

References

  • S. Valentini.

An elementary proof of strong normalisation for intersection

  • types. Archive for Mathematical Logic, 40(7):475–488, 2001.

B. A computational interpretation of open induction. Lics 2004. B. Strong normalization for applied lambda calculi. Logical Methods in Computer Science, 1(2):1–14, 2005.

51 / 52

slide-52
SLIDE 52

References

  • T. Coquand, A. Spiwack.

Proof of strong normalisation using domain theory. Lics 2006.

  • A. Abel.

Syntactical normalization for intersection types with term rewriting rules. In Fourth International Workshop on Higher-Order Rewriting, HOR’07, Paris, France, 25 June 2007, 2007. B. A domain model characterising strong normalisation. To appear in Annals of Pure and Applied Logic.

52 / 52