• Aucun résultat trouvé

Toward dependent choice: a classical sequent calculus with dependent types

N/A
N/A
Protected

Academic year: 2021

Partager "Toward dependent choice: a classical sequent calculus with dependent types"

Copied!
3
0
0

Texte intégral

(1)

HAL Id: hal-01247998

https://hal.inria.fr/hal-01247998

Submitted on 23 Dec 2015

HAL is a multi-disciplinary open access

archive for the deposit and dissemination of

sci-entific research documents, whether they are

pub-lished or not. The documents may come from

teaching and research institutions in France or

abroad, or from public or private research centers.

L’archive ouverte pluridisciplinaire HAL, est

destinée au dépôt et à la diffusion de documents

scientifiques de niveau recherche, publiés ou non,

émanant des établissements d’enseignement et de

recherche français ou étrangers, des laboratoires

publics ou privés.

Toward dependent choice: a classical sequent calculus

with dependent types

Hugo Herbelin, Étienne Miquey

To cite this version:

Hugo Herbelin, Étienne Miquey. Toward dependent choice: a classical sequent calculus with dependent

types. TYPES 2015, May 2015, Tallinn, Estonia. �hal-01247998�

(2)

Toward dependent choice :

a classical sequent calculus with dependent types

Hugo Herbelin

1

and ´

Etienne Miquey

1,2

1 PiR2, INRIA, Laboratoire PPS, Universit´e Paris-Diderot

hugo.herbelin@inria.fr, emiquey@pps.univ-paris-diderot.fr

2 IMERL, Universidad de la Rep´ublica, Montevideo

The dependent sum type of Martin-L¨of’s type theory provides a strong existential elimination, which allows to prove the full axiom of choice. The proof is simple and constructive:

ACA := λH.(λx. wit(Hx), λx. prf(Hx))

: ∀xA∃yBP(x, y) → ∃ fA→B∀xAP(x, f (x))

where wit and prf are the first and second projections of a strong existential quantifier.

We present here a continuation of Herbelin’s works [6], who proposed a way of scaling up Martin-L¨of proof to classical logic. The first idea is to restrict the dependent sum type to a fragment of our system we call N-elimination-free, making it computationally compatible with classical logic. The second idea is to represent a countable universal quantification as an infinite conjunction. This allows to internalize into a formal system (called dPAω) the realizability approach [2, 5] as a direct proof-as-programs interpretation.

Informally, let us imagine that given H : ∀xA∃yBP(x, y), we have the ability of creating an infinite

term H∞ = (H0, H1, . . . , Hn, . . .) and select its nth-element with some function nth. Then one might

wish that

λH.(λn. wit(nth n H∞), λn. prf(nth n H∞))

could stand for a proof for ACN. However, even if we were effectively able to build such a term, H∞

might contain some classical proof. Therefore two copies of Hnmight end up being different according

to their context in which they are executed, and then return two different witnesses. This problem could be fixed by using a shared version of H∞, say

