Propositional Equality and Identity Types

34
Identity Types in Type Theory Heyting’s explanation via proofs Direct Computations The Functional Interpretation of Propositional E Propositional Equality and Identity Types Ruy de Queiroz (joint work with Anjolina de Oliveira) Univ. Federal de Pernambuco, Recife, Brazil Seminar at Logic Group, TU Darmstadt 19 Aug 2013 Ruy de Queiroz (joint work with Anjolina de Oliveira) Univ. Federal de Pernambuco, Recife, Brazil Propositional Equality and Identity Types

description

Seminar given at the Logic Group, Technische Universität Darmstadt, 19 August 2013

Transcript of Propositional Equality and Identity Types

Page 1: Propositional Equality and Identity Types

Identity Types in Type Theory Heyting’s explanation via proofs Direct Computations The Functional Interpretation of Propositional Equality Normal form for equality proofs

Propositional Equality and Identity Types

Ruy de Queiroz(joint work with Anjolina de Oliveira)

Univ. Federal de Pernambuco, Recife, Brazil

Seminar at Logic Group, TU Darmstadt19 Aug 2013

Ruy de Queiroz (joint work with Anjolina de Oliveira) Univ. Federal de Pernambuco, Recife, Brazil

Propositional Equality and Identity Types

Page 2: Propositional Equality and Identity Types

Identity Types in Type Theory Heyting’s explanation via proofs Direct Computations The Functional Interpretation of Propositional Equality Normal form for equality proofs

Content

1 Identity Types in Type Theory

2 Heyting’s explanation via proofs

3 Direct Computations

4 The Functional Interpretation of Propositional Equality

5 Normal form for equality proofs

Ruy de Queiroz (joint work with Anjolina de Oliveira) Univ. Federal de Pernambuco, Recife, Brazil

Propositional Equality and Identity Types

Page 3: Propositional Equality and Identity Types

Identity Types in Type Theory Heyting’s explanation via proofs Direct Computations The Functional Interpretation of Propositional Equality Normal form for equality proofs

What is a proof of an equality statement?What is the formal counterpart of a proof of an equality?

In talking about proofs of an equality statement, two dichotomiesarise:

1 definitional equality versus propositional equality

2 intensional equality versus extensional equality

First step on the formalisation of proofs of equality statements: PerMartin-Lof’s Intuitionistic Type Theory (Log Coll ’73, published 1975)with the so-called Identity Type

Ruy de Queiroz (joint work with Anjolina de Oliveira) Univ. Federal de Pernambuco, Recife, Brazil

Propositional Equality and Identity Types

Page 4: Propositional Equality and Identity Types

Identity Types in Type Theory Heyting’s explanation via proofs Direct Computations The Functional Interpretation of Propositional Equality Normal form for equality proofs

Identity TypesIdentity Types - Topological and Categorical Structure

Workshop, Uppsala, November 13–14, 2006

“The identity type, the type of proof objects for thefundamental propositional equality, is one of the mostintriguing constructions of intensional dependent typetheory (also known as Martin-Lof type theory). Itscomplexity became apparent with the Hofmann–Streichergroupoid model of type theory. This model also hinted atsome possible connections between type theory andhomotopy theory and higher categories. Exploration of thisconnection is intended to be the main theme of theworkshop.”

Ruy de Queiroz (joint work with Anjolina de Oliveira) Univ. Federal de Pernambuco, Recife, Brazil

Propositional Equality and Identity Types

Page 5: Propositional Equality and Identity Types

Identity Types in Type Theory Heyting’s explanation via proofs Direct Computations The Functional Interpretation of Propositional Equality Normal form for equality proofs

Identity TypesType Theory and Homotopy Theory

Indeed, a whole new research avenue has since 2005 been exploredby people like Vladimir Voevodsky and Steve Awodey in trying tomake a bridge between type theory and homotopy theory, mainly viathe groupoid structure exposed in the Hofmann–Streicher (1994)countermodel to the principle of Uniqueness of Identity Proofs (UIP).This has open the way to, in Awodey’s words,

