The Defjnitional Side of the Forcing . G. Jaber G. Lewertowski - - PowerPoint PPT Presentation

the defjnitional side of the forcing
SMART_READER_LITE
LIVE PREVIEW

The Defjnitional Side of the Forcing . G. Jaber G. Lewertowski - - PowerPoint PPT Presentation

. . . . . . . . . . . . The Defjnitional Side of the Forcing . G. Jaber G. Lewertowski P.-M. Pdrot M. Sozeau N. Tabareau INRIA TYPES 24th May 2016 Pdrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 .


slide-1
SLIDE 1

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

The Defjnitional Side of the Forcing

  • G. Jaber
  • G. Lewertowski

P.-M. Pédrot

  • M. Sozeau
  • N. Tabareau

INRIA

TYPES 24th May 2016

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 1 / 18

slide-2
SLIDE 2

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Forcing in a Nutshell

Historically, forcing is a model transformation Several names for the same concept Forcing translation ∼ = Kripke models ∼ = Presheaf construction

(Set theory) (Modal logic) (Category theory)

Cohen’s original variant is classical We will study intuitionistic forcing

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 2 / 18

slide-3
SLIDE 3

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Forcing: the Oppression Why on earth would you use forcing?

Set theory: a lot of independance results (too late for the Fields medal!) Modal logic: Logic what? Category theory: a HoTT topic!

Many models arise from presheaf constructions Coquand & al. model of univalence is an example Also step-indexing, parametricity... But this stufg targets sets or topoi (erk)

We want forcing in Type Theory!

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 3 / 18

slide-4
SLIDE 4

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Forcing: the Oppression Why on earth would you use forcing?

Set theory: a lot of independance results (too late for the Fields medal!) Modal logic: Logic what? Category theory: a HoTT topic!

Many models arise from presheaf constructions Coquand & al. model of univalence is an example Also step-indexing, parametricity... But this stufg targets sets or topoi (erk)

We want forcing in Type Theory!

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 3 / 18

slide-5
SLIDE 5

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Forcing: the Oppression Why on earth would you use forcing?

Set theory: a lot of independance results (too late for the Fields medal!) Modal logic: Logic what? Category theory: a HoTT topic!

Many models arise from presheaf constructions Coquand & al. model of univalence is an example Also step-indexing, parametricity... But this stufg targets sets or topoi (erk)

We want forcing in Type Theory!

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 3 / 18

slide-6
SLIDE 6

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Intuitionistic Forcing in LJ (Kripke, presheaf, whatever)

Assume a preorder (P, ≤). We summarize the forcing translation in LJ. To a formula A, we associate a P-indexed formula [ [A] ]p. To a proof ⊢ A, we associate a proof of ∀p : P, [ [A] ]p. (Target theory not really specifjed here, think λΠ.) Most notably, A B p q p A q B q (Actually this can be adapted straightforwardly to any category Hom .)

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 4 / 18

slide-7
SLIDE 7

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Intuitionistic Forcing in LJ (Kripke, presheaf, whatever)

Assume a preorder (P, ≤). We summarize the forcing translation in LJ. To a formula A, we associate a P-indexed formula [ [A] ]p. To a proof ⊢ A, we associate a proof of ∀p : P, [ [A] ]p. (Target theory not really specifjed here, think λΠ.) Most notably, [ [A → B] ]p := ∀q ≤ p. [ [A] ]q → [ [B] ]q (Actually this can be adapted straightforwardly to any category Hom .)

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 4 / 18

slide-8
SLIDE 8

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Intuitionistic Forcing in LJ (Kripke, presheaf, whatever)

Assume a preorder (P, ≤). We summarize the forcing translation in LJ. To a formula A, we associate a P-indexed formula [ [A] ]p. To a proof ⊢ A, we associate a proof of ∀p : P, [ [A] ]p. (Target theory not really specifjed here, think λΠ.) Most notably, [ [A → B] ]p := ∀q ≤ p. [ [A] ]q → [ [B] ]q (Actually this can be adapted straightforwardly to any category (P, Hom).)

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 4 / 18

