Propositional Equality, Identity Types and Homotopies
1. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
Propositional Equality, Identity Types
and Homotopies
Ruy de Queiroz
(joint work with Anjolina de Oliveira)
Centro de Inform´atica
Universidade Federal de Pernambuco (UFPE)
Recife, Brazil
Computer Science Colloquium
Indiana University
24 July 2015
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
2. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
Homotopy Type Theory
Univalent Foundations of Mathematics
Institute for Advanced Study, Princeton
484–600p. Open-source book: 27 main authors. 58
contributors
Available on GitHub. Latest version March 2014Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
3. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
Homotopy Type Theory
Univalent Foundations of Mathematics
“Homotopy type theory is a new branch of
mathematics that combines aspects of several
different fields in a surprising way. It is based on a
recently discovered connection between homotopy
theory and type theory. It touches on topics as
seemingly distant as the homotopy groups of spheres,
the algorithms for type checking, and the definition of
weak ∞-groupoids.”
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
4. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
Geometry and Logic
Alexander Grothendieck
Alexander Grothendieck
B. 28 March 1928 Berlin, Prussia, Germany
D. 13 November 2014 (aged 86) Saint-Girons, Ari`ege, France
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
5. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
Geometry and Logic
Alexander Grothendieck
. . . the study of n-truncated homotopy types (of
semisimplicial sets, or of topological spaces) [should
be] essentially equivalent to the study of so-called
n-groupoids. . . . This is expected to be achieved by
associating to any space (say) X its “fundamental
n-groupoid” Πn(X).... The obvious idea is that
0-objects of Πn(X) should be the points of X,
1-objects should be “homotopies” or paths between
points, 2-objects should be homotopies between
1-objects, etc.
(Grothendieck 1983)
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
6. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
Geometry and Logic
Vladimir Voevodsky
“Some of the ways to approach the notion of space in
mathematics:
1 topological spaces
2 metric spaces
3 homotopy theory (starts from points and paths)”
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
7. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
Geometry and Logic
Vladimir Voevodsky
“From an observation by Grothendieck:
Formalism of higher equivalences (theory of grupoids)
=
Homotopy theory (theory of shapes up to a
deformation)
Combined with some other ideas it: leads to an encoding of
mathematics in terms of the homotopy theory. Unlike the usual
encodings in terms of the set theory this one respects
equivalences.”
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
8. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
Equality as a Structure, not a Relation
Vladimir Voevodsky
“An equality between two abstract sets is not a relation but a
structure. It is not expressed by an assertion of a proposition
but by presenting an element of a set of possible equalities.
For example, the abstract sets corresponding to the sets {A, B}
and {C, D} can be equal either through the correspondence
that takes A to C and B to D or through the one that takes A to
D and B to C. This is one of the ways in which abstract sets are
not “things”.”
The Paul Bernays Lectures, September 2014, ETH Zurich
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
9. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
Content
1 What is a Proof of an Equality?
2 Brouwer–Heyting–Kolmogorov for Equality
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)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
10. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
Type Theory and Equality
Four Judgements
In type theory, there are 4 kinds of judgements:
1 A type
2 x : A
3 x = y : A
4 A = B
Via the so-called Curry-Howard interpretation, “x : A” can be read as
“x is a proof of proposition A”.
Also, “x = y : A” can be read as “x and y are (definitionally) equal
proofs of proposition A”.
What about the judgement of “p is a proof of the statement that x and
y are equal elements of type A”? This is where the so-called Identity
type comes into the picture:
p : IdA(x, y)
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
11. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
Type Theory and its Derivations-as-Terms
Interpretation
Howard on Curry-Howard
“ [de Bruijn] discovered the idea of derivations as
terms, and the accompanying idea of
formulae-as-types, on his own. (...)
Martin-L¨of suggested that the derivations-as-terms
idea would work particularly well in connection with
Prawitz’s theory of natural deduction.” (W.Howard,
Wadler’s Blog, 2014)
Since the early 1990’s, our focus has been on insisting on the
derivations-as-terms perspective, especially wrt to
propositional equality.
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
12. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
Type Theory and Homotopy Theory
Steve Awodey
“The purpose of this informal survey article is to introduce the
reader to a new and surprising connection between Geometry,
Algebra, and Logic, which has recently come to light in the form
of an interpretation of the constructive type theory of Per
Martin-L¨of into homotopy theory, resulting in new examples of
certain algebraic structures which are important in topology.
This connection was discovered quite recently, and various
aspects of it are now under active investigation by several
researchers.”
(“Type Theory and Homotopy Theory”, 2010.)
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
13. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
Algebraic Structure: Groupoids
Steve Awodey
“A groupoid is like a group, but with a partially-defined
composition operation. Precisely, a groupoid can be defined as
a category in which every arrow has an inverse. A group is thus
a groupoid with only one object. Groupoids arise in topology as
generalized fundamental groups, not tied to a choice of
basepoint.”
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
14. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
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 dichotomies
arise:
1 definitional equality versus propositional equality
2 intensional equality versus extensional equality
First step on the formalisation of proofs of equality statements: Per
Martin-L¨of’s Intuitionistic Type Theory (Log Coll ’73, published 1975)
with the so-called Identity Type
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
15. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
Identity Types
Identity Types - Topological and Categorical Structure
Workshop, Uppsala, November 13–14, 2006
“The identity type, the type of proof objects for the
fundamental propositional equality, is one of the most
intriguing constructions of intensional dependent type
theory (also known as Martin-L¨of type theory). Its
complexity became apparent with the Hofmann–Streicher
groupoid model of type theory. This model also hinted at
some possible connections between type theory and
homotopy theory and higher categories. Exploration of this
connection is intended to be the main theme of the
workshop.”
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
16. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
Identity Types
Type Theory and Homotopy Theory
Indeed, a whole new research avenue has since 2005 been explored
by people like Vladimir Voevodsky and Steve Awodey in trying to
make a bridge between type theory and homotopy theory, mainly via
the groupoid structure exposed in the Hofmann–Streicher (1994)
countermodel to the principle of Uniqueness of Identity Proofs (UIP).
In Hofmann & Streicher’s own words,
“We give a model of intensional Martin-L¨of type theory
based on groupoids and fibrations of groupoids in which
identity types may contain two distinct elements which are
not even propositionally equal. This shows that the principle
of uniqueness of identity proofs is not derivable in the
syntax”. (“LICS ’94, pp. 208–212.)
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
17. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
Identity Types
Identity Types as Topological Spaces
According to B. van den Berg and R. Garner (“Topological and
simplicial models of identity types”, ACM Transactions on
Computational Logic, Jan 2012),
“All of this work can be seen as an elaboration of the
following basic idea: that in Martin-L¨of type theory, a type A
is analogous to a topological space; elements a, b ∈ A to
points of that space; and elements of an identity type
p, q ∈ IdA(a, b) to paths or homotopies p, q : a → b in A.”.
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
18. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
Identity Types
Identity Types as Topological Spaces
From the Homotopy type theory collective book (2013):
“In type theory, for every type A there is a (formerly
somewhat mysterious) type IdA of identifications of two
objects of A; in homotopy type theory, this is just the path
space AI
of all continuous maps I → A from the unit
interval. In this way, a term p : IdA(a, b) represents a path
p : a b in A.”
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
19. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
Identity Types: Iteration
From Propositional to Predicate Logic and Beyond
In the same aforementioned workshop, B. van den Berg in his
contribution “Types as weak omega-categories” draws attention to the
power 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 Γ,modulo
definitional equality; A1 consists of terms of the types
Id(X; p; q) (in context Γ) for elements p, q in A0, modulo
definitional equality; A2 consists of terms of well-formed
types Id(Id(X; p; q); r; s) (in context Γ) for elements p, q in
A0, r, s in A1, modulo definitional equality; etcetera...”
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
20. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
Identity Types: Iteration
The homotopy interpretation
Here is how we can see the connections between proofs of equality
and homotopies:
a, b : A
p, q : IdA(a, b)
α, β : IdIdA(a,b)(p, q)
· · · : IdIdId...
(· · · )
Now, consider the following interpretation:
Types Spaces
Terms Maps
a : A Points a : 1 → A
p : IdA(a, b) Paths p : a ⇒ b
α : IdIdA(a,b)(p, q) Homotopies α : p q
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
21. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
Identity Types
Univalent Foundations of Mathematics
From Vladimir Voevodsky (IAS, Princeton) “Univalent
Foundations: New Foundations of Mathematics”, Mar 26, 2014:
“There were two main problems with the existing
foundational systems which made them inadequate.
Firstly, existing foundations of mathematics were
based on the languages of Predicate Logic and
languages of this class are too limited.
Secondly, existing foundations could not be used to
directly express statements about such objects as, for
example, the ones that my work on 2-theories was
about.”
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
22. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
Identity Types
Univalent Foundations of Mathematics
From Vladimir Voevodsky (IAS, Princeton) “Univalent
Foundations: New Foundations of Mathematics”, Mar 26, 2014:
“Univalent Foundations, like ZFC-based foundations
and unlike category theory, is a complete foundational
system, but it is very different from ZFC. To provide a
format for comparison let me suppose that any
foundation for mathematics adequate both for human
reasoning and for computer verification should have
the following three components.”
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
23. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
Identity Types
Univalent Foundations of Mathematics
From Vladimir Voevodsky (IAS, Princeton), “Univalent
Foundations: New Foundations of Mathematics”, Mar 26, 2014:
“The first component is a formal deduction system: a
language and rules of manipulating sentences in this
language that are purely formal, such that a record of
such manipulations can be verified by a computer
program.
The second component is a structure that provides a
meaning to the sentences of this language in terms of
mental objects intuitively comprehensible to humans.
The third component is a structure that enables
humans to encode mathematical ideas in terms of the
objects directly associated with the language.”
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
24. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
Propositional Equality
Proofs of equality as (rewriting) computational paths
What is a proof of an equality statement? In what sense it can be
seen as a homotopy? Motivated by looking at equalities in type
theory as arising from the existence of computational paths between
two formal objects, it may be useful to review the role and the power
of the notion of propositional equality as formalised in the so-called
Curry–Howard functional interpretation.
The main idea, i.e. proofs of equality statements as (reversible)
sequences of rewrites, goes back to a paper entitled “Equality in
labelled deductive systems and the functional interpretation of
propositional equality”, , presented in Dec 1993 at the 9th Amsterdam
Colloquium, and published in the proceedings in 1994.
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
25. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
Brouwer–Heyting–Kolmogorov Interpretation
Proofs rather than truth-values
a proof of the proposition: is given by:
A ∧ B a proof of A and
a proof of B
A ∨ B a proof of A or
a proof of B
A → 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)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
26. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
Brouwer–Heyting–Kolmogorov Interpretation: Formally
Canonical 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 B
A ∨ 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 B
provided 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 chosen
from the domain D
∃xD
.P(x) f(a), a where a is a witness
from the domain D, f(a) is a proof of P(a)
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
27. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
Brouwer–Heyting–Kolmogorov Interpretation
What is a proof of an equality statement?
a proof of the proposition: is given by:
t1 = t2 ?
(Perhaps a sequence of rewrites
starting 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)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
28. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
Statman’s Direct Computations
Terms, Equations, Measure
Definition (equations and systems of equations)
Let us consider equations E between individual terms
a, b, c, . . ., possibly containing function variables, and finite sets
of equations S.
Definition (measure)
A function M from terms to non-negative integers is called a
measure 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)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
29. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
Statman’s Direct Computations
Kreisel–Tait’s calculus K
Definition (calculus K)
The calculus K of Kreisel and Tait consists of the axioms a = a and
the rule of substituting equals for equals:
(1)
E[a/x] a
.
= b
E[b/x]
where a
.
= b is, ambiguously, a = b and b = a, together with the rules
(2)
sa = sb
a = b
(3)
0 = sa
b = c
(4)
a = sn
a
b = c
H will be the system consisting only of the rule (1)
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
30. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
The Functional Interpretation of Equality
Sequences 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 to
the final term. (In this case we have given three!) Thus, in the formal
theory of λ-calculus, the term (λx.(λy.yx)(λw.zw))v is declared to be
equal 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)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
31. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
The Functional Interpretation of Equality
Propositional equality
Definition (Hindley & Seldin 2008)
P is β-equal or β-convertible to Q (notation P =β Q) iff Q is
obtained from P by a finite (perhaps empty) series of
β-contractions and reversed β-contractions and changes of
bound variables. That is, P =β Q iff there exist P0, . . . , Pn
(n ≥ 0) such that
P0 ≡ 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.
NB: equality as the reflexive, symmetric and transitive closure
of 1-step contraction: arising from rewriting
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
32. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
The Functional Interpretation of Direct Computation
Equality: Existential Force and Rewriting Path
The same happens with λβη-equality:
Definition 7.5 (λβη-equality) (Hindley & Seldin 2008)
The equality-relation determined by the theory λβη is
called =βη; that is, we define
M =βη N ⇔ λβη M = N.
Note again that two terms are λβη-equal if there exists a proof
of their equality in the theory of λβη-equality.
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
33. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
The Functional Interpretation of Equality
Gentzen’s ND for propositional equality
Remark
In setting up a set of Gentzen’s ND-style rules for equality we
need 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)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
34. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
The Functional Interpretation of Direct Computation
Equality in Type Theory
Martin-L¨of’s Intuitionistic Type Theory:
Intensional (1975)
Extensional (1982(?), 1984)
Remark (Definitional vs. Propositional Equality)
definitional, i.e. those equalities that are given as rewrite
rules, orelse originate from general functional principles
(e.g. β, η, ξ, µ, ν, etc.);
propositional, i.e. the equalities that are supported (or
otherwise) by an evidence (a sequence of substitutions
and/or rewrites)
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
35. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
The Functional Interpretation of Direct Computation
Definitional 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 = N
N = M
(τ)
M = N N = P
M = P
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
36. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
The Functional Interpretation of Direct Computation
Intuitionistic Type Theory
→-introduction
[x : A]
f(x) = g(x) : B
λx.f(x) = λx.g(x) : A → B
(ξ)
→-elimination
x = y : A g : A → B
gx = gy : B
(µ)
x : A g = h : A → B
gx = 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
(η)
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
37. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
The Functional Interpretation of Direct Computations
Lessons from Curry–Howard and Type Theory
Harmonious combination of logic and λ-calculus;
Proof terms as ‘record of deduction steps’, i.e.
‘deductions-as-terms’
Function symbols as first class citizens.
Cp.
∃xP(x)
[P(t)]
C
C
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 a
kind of generality to f, even if this is not brought to the ‘logical’ level.Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
38. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
The Functional Interpretation of Direct Computations
Equality in Martin-L¨of’s Intensional Type Theory
A type a : A b : A
Idint
A (a, b) type
Idint
-formation
a : A
r(a) : Idint
A (a, a)
Idint
-introduction
a = b : A
r(a) : Idint
A (a, b)
Idint
-introduction
a : A b : A c : Idint
A (a, b)
[x:A]
d(x):C(x,x,r(x))
[x:A,y:A,z:Idint
A (x,y)]
C(x,y,z) type
J(c, d) : C(a, b, c)
Idint
-elimination
a : A
[x : A]
d(x) : C(x, x, r(x))
[x : A, y : A, z : Idint
A (x, y)]
C(x, y, z) type
J(r(a), d(x)) = d(a/x) : C(a, a, r(a))
Idint
-equality
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
39. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
The Functional Interpretation of Direct Computations
Equality in Martin-L¨of’s Extensional Type Theory
A type a : A b : A
Idext
A (a, b) type
Idext
-formation
a = b : A
r : Idext
A (a, b)
Idext
-introduction
c : Idext
A (a, b)
a = b : A
Idext
-elimination
c : Idext
A (a, b)
c = r : Idext
A (a, b)
Idext
-equality
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
40. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
The Functional Interpretation of Direct Computations
The missing entity
Considering the lessons learned from Type Theory, the
judgement of the form:
a = b : A
which says that a and b are equal elements from domain D, let
us add a function symbol:
a =s b : A
where one is to read: a is equal to b because of ‘s’ (‘s’ being
the rewrite reason); ‘s’ is a term denoting a sequence of
equality identifiers (β, η, ξ, etc.), i.e. a composition of rewrites.
In other words, ‘s’ is the computational path from a to b.
(This formal entity is missing in both of Martin-L¨of’s
formulations of Identity Types.)
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
41. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
The Functional Interpretation of Direct Computations
Propositional Equality
Id-introduction
a =s b : A
s(a, b) : IdA(a, b)
Id-elimination
m : IdA(a, b)
[a =g b : A]
h(g) : C
J(m, λg.h(g)) : C
Id-reduction
a =s b : A
s(a, b) : IdA(a, b)
Id-intr
[a =g b : A]
h(g) : C
J(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)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
42. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
The Functional Interpretation of Direct Computations
Propositional Equality: A Simple Example of a Proof
By way of example, let us prove
ΠxA
ΠyA
(IdA(x, y) → IdA(y, x))
[p : IdA(x, y)]
[x =t y : A]
y =σ(t) x : A
(σ(t))(y, x) : IdA(y, x)
J(p, λt(σ(t))(y, x)) : IdA(y, x)
λp.J(p, λt(σ(t))(y, x)) : IdA(x, y) → IdA(y, x)
λy.λp.J(p, λt(σ(t))(y, x)) : ΠyA(IdA(x, y) → IdA(y, x))
λx.λy.λp.J(p, λt(σ(t))(y, x)) : ΠxAΠyA(IdA(x, y) → IdA(y, x))
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
43. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
The Functional Interpretation of Direct Computations
Propositional Equality: The Groupoid Laws
With the formulation of propositional equality that we have just
defined, we can also prove that all elements of an identity type
obey the groupoid laws, namely
1 Associativity
2 Existence of an identity element
3 Existence of inverses
Also, the groupoid operation, i.e. composition of
paths/sequences, is actually, partial, meaning that not all
elements will be connected via a path. (The groupoid
interpretation refutes the Uniqueness of Identity Proofs.)
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
44. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
The Functional Interpretation of Direct Computations
Propositional Equality: The Uniqueness of Identity Proofs
“We will call UIP (Uniqueness of Identity Proofs) the following
property. If a1, a2 are objects of type A then for any proofs p
and q of the proposition “a1 equals a2” there is another proof
establishing equality of p and q. (...) Notice that in traditional
logical formalism a principle like UIP cannot even be sensibly
expressed as proofs cannot be referred to by terms of the
object language and thus are not within the scope of
propositional equality.” (Hofmann & Streicher 1996)
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
45. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
The Functional Interpretation of Direct Computations
Normal form for the rewrite reasons
Strategy:
Analyse possibilities of redundancy
Construct a rewriting system
Prove termination and confluence
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
46. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
The Functional Interpretation of Direct Computations
Normal 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, and
A 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 ith equation in S.
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
47. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
The Functional Interpretation of Direct Computations
Normal form for the rewrite reasons
Definition (rewrite reason)
Given a system of equations S and an equation s =r t : A, if
S s =r t : A, i.e. there is a deduction/computation of the
equation starting from the equations in S, then the rewrite
reason 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)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
48. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
The Functional Interpretation of Direct Computations
Normal form for the rewrite reasons
Definition (general rules of equality)
The general rules for equality (reflexivity, symmetry and
transitivity) are defined as follows:
x : A
x =ρ x : A
(reflexivity)
x =t y : A
y =σ(t) x : A
(symmetry)
x =t y : A y =u z : A
x =τ(t,u) z : A
(transitivity)
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
49. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
The Functional Interpretation of Direct Computations
Normal form for the rewrite reasons
Definition (subterm substitution)
The rule of “subterm substitution” is split into two rules:
x =r C[y] : A y =s u : A
x =subL(r,s) C[u] : A
x =r w : A C[w] =s u : A
C[x] =subR(r,s) u : A
where C[x] is the context in which the subterm x appears
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
50. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
The Functional Interpretation of Direct Computations
Reductions
Definition (reductions involving ρ and σ)
x =ρ x : A
x =σ(ρ) x : A
sr x =ρ x : A
x =r y : A
y =σ(r) x : A
x =σ(σ(r)) y : A
ss x =r y : A
Associated rewritings:
σ(ρ) sr ρ
σ(σ(r)) ss r
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
51. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
The Functional Interpretation of Direct Computations
Reductions
Definition (reductions involving τ)
x=r y:D y=σ(r)x:D
x=τ(r,σ(r))x:D tr x =ρ x : D
y=σ(r)x:D x=r y:D
y=τ(σ(r),r)y:D tsr y =ρ y : D
u=r v:D v=ρv:D
u=τ(r,ρ)v:D rrr u =r v : D
u=ρu:D u=r v:D
u=τ(ρ,r)v:D lrr u =r v : D
Associated equations: τ(r, σ(r)) tr ρ, τ(σ(r), r) tsr ρ, τ(r, ρ) rrr r,
τ(ρ, r) lrr r.
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
52. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
The Functional Interpretation of Direct Computations
Reductions
Definition
βrewr -×-reduction
x =r y : A z : B
x, z =ξ1(r) y, z : A × B
× -intr
FST( x, z ) =µ1(ξ1(r)) FST( y, z ) : A
× -elim
mx2l1 x =r y : A
Associated rewriting:
µ1(ξ1(r)) mx2l1 r
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
53. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
The Functional Interpretation of Direct Computations
Reductions
Definition
βrewr -×-reduction
x =r x : A y =s z : B
x, y =ξ∧(r,s) x , z : A × B
× -intr
FST( x, y ) =µ1(ξ∧(r,s)) FST( x , z ) : A
× -elim
mx2l2 x =r x : A
Associated rewriting:
µ1(ξ∧(r, s)) mx2l2 r
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
54. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
Categorical Interpretation of Computational Paths
Computational Paths form a Weak Category
Theorem
For each type A, computational paths induce a weak
categorical structure Arw where:
objects: terms a of the type A, i.e., a : A
morphisms: a morphism (arrow) between terms a : A and
b : A are arrows s : a → b such that s is a computational
path between the terms, i.e., a =s b : A.
Corollary
Arw has a weak groupoidal structure.
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies
55. What is a Proof of an Equality? Brouwer–Heyting–Kolmogorov for Equality Direct Computations The Functional Interpretation of P
The Functional Interpretation of Direct Computations
Reductions
Working papers:
1 Propositional equality, identity types, and direct computational
paths
Ruy J.G.B. de Queiroz, Anjolina G. de Oliveira
http://arxiv.org/abs/1107.1901
2 Sequences of Rewrites: A Categorical Interpretation
Arthur F. Ramos, Ruy J.G.B. de Queiroz, Anjolina G. de Oliveira
http://arxiv.org/abs/1412.2105
3 On the Groupoid Model of Computational Paths
Arthur F. Ramos, Ruy J.G.B. de Queiroz, Anjolina G. de Oliveira
http:// arXiv:1506.02721
Ruy de Queiroz (joint work with Anjolina de Oliveira)
Centro de Inform´atica Universidade Federal de Pernambuco (UFPE) Recife, Brazil
Propositional Equality, Identity Types and Homotopies