“a new and surprising connection between Geometry,Algebra, and Logic, which has recently come to light in theform of an interpretation of the constructive type theory ofPer Martin-Lof into homotopy theory, resulting in newexamples of certain algebraic structures which areimportant in topology”. (“Type Theory and Homotopy”,preprint, 2010.)

Ruy de Queiroz (joint work with Anjolina de Oliveira) Univ. Federal de Pernambuco, Recife, Brazil

Propositional Equality and Identity Types

Page 6: Propositional Equality and Identity Types

Identity Types in Type Theory Heyting’s explanation via proofs Direct Computations The Functional Interpretation of Propositional Equality Normal form for equality proofs

Identity TypesIdentity Types as Topological Spaces

According to B. van den Berg and R. Garner (“Topological andsimplicial models of identity types”, ACM Transactions onComputational Logic, Jan 2012),

“All of this work can be seen as an elaboration of thefollowing basic idea: that in Martin-Lof type theory, a type Ais analogous to a topological space; elements a,b ∈ A topoints of that space; and elements of an identity typep,q ∈ IdA(a,b) to paths or homotopies p,q : a→ b in A.”.

Ruy de Queiroz (joint work with Anjolina de Oliveira) Univ. Federal de Pernambuco, Recife, Brazil

Propositional Equality and Identity Types

Page 7: Propositional Equality and Identity Types

Identity Types in Type Theory Heyting’s explanation via proofs Direct Computations The Functional Interpretation of Propositional Equality Normal form for equality proofs

Identity TypesIdentity Types as Topological Spaces

From the Homotopy type theory collective book

(2013):

“In type theory, for every type A there is a (formerlysomewhat mysterious) type IdA of identifications of twoobjects of A; in homotopy type theory, this is just the pathspace AI of all continuous maps I → A from the unitinterval. In this way, a term p : IdA(a,b) represents a pathp : a b in A.”

Ruy de Queiroz (joint work with Anjolina de Oliveira) Univ. Federal de Pernambuco, Recife, Brazil

Propositional Equality and Identity Types

Page 8: Propositional Equality and Identity Types

Identity Types in Type Theory Heyting’s explanation via proofs Direct Computations The Functional Interpretation of Propositional Equality Normal form for equality proofs

Identity Types: IterationFrom Propositional to Predicate Logic and Beyond

In the same aforementioned workshop, B. van den Berg in hiscontribution “Types as weak omega-categories” draws attention to thepower of the identity type in the iterating types to form a globular set:

“Fix a type X in a context Γ. Define a globular set as follows:A0 consists of the terms of type X in context Γ,modulodefinitional equality; A1 consists of terms of the typesId(X ; p; q) (in context Γ) for elements p,q in A0, modulodefinitional equality; A2 consists of terms of well-formedtypes Id(Id(X ; p; q); r ; s) (in context Γ) for elements p,q inA0, r , s in A1, modulo definitional equality; etcetera...”

Ruy de Queiroz (joint work with Anjolina de Oliveira) Univ. Federal de Pernambuco, Recife, Brazil

Propositional Equality and Identity Types

Page 9: Propositional Equality and Identity Types

Identity Types in Type Theory Heyting’s explanation via proofs Direct Computations The Functional Interpretation of Propositional Equality Normal form for equality proofs

Identity Types: IterationThe homotopy interpretation

Here is how we can see the connections between proofs of equalityand homotopies:

a, b : Ap, q : IdA(a,b)α, β : IdIdA(a,b)(p,q)· · · : IdIdId...(· · · )

Now, consider the following

interpretation:

Types SpacesTerms Maps

a : A Points a : 1→ Ap : IdA(a,b) Paths p : a⇒ b

α : IdIdA(a,b)(p,q) Homotopies α : p V q

Ruy de Queiroz (joint work with Anjolina de Oliveira) Univ. Federal de Pernambuco, Recife, Brazil

Propositional Equality and Identity Types

Page 10: Propositional Equality and Identity Types

Identity Types in Type Theory Heyting’s explanation via proofs Direct Computations The Functional Interpretation of Propositional Equality Normal form for equality proofs

Propositional EqualityProofs of equality as (rewriting) computational paths