slide-9
SLIDE 9

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Also sprach Curry-Howard

The previous soundness theorem makes sense in a proof-relevant world: If ⊢ t : A then p : P ⊢ [t]p : [ [A] ]p ... and the translation can be thought of as a monotonous monad reader Reader Forcing

T A A

Tp A q q p A

read read enter A A enter A p p read A

In particular, taking to be a full preorder gives the reader monad.

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 5 / 18

slide-10
SLIDE 10

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Also sprach Curry-Howard

The previous soundness theorem makes sense in a proof-relevant world: If ⊢ t : A then p : P ⊢ [t]p : [ [A] ]p ... and the translation can be thought of as a monotonous monad reader Reader Forcing

T A := P → A

Tp A := ∀q : P, q ≤ p → A

read : 1 → P read : 1 → P enter : (1 → A) → P → A enter : (1 → A) → ∀p : P, p ≤ read() → A

In particular, taking to be a full preorder gives the reader monad.

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 5 / 18

slide-11
SLIDE 11

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Also sprach Curry-Howard

The previous soundness theorem makes sense in a proof-relevant world: If ⊢ t : A then p : P ⊢ [t]p : [ [A] ]p ... and the translation can be thought of as a monotonous monad reader Reader Forcing

T A := P → A

Tp A := ∀q : P, q ≤ p → A

read : 1 → P read : 1 → P enter : (1 → A) → P → A enter : (1 → A) → ∀p : P, p ≤ read() → A

In particular, taking (P, ≤) to be a full preorder gives the reader monad.

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 5 / 18

slide-12
SLIDE 12

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Do it, or do not: there is no try

In 2012, Jaber & al. gave a forcing translation from CIC into itself. Intuitively, not that diffjcult. To a type A associate p A p To a term t A associate p t p A p by induction on t To handle types-as-terms uniformly, is defjned through : A p q p (A type) A p A p p idp Translation of the dependent arrow is almost the same: x A B p q p x A q B q ... except that this naive presentation does not work.

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 6 / 18

slide-13
SLIDE 13

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Do it, or do not: there is no try

In 2012, Jaber & al. gave a forcing translation from CIC into itself. Intuitively, not that diffjcult. To a type ⊢ A : □ associate p : P ⊢ [ [A] ]p : □ To a term ⊢ t : A associate p : P ⊢ [t]p : [ [A] ]p by induction on t To handle types-as-terms uniformly, is defjned through : A p q p (A type) A p A p p idp Translation of the dependent arrow is almost the same: x A B p q p x A q B q ... except that this naive presentation does not work.

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 6 / 18

slide-14
SLIDE 14

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Do it, or do not: there is no try

In 2012, Jaber & al. gave a forcing translation from CIC into itself. Intuitively, not that diffjcult. To a type ⊢ A : □ associate p : P ⊢ [ [A] ]p : □ To a term ⊢ t : A associate p : P ⊢ [t]p : [ [A] ]p by induction on t To handle types-as-terms uniformly, [ [·] ] is defjned through [·]: [A]p : Πq ≤ p. □ (A type) [ [A] ]p := [A]p p idp Translation of the dependent arrow is almost the same: [ [Πx : A. B] ]p ≡ Πq ≤ p. Πx : [ [A] ]q. [ [B] ]q ... except that this naive presentation does not work.

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 6 / 18

slide-15
SLIDE 15

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Do it, or do not: there is no try

In 2012, Jaber & al. gave a forcing translation from CIC into itself. Intuitively, not that diffjcult. To a type ⊢ A : □ associate p : P ⊢ [ [A] ]p : □ To a term ⊢ t : A associate p : P ⊢ [t]p : [ [A] ]p by induction on t To handle types-as-terms uniformly, [ [·] ] is defjned through [·]: [A]p : Πq ≤ p. □ (A type) [ [A] ]p := [A]p p idp Translation of the dependent arrow is almost the same: [ [Πx : A. B] ]p ≡ Πq ≤ p. Πx : [ [A] ]q. [ [B] ]q ... except that this naive presentation does not work.

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 6 / 18