λH. let a = H∞in (λn. wit(nth n a), λn. prf(nth n a) .

It only remains to formalize the intuition of H∞. We do this by a stream cofix0f n(Hn, f (S (n))) iterated

on f with parameter n, starting with 0 :

ACN:= λH. let a = cofix0f n(Hn, f (S (n)) in(λn. wit(nth n a), λn. prf(nth n a) .

Whereas the stream is, at level of formulæ, an inhabitant of a coinductive defined infinite conjunction ν0

Xn(∃P(0, y) ∧ X(n+ 1)), we cannot afford to pre-evaluate each of its components, and then have to use a

lazycall-by-value evaluation discipline. However, it still might be responsible for some non-terminating reductions. Our approach to prove a normalization property would be to interpret it in HAωthrough a negative translation. However, the sharing forces us to have a state-passing-style translation, whose small-step behaviour is quite far from the sharing strategy we have in natural deduction.

In a recent paper, Ariola et al. presented a way to construct a CPS-translation for a call-by-need version of the ¯λµ ˜µ-calculus [1], which allows some sharing facilities. Yet, this translation does not enjoy any typing property, and then does not give us a way of proving normalization. Moreover, the 1

(3)

Toward dependent choice : a classical sequent calculus with dependent types Herbelin and Miquey

¯

λµ˜µ-calculus is typed with sequent calculus [4], which does not allow to manipulate dependent types immediately.

We propose to deal with both problems while proving the normalization of our system in two steps. First, we translate our calculus to an adequate version of the ¯λµ ˜µ-calculus that allows to manipulate dependent types on the N-elimination-free fragment. Then we will try to adapt the CPS-translation for call-by-need to our case, while adding it a type.

This work is currently in progress. For now, we managed to tackle the first problem, that is to construct a sequent calculus version of the initial language dPAω, During this talk, we intend to focus on this point, which turns out to be tricky, mainly because of the desynchronization of the dependency at the level of type in call-by-value. Let us look at the β-rule to get an insight of what happens. If we define the →Land →Rrule as expected (where A⊥⊥is the type of a refutation of A):

Γ, a : A ` p : B

Γ ` λa.p : [a : A] → B →L

Γ ` q : A Γ ` e : B[q/a]⊥⊥ q < Nef → a < A

Γ ` q · e : ([a : A] → B)⊥⊥ →R

and consider such a proof λa.p : [a : A] → B and a context q · e : [a : A] → B, it reduces as follows : hλa.p | q · ei hq | ˜µa.hp | eii

On the right side, we see that p, whose type is B[a], is now cut with e of type B[q]. The idea is that in the full command a has been linked to q at a previous level of the typing judgement. We fixed this problem by making explicit a dependency list in the typing rules, which allows this typing derivation :

Γ ` q : A

Γ, a : A ` p : B[a] Γ, a : A ` e : B[q]; {a|q} hp | ei :Γ, a : A; {a|q} cut Γ ` ˜µa.hp | ei : A⊥⊥; {.|q} ˜µ

hq | ˜µa.hp | eii :Γ; {·|·} cut

By using this dependency list, we managed to fully translate the dPAωof [6] into a sequent calculus framework, that is a ¯λµ ˜µ-calculus with treatment of induction, cofix and equality. The translation is fully correct with respect to types.

The resulting calculus is given with a head-reduction, following a call-by-need evaluation strategy, and makes explicit the shared environment. This makes it a lot more closer to a small-step abstract machine than the original calculus, and it is our hope that as in [1] this would make the construction of a correct CPS-translation easier.

References

[1] Zena M. Ariola, Paul Downen, Hugo Herbelin, Keiko Nakata, and Alexis Saurin, Classical call-by-need se-quent calculi: The unity of semantic artifacts, FLOPS 2012, Proceedings, 2012, pp. 32–46.

[2] Stefano Berardi, Marc Bezem, and Thierry Coquand, On the computational content of the axiom of choice, J. Symb. Log. 63 (1998), no. 2, 600–622.

[3] Ulrich Berger and Paulo Oliva, Modified bar recursion, Mathematical Structures in Computer Science 16 (2006), no. 2, 163–183.

[4] Pierre-Louis Curien and Hugo Herbelin, The duality of computation, ICFP, 2000, pp. 233–243.

[5] Mart´ın H. Escard´o and Paulo Oliva, Bar recursion and products of selection functions, CoRR abs/1407.7046 (2014).

[6] Hugo Herbelin, A constructive proof of dependent choice, compatible with classical logic, Logic in Computer Science, LICS 2012, Proceedings, IEEE Computer Society, 2012, pp. 365–374.

Références

Documents relatifs

Once values of ice concentration and thickness are over the fixed grid, the continuum momentum and rheology equations are solved over that grid.. Those continuum equations can thus

It turns out that in the case where G = SO(n, 1) the wealth of available IRSs goes well beyond these examples, as hyperbolic geometry yields constructions of ergodic IRSs which are

We have proposed a possible heuristic strategy based on standard algebraic multigrid methods, to both explore and exploit the structure of the neural network to build a hierarchy

Figure 1 Regional tectonic map of the Tibetan plateau and station distribution of this study showing major su- ture zones, terranes, fault systems, the dip and plunge of the

As was the case for Germanic languages, in this account determiners are thought to have several lexical representations from among which the appropriate one must be selected:

L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des

We can see that programming in the Calculus of Con- structions is quite verbose: programs have arguments that are indeed only static information (type decorations, proof

We have illustrated that, instead of discarding the sequent calculus in search of canonical proof systems, sequent proofs can be systematically abstracted by (maximal)