Motivated by looking at equalities in type theory as arising from theexistence of computational paths between two formal objects, ourpurpose here is to offer a different perspective on the role and thepower of the notion of propositional equality as formalised in theso-called Curry–Howard functional interpretation. The main ideagoes back to a paper entitled “Equality in labelled deductive systemsand the functional interpretation of propositional equality”, , presentedin Dec 1993 at the 9th Amsterdam Colloquium, and published in theproceedings in 1994.

Ruy de Queiroz (joint work with Anjolina de Oliveira) Univ. Federal de Pernambuco, Recife, Brazil

Propositional Equality and Identity Types

Page 11: Propositional Equality and Identity Types

Identity Types in Type Theory Heyting’s explanation via proofs Direct Computations The Functional Interpretation of Propositional Equality Normal form for equality proofs

Brouwer–Heyting–Kolmogorov InterpretationProofs rather than truth-values

a proof of the proposition: is given by:A ∧ B a proof of A and

a proof of BA ∨ B a proof of A or

a proof of BA→ B a function that turns a proof of A

into a proof of B∀xD.P(x) a function that turns an element a

into a proof of P(a)∃xD.P(x) an element a (witness)

and a proof of P(a)

Ruy de Queiroz (joint work with Anjolina de Oliveira) Univ. Federal de Pernambuco, Recife, Brazil

Propositional Equality and Identity Types

Page 12: Propositional Equality and Identity Types

Identity Types in Type Theory Heyting’s explanation via proofs Direct Computations The Functional Interpretation of Propositional Equality Normal form for equality proofs

Brouwer–Heyting–Kolmogorov Interpretation: FormallyCanonical proofs rather than truth-values

a proof of the proposition: has the canonical form of:A ∧ B 〈p,q〉 where p is a proof of A and

q is a proof of BA ∨ B inl(p) where p is a proof of A or

inr(q) where q is a proof of B(‘inl’ and ‘inr’ abbreviate‘into the left/right disjunct’)

A→ B λx .b(x) where b(p) is a proof of Bprovided p is a proof of A

∀xD.P(x) Λx .f (x) where f (a) is a proof of P(a)provided a is an arbitrary individual chosenfrom the domain D

∃xD.P(x) εx .(f (x),a) where a is a witnessfrom the domain D, f (a) is a proof of P(a)

Ruy de Queiroz (joint work with Anjolina de Oliveira) Univ. Federal de Pernambuco, Recife, Brazil

Propositional Equality and Identity Types

Page 13: Propositional Equality and Identity Types

Identity Types in Type Theory Heyting’s explanation via proofs Direct Computations The Functional Interpretation of Propositional Equality Normal form for equality proofs

Brouwer–Heyting–Kolmogorov InterpretationWhat is a proof of an equality statement?

a proof of the proposition: is given by:

t1 = t2 ?(Perhaps a sequence of rewritesstarting from t1 and ending in t2?)

What is the logical status of the symbol “=”?What would be a canonical/direct proof of t1 = t2?

Ruy de Queiroz (joint work with Anjolina de Oliveira) Univ. Federal de Pernambuco, Recife, Brazil

Propositional Equality and Identity Types

Page 14: Propositional Equality and Identity Types

Identity Types in Type Theory Heyting’s explanation via proofs Direct Computations The Functional Interpretation of Propositional Equality Normal form for equality proofs

Statman’s Direct ComputationsTerms, Equations, Measure

Definition (equations and systems of equations)

Let us consider equations E between individual termsa,b, c, . . ., possibly containing function variables, and finite setsof equations S.

Definition (measure)

A function M from terms to non-negative integers is called ameasure if M(a) ≤ M(b) implies M(c[a/x ]) ≤ M(c[b/x ]), and,whenever x occurs in c, M(a) ≤ M(c[a/x ]).

Ruy de Queiroz (joint work with Anjolina de Oliveira) Univ. Federal de Pernambuco, Recife, Brazil

Propositional Equality and Identity Types

Page 15: Propositional Equality and Identity Types

Identity Types in Type Theory Heyting’s explanation via proofs Direct Computations The Functional Interpretation of Propositional Equality Normal form for equality proofs

Statman’s Direct ComputationsKreisel–Tait’s calculus K