slide-16
SLIDE 16

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Separate, but equal

The culprit is the conversion rule:

⊢ t : A A ≡β B ⊢ t : B ⇝ p : P ⊢ [t]p : [ [A] ]p [ [A] ]p ≡β [ [B] ]p p : P ⊢ [t]p : [ [B] ]p

But in general, A ≡β B does not imply [ [A] ]p ≡β [ [B] ]p. To fjx this, Jaber & al. needed to stufg equality proofs everywhere. In types:

p

A q p « A respects some stufg » In functions: x A B p f « f respects other stufg » And only recovered that A B implies p A p B p.

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 7 / 18

slide-17
SLIDE 17

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Separate, but equal

The culprit is the conversion rule:

⊢ t : A A ≡β B ⊢ t : B ⇝ p : P ⊢ [t]p : [ [A] ]p [ [A] ]p ≡β [ [B] ]p p : P ⊢ [t]p : [ [B] ]p

But in general, A ≡β B does not imply [ [A] ]p ≡β [ [B] ]p. To fjx this, Jaber & al. needed to stufg equality proofs everywhere. In types: [ [□] ]p ≡ Σ(A : Πq ≤ p. □). « A respects some stufg » In functions: [ [Πx : A. B] ]p ≡ Σ(f : . . .). « f respects other stufg » And only recovered that A ≡β B implies p : P ⊢ [ [A] ]p =□ [ [B] ]p.

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 7 / 18

slide-18
SLIDE 18

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

When conversion matters

In the end, you cannot interpret conversion by mere conversion.

⊢ t : A A ≡β B ⊢ t : B ⇝ p : P ⊢ [t]p : [ [A] ]p π : [ [A] ]p ≡β [ [B] ]p p : P ⊢ transport([π],[t]p) : [ [B] ]p

This step is usually dismissed in a categorical world by:

« This diagram commutes. »

... but here, it raises a hell of coherence issues. Breaks computation Requires defjnitional UIP in the target. Requires that is proof-irrelevant. Only degenerated presheaf models!

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 8 / 18

slide-19
SLIDE 19

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

When conversion matters

In the end, you cannot interpret conversion by mere conversion.

⊢ t : A A ≡β B ⊢ t : B ⇝ p : P ⊢ [t]p : [ [A] ]p π : [ [A] ]p ≡β [ [B] ]p p : P ⊢ transport([π],[t]p) : [ [B] ]p

This step is usually dismissed in a categorical world by:

« This diagram commutes. »

... but here, it raises a hell of coherence issues. Breaks computation Requires defjnitional UIP in the target. Requires that ≤ is proof-irrelevant. Only degenerated presheaf models!

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 8 / 18

slide-20
SLIDE 20

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

A new hope

Interestingly the Curry-Howard isomorphism explains this failure. Root of the failure The usual forcing [·]p translation is call-by-value. That is, assuming (P, ≤) has defjnitional laws: t ≡βv u implies [t]p ≡β [u]p where βv is generated by the rule: (λx. t) V − →βv t{x := V} (V a value) This problem is already here in the simply-typed case but less troublesome.

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 9 / 18

slide-21
SLIDE 21

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

The Two Sides of the Forcing

There is an easy Call-by-Push-Value decomposition of forcing. Precomposing by the CBV decomposition we recover the usual forcing Precomposing by the CBN decomposition we obtain a new translation ... much closer to Krivine and Miquel’s classical variant CBPV CBV CBN λΠ

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 10 / 18

slide-22
SLIDE 22

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

The Two Sides of the Forcing

There is an easy Call-by-Push-Value decomposition of forcing. Precomposing by the CBV decomposition we recover the usual forcing Precomposing by the CBN decomposition we obtain a new translation ... much closer to Krivine and Miquel’s classical variant CBPV CBV CBN λΠ

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 10 / 18

slide-23
SLIDE 23

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

The Two Sides of the Forcing