Definition (calculus K )

The calculus K of Kreisel and Tait consists of the axioms a = a andthe rule of substituting equals for equals:

(1)E [a/x ] a .

= bE [b/x ]

where a .= b is, ambiguously, a = b and b = a, together with the rules

(2)sa = sba = b

(3)0 = sab = c

(4)a = snab = c

H will be the system consisting only of the rule (1)

Ruy de Queiroz (joint work with Anjolina de Oliveira) Univ. Federal de Pernambuco, Recife, Brazil

Propositional Equality and Identity Types

Page 16: Propositional Equality and Identity Types

Identity Types in Type Theory Heyting’s explanation via proofs Direct Computations The Functional Interpretation of Propositional Equality Normal form for equality proofs

Statman’s Direct ComputationsComputations, Direct Computations

Definition (computation)

Computations T in K or H are binary trees of equationoccurrences built up from assumptions and axioms accordingto the rules.

Definition (direct computation)

If M is a measure, we say that a computation T of E from S isM-direct if for each term b occurring in T there is a term coccurring in E or S with M(b) ≤ M(c).

Ruy de Queiroz (joint work with Anjolina de Oliveira) Univ. Federal de Pernambuco, Recife, Brazil

Propositional Equality and Identity Types

Page 17: Propositional Equality and Identity Types

Identity Types in Type Theory Heyting’s explanation via proofs Direct Computations The Functional Interpretation of Propositional Equality Normal form for equality proofs

The Functional Interpretation of Propositional EqualityCurry–Howard and Labelled Deduction

Our aims:Using Gentzen’s methods for equality reasoning(Statman’77)Addressing the dichotomy: definitional vs. propositionalGiving an alternative to the ‘Equality/Identity Type’ ofMartin-Lof’s Type Theory

Ruy de Queiroz (joint work with Anjolina de Oliveira) Univ. Federal de Pernambuco, Recife, Brazil

Propositional Equality and Identity Types

Page 18: Propositional Equality and Identity Types

Identity Types in Type Theory Heyting’s explanation via proofs Direct Computations The Functional Interpretation of Propositional Equality Normal form for equality proofs

The Functional Interpretation of EqualitySequences of conversions

(λx .(λy .yx)(λw .zw))v .η (λx .(λy .yx)z)v .β (λy .yv)z .β zv(λx .(λy .yx)(λw .zw))v .β (λx .(λw .zw)x)v .η (λx .zx)v .β zv(λx .(λy .yx)(λw .zw))v .β (λx .(λw .zw)x)v .β (λw .zw)v .η zv

There is at least one sequence of conversions from the initial term tothe final term. (In this case we have given three!) Thus, in the formaltheory of λ-calculus, the term (λx .(λy .yx)(λw .zw))v is declared to beequal to zv .Now, some natural questions arise:

1 Are the sequences themselves normal?

2 Are there non-normal sequences?

3 If yes, how are the latter to be identified and (possibly)normalised?

4 What happens if general rules of equality are involved?Ruy de Queiroz (joint work with Anjolina de Oliveira) Univ. Federal de Pernambuco, Recife, Brazil

Propositional Equality and Identity Types

Page 19: Propositional Equality and Identity Types

Identity Types in Type Theory Heyting’s explanation via proofs Direct Computations The Functional Interpretation of Propositional Equality Normal form for equality proofs

The Functional Interpretation of EqualityPropositional equality

Definition (Hindley & Seldin 2008)

P is β-equal or β-convertible to Q (notation P =β Q) iff Q isobtained from P by a finite (perhaps empty) series ofβ-contractions and reversed β-contractions and changes ofbound variables. That is, P =β Q iff there exist P0, . . . ,Pn(n ≥ 0) such thatP0 ≡ P, Pn ≡ Q,(∀i ≤ n − 1)(Pi .1β Pi+1 or Pi+1 .1β Pi or Pi ≡α Pi+1).

NB: equality with an existential force.

Ruy de Queiroz (joint work with Anjolina de Oliveira) Univ. Federal de Pernambuco, Recife, Brazil

Propositional Equality and Identity Types

Page 20: Propositional Equality and Identity Types

Identity Types in Type Theory Heyting’s explanation via proofs Direct Computations The Functional Interpretation of Propositional Equality Normal form for equality proofs

The Functional Interpretation of EqualityGentzen’s ND for propositional equality

Remark

In setting up a set of Gentzen’s ND-style rules for equality weneed to account for:

1 definitional versus propositional equality;2 there may be more than one normal proof of a certain

equality statement;3 given a (possibly non-normal) proof, the process of

bringing it to a normal form should be finite and confluent.

Ruy de Queiroz (joint work with Anjolina de Oliveira) Univ. Federal de Pernambuco, Recife, Brazil

Propositional Equality and Identity Types

Page 21: Propositional Equality and Identity Types

Identity Types in Type Theory Heyting’s explanation via proofs Direct Computations The Functional Interpretation of Propositional Equality Normal form for equality proofs

The Functional Interpretation of Direct ComputationEquality in Type Theory

Martin-Lof’s Intuitionistic Type Theory :Intensional (1975)Extensional (1982(?), 1984)

Remark (Definitional vs. Propositional Equality)

definitional, i.e. those equalities that are given as rewriterules, orelse originate from general functional principles(e.g. β, η, ξ, µ, ν, etc.);propositional, i.e. the equalities that are supported (orotherwise) by an evidence (a sequence of substitutionsand/or rewrites)

Ruy de Queiroz (joint work with Anjolina de Oliveira) Univ. Federal de Pernambuco, Recife, Brazil

Propositional Equality and Identity Types

Page 22: Propositional Equality and Identity Types

Identity Types in Type Theory Heyting’s explanation via proofs Direct Computations The Functional Interpretation of Propositional Equality Normal form for equality proofs

The Functional Interpretation of Direct ComputationDefinitional Equality

Definition (Hindley & Seldin 2008)

(α) λx .M = λy .[y/x ]M (y /∈ FV (M))(β) (λx .M)N = [N/x ]M(η) (λx .Mx) = M (x /∈ FV (M))

(ξ)M = M ′

λx .M = λx .M ′

(µ)M = M ′

NM = NM ′

(ν)M = M ′

MN = M ′N(ρ) M = M

(σ)M = NN = M

(τ)M = N N = P

M = P

Ruy de Queiroz (joint work with Anjolina de Oliveira) Univ. Federal de Pernambuco, Recife, Brazil

Propositional Equality and Identity Types

Page 23: Propositional Equality and Identity Types

Identity Types in Type Theory Heyting’s explanation via proofs Direct Computations The Functional Interpretation of Propositional Equality Normal form for equality proofs

The Functional Interpretation of Direct ComputationIntuitionistic Type Theory

→-introduction

[x : A]

f (x) = g(x) : Bλx .f (x) = λx .g(x) : A→ B

(ξ)

→-eliminationx = y : A g : A→ B

gx = gy : B(µ)

x : A g = h : A→ Bgx = hx : B

(ν)

→-reduction a : A[x : A]

b(x) : B(λx .b(x))a = b(a/x) : B (β)

c : A→ Bλx .cx = c : A→ B

(η)

Role of ξ: Bishop’s constructive principles.Role of η: “[In CL] All it says is that every term is equal to anabstraction” [Hindley & Seldin, 1986]

Ruy de Queiroz (joint work with Anjolina de Oliveira) Univ. Federal de Pernambuco, Recife, Brazil

Propositional Equality and Identity Types

Page 24: Propositional Equality and Identity Types

Identity Types in Type Theory Heyting’s explanation via proofs Direct Computations The Functional Interpretation of Propositional Equality Normal form for equality proofs

The Functional Interpretation of Direct ComputationsLessons from Curry–Howard and Type Theory

Harmonious combination of logic and λ-calculus;

Proof terms as ‘record of deduction steps’,

Function symbols as first class citizens.

Cp.

∃xP(x)

[P(t)]

CC

with

∃xP(x)

[t : D, f (t) : P(t)]

g(f , t) : C? : C

in the term ‘?’ the variable f gets abstracted from, and this enforces akind of generality to f , even if this is not brought to the ‘logical’ level.