There is an easy Call-by-Push-Value decomposition of forcing. Precomposing by the CBV decomposition we recover the usual forcing Precomposing by the CBN decomposition we obtain a new translation ... much closer to Krivine and Miquel’s classical variant CBPV CBV CBN λΠ

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 10 / 18

slide-24
SLIDE 24

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

CBN provides many abilities some consider to be unnatural

You only have to change the interpretation of the arrow. CBV [ [Πx : A. B] ]p ∼ = Πq ≤ p. Πx : [ [A] ]q. [ [B] ]q CBN [ [Πx : A. B] ]p ≡ Π(x : Πq ≤ p. [ [A] ]q). [ [B] ]p ... and everything follows naturally (CBN is somehow a « free » construction). Interpretation of CC Assuming that has defjnitional laws, then provides a non-trivial trans- lation from CC into itself preserving typing and conversion. This is to the best of our knowledge, the fjrst efgectful translation of CC .

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 11 / 18

slide-25
SLIDE 25

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

CBN provides many abilities some consider to be unnatural

You only have to change the interpretation of the arrow. CBV [ [Πx : A. B] ]p ∼ = Πq ≤ p. Πx : [ [A] ]q. [ [B] ]q CBN [ [Πx : A. B] ]p ≡ Π(x : Πq ≤ p. [ [A] ]q). [ [B] ]p ... and everything follows naturally (CBN is somehow a « free » construction). Interpretation of CCω Assuming that P has defjnitional laws, then [·] provides a non-trivial trans- lation from CCω into itself preserving typing and conversion. This is to the best of our knowledge, the fjrst efgectful translation of CCω.

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 11 / 18

slide-26
SLIDE 26

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Yoneda not far, patience, soon you will be with him

Technical issue: how can P have defjnitional laws? Answer: using this one weird old Yoneda trick! p q r q r p r Yoneda lemma The category is equivalent to Furthermore, it has defjnitional laws

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 12 / 18

slide-27
SLIDE 27

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Yoneda not far, patience, soon you will be with him

Technical issue: how can P have defjnitional laws? Answer: using this one weird old Yoneda trick! (P, ≤) → (PY, ≤Y) PY := P p ≤Y q := Πr : P. q ≤ r → p ≤ r Yoneda lemma The category (PY, ≤Y) is equivalent to (P, ≤) Furthermore, it has defjnitional laws

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 12 / 18

slide-28
SLIDE 28

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Inductive types

Up to now, we only interpret the negative fragment (Π + □). But our translation can be adapted easily to inductive types. We just need to box all subterms! x A B p x q p A q q p B q A B p q p A q q p B q Inductive

p

O

p

S q p

q p

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 13 / 18

slide-29
SLIDE 29

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Inductive types

Up to now, we only interpret the negative fragment (Π + □). But our translation can be adapted easily to inductive types. We just need to box all subterms! [ [Σx : A. B] ]p := Σ(x : Πq ≤ p. [ [A] ]q). (Πq ≤ p. [ [B] ]q) [ [A + B] ]p := (Πq ≤ p. [ [A] ]q) + (Πq ≤ p. [ [B] ]q) Inductive [ [N] ]p : □ := [O] : [ [N] ]p | [S] : (Πq ≤ p. [ [N] ]q) → [ [N] ]p

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 13 / 18

slide-30
SLIDE 30

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Dependent elimination

Yet, the translation does not interpret full dependent elimination.

Nrec Π(P : □). P → (P → P) → N → P ✓ Nind Π(P : N → □). P O → (Πn : N. P n → P (S n)) → Πn : N. P n ✠

Efgects Non-standard inductive terms

(A well-known issue. See e.g. Herbelin’s CIC + callcc)

Luckily there is a surprise solution coming from classical realizability.

Storage operators!

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 14 / 18

slide-31
SLIDE 31

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Dependent elimination

Yet, the translation does not interpret full dependent elimination.

Nrec Π(P : □). P → (P → P) → N → P ✓ Nind Π(P : N → □). P O → (Πn : N. P n → P (S n)) → Πn : N. P n ✠

Efgects ⇝ Non-standard inductive terms

(A well-known issue. See e.g. Herbelin’s CIC + callcc)

Luckily there is a surprise solution coming from classical realizability.

Storage operators!

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 14 / 18

slide-32
SLIDE 32

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Dependent elimination

Yet, the translation does not interpret full dependent elimination.

Nrec Π(P : □). P → (P → P) → N → P ✓ Nind Π(P : N → □). P O → (Πn : N. P n → P (S n)) → Πn : N. P n ✠

Efgects ⇝ Non-standard inductive terms

(A well-known issue. See e.g. Herbelin’s CIC + callcc)

Luckily there is a surprise solution coming from classical realizability.

Storage operators!

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 14 / 18

slide-33
SLIDE 33

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Storage operators

They allow to prove induction principles in presence of callcc Essentially emulate CBV in CBN through a CPS Defjned in terms of non-dependent recursion

θN : N → ΠR : □. (N → R) → R θN := Nrec (λR k. k 0)(λ˜ n R k. ˜ n R (λn. k (S n)))

Trivial in CIC: CIC n R k n R k

R k n

The above propositional

  • rule is negated by the forcing translation

But it interprets a restricted dependent elimination!

ind

P P O n P n S n P n n P

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 15 / 18

slide-34
SLIDE 34

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Storage operators

They allow to prove induction principles in presence of callcc Essentially emulate CBV in CBN through a CPS Defjned in terms of non-dependent recursion

θN : N → ΠR : □. (N → R) → R θN := Nrec (λR k. k 0)(λ˜ n R k. ˜ n R (λn. k (S n)))

Trivial in CIC: CIC ⊢ Πn R k. θN n R k =R k n The above propositional η-rule is negated by the forcing translation But it interprets a restricted dependent elimination!

ind

P P O n P n S n P n n P

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 15 / 18

slide-35
SLIDE 35

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Storage operators

They allow to prove induction principles in presence of callcc Essentially emulate CBV in CBN through a CPS Defjned in terms of non-dependent recursion

θN : N → ΠR : □. (N → R) → R θN := Nrec (λR k. k 0)(λ˜ n R k. ˜ n R (λn. k (S n)))

Trivial in CIC: CIC ⊢ Πn R k. θN n R k =R k n The above propositional η-rule is negated by the forcing translation But it interprets a restricted dependent elimination!

N

ind

ΠP. P O → (Πn : N. P n → θN (S n) □ P) → Πn : N. θN n □ P ✓

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 15 / 18

slide-36
SLIDE 36

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

What we also did

A fancy plugin for Coq generating horrendous well-typed terms

The forcing is defjnitional with this one!

A handful of independence results and usecases Generate anomalous types that negate univalence Step indexing Give some intuition for the cubical model A LICS paper detailing the whole story

This is the paper you’re looking for!

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 16 / 18

slide-37
SLIDE 37

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

What we also did

A fancy plugin for Coq generating horrendous well-typed terms

The forcing is defjnitional with this one!

A handful of independence results and usecases ⇝ Generate anomalous types that negate univalence ⇝ Step indexing ⇝ Give some intuition for the cubical model A LICS paper detailing the whole story

This is the paper you’re looking for!

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 16 / 18

slide-38
SLIDE 38

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

What we also did

A fancy plugin for Coq generating horrendous well-typed terms

The forcing is defjnitional with this one!

A handful of independence results and usecases ⇝ Generate anomalous types that negate univalence ⇝ Step indexing ⇝ Give some intuition for the cubical model A LICS paper detailing the whole story

This is the paper you’re looking for!

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 16 / 18

slide-39
SLIDE 39

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

What remains to be done

Recover a propositional η-rule by using parametricity Understand the cubical model in CBN (may the Force be with us...) Design a general theory of CIC + efgects using storage operators The next 700 stupid translations of CIC into itself

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 17 / 18

slide-40
SLIDE 40

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

I’ve got a bad feeling about this

Questions you have?

Pédrot & al. (INRIA) The Defjnitional Side of the Forcing 24/05/2016 18 / 18