Ruy de Queiroz (joint work with Anjolina de Oliveira) Univ. Federal de Pernambuco, Recife, Brazil

Propositional Equality and Identity Types

Page 25: Propositional Equality and Identity Types

Identity Types in Type Theory Heyting’s explanation via proofs Direct Computations The Functional Interpretation of Propositional Equality Normal form for equality proofs

The Functional Interpretation of Direct ComputationsLabelled Deduction

to find a unifying framework factoring out meta- fromobject- level features;to keep the logic (and logical steps, for that matter) simple,handling meta-level features via a separate, yetharmonious calculus;to make sure the relevant assumptions in a deduction areuncovered, paying more attention to the explicitation anduse of resources.

Ruy de Queiroz (joint work with Anjolina de Oliveira) Univ. Federal de Pernambuco, Recife, Brazil

Propositional Equality and Identity Types

Page 26: Propositional Equality and Identity Types

Identity Types in Type Theory Heyting’s explanation via proofs Direct Computations The Functional Interpretation of Propositional Equality Normal form for equality proofs

The Functional Interpretation of Direct ComputationsEquality in Intensional Type Theory

A type a : A b : A

Id intA (a,b) type

Id int -formation

a : A

r(a) : Id intA (a,a)

Id int -introductiona = b : A

r(a) : Id intA (a,b)

Id int -introduction

a : A b : A c : Id intA (a,b)

[x : A]

d(x) : C(x , x ,r(x))

[x : A, y : A, z : Id intA (x , y)]

C(x , y , z) typeJ(c,d) : C(a,b, c)

Id int -elim

a : A[x : A]

d(x) : C(x , x ,r(x))

[x : A, y : A, z : Id intA (x , y)]

C(x , y , z) typeJ(r(a),d(x)) = d(a/x) : C(a,a,r(a))

Id int -equality

Ruy de Queiroz (joint work with Anjolina de Oliveira) Univ. Federal de Pernambuco, Recife, Brazil

Propositional Equality and Identity Types

Page 27: Propositional Equality and Identity Types

Identity Types in Type Theory Heyting’s explanation via proofs Direct Computations The Functional Interpretation of Propositional Equality Normal form for equality proofs

The Functional Interpretation of Direct ComputationsEquality in Extensional Type Theory

A type a : A b : AIdext

A (a,b) typeIdext -formation

a = b : Ar : Idext

A (a,b)Idext -introduction

c : IdextA (a,b)

a = b : AIdext -elimination

c : IdextA (a,b)

c = r : IdextA (a,b)

Idext -elimination

Ruy de Queiroz (joint work with Anjolina de Oliveira) Univ. Federal de Pernambuco, Recife, Brazil

Propositional Equality and Identity Types

Page 28: Propositional Equality and Identity Types

Identity Types in Type Theory Heyting’s explanation via proofs Direct Computations The Functional Interpretation of Propositional Equality Normal form for equality proofs

The Functional Interpretation of Direct ComputationsThe missing entity

Considering the lessons learned from Type Theory, thejudgement of the form:

a = b : Awhich says that a and b are equal elements from domain D, letus add a function symbol:

a =s b : Awhere one is to read: a is equal to b because of ‘s’ (‘s’ beingthe rewrite reason); ‘s’ is a term denoting a sequence ofequality identifiers (β, η, ξ, etc.), i.e. a composition of rewrites.In other words, ‘s’ is the computational path from a to b.

Ruy de Queiroz (joint work with Anjolina de Oliveira) Univ. Federal de Pernambuco, Recife, Brazil

Propositional Equality and Identity Types

Page 29: Propositional Equality and Identity Types

Identity Types in Type Theory Heyting’s explanation via proofs Direct Computations The Functional Interpretation of Propositional Equality Normal form for equality proofs

The Functional Interpretation of Direct ComputationsPropositional Equality

Id-introductiona =s b : A

s(a,b) : IdA(a,b)

Id-elimination

m : IdA(a,b)

[a =g b : A]

h(g) : CREWR(m, g.h(g)) : C

Id-reductiona =s b : A

s(a,b) : IdA(a,b)Id-intr

[a =g b : A]

h(g) : CREWR(s(a,b), g.h(g)) : C

Id-elim

.β[a =s b : A]

h(s/g) : C

Ruy de Queiroz (joint work with Anjolina de Oliveira) Univ. Federal de Pernambuco, Recife, Brazil

Propositional Equality and Identity Types

Page 30: Propositional Equality and Identity Types

Identity Types in Type Theory Heyting’s explanation via proofs Direct Computations The Functional Interpretation of Propositional Equality Normal form for equality proofs

The Functional Interpretation of Direct ComputationsPropositional Equality: A Simple Example of a Proof

By way of example, let us prove

Πx : AΠy : A(IdA(x , y)→ IdA(y , x))

[p : IdA(x , y)]

[x =t y : A]

y =σ(t) x : A(σ(t))(y , x) : IdA(y , x)

REWR(p, t(σ(t))(y , x)) : IdA(y , x)

λp.REWR(p, t(σ(t))(y , x)) : IdA(x , y)→ IdA(y , x)

λy .λp.REWR(p, t(σ(t))(y , x)) : Πy : A(IdA(x , y)→ IdA(y , x))

λx .λy .λp.REWR(p, t(σ(t))(y , x)) : Πx : AΠy : A(IdA(x , y)→ IdA(y , x))

Ruy de Queiroz (joint work with Anjolina de Oliveira) Univ. Federal de Pernambuco, Recife, Brazil

Propositional Equality and Identity Types

Page 31: Propositional Equality and Identity Types

Identity Types in Type Theory Heyting’s explanation via proofs Direct Computations The Functional Interpretation of Propositional Equality Normal form for equality proofs

The Functional Interpretation of Direct ComputationsRule of Substitution

x =g y : A f (x) : P(x)

g(x , y) · f (x) : P(y)

Ruy de Queiroz (joint work with Anjolina de Oliveira) Univ. Federal de Pernambuco, Recife, Brazil

Propositional Equality and Identity Types

Page 32: Propositional Equality and Identity Types

Identity Types in Type Theory Heyting’s explanation via proofs Direct Computations The Functional Interpretation of Propositional Equality Normal form for equality proofs

The Functional Interpretation of Direct ComputationsNormal form for the rewrite reasons

Strategy:

Analyse possibilities of redundancyConstruct a rewriting systemProve termination and confluence

Ruy de Queiroz (joint work with Anjolina de Oliveira) Univ. Federal de Pernambuco, Recife, Brazil

Propositional Equality and Identity Types

Page 33: Propositional Equality and Identity Types

Identity Types in Type Theory Heyting’s explanation via proofs Direct Computations The Functional Interpretation of Propositional Equality Normal form for equality proofs

The Functional Interpretation of Direct ComputationsNormal form for the rewrite reasons

Definition (equation)

An equation in our LNDEQ is of the form:

s =r t : A

where s and t are terms, r is the identifier for the rewrite reason, andA is the type (formula).

Definition (system of equations)

A system of equations S is a set of equations:

{s1 =r1 t1 : A1, . . . , sn =rn tn : An}

where ri is the rewrite reason identifier for the i th equation in S.

Ruy de Queiroz (joint work with Anjolina de Oliveira) Univ. Federal de Pernambuco, Recife, Brazil

Propositional Equality and Identity Types

Page 34: Propositional Equality and Identity Types

Identity Types in Type Theory Heyting’s explanation via proofs Direct Computations The Functional Interpretation of Propositional Equality Normal form for equality proofs

The Functional Interpretation of Direct ComputationsNormal form for the rewrite reasons

Definition (rewrite reason)

Given a system of equations S and an equation s =r t : A, ifS ` s =r t : A, i.e. there is a deduction/computation of theequation starting from the equations in S, then the rewritereason r is built up from:(i) the constants for rewrite reasons: { ρ, σ, τ, β, η, ν, ξ, µ };(ii) the ri ’s;using the substitution operations:(iii) subL;(iv) subR;and the operations for building new rewrite reasons:(v) σ, τ , ξ, µ.

Ruy de Queiroz (joint work with Anjolina de Oliveira) Univ. Federal de Pernambuco, Recife, Brazil

Propositional Equality and Identity Types