6 research outputs found

    An explicit EtaEta rewrite rule

    Get PDF
    Projet EURECAIn this report, we extend \la-calculi of explicit substitutions by an EtaEta rule. We do this in the framework of \la\ups, a \la-calculus of explicit substitutions introduced in~\citeLescannePOPL94 and thoroughly studied in~\citeLescanneR94. The main feature of such a calculus is that the classical β\beta-contraction is expressed by a first-order term rewriting system. Our main result is the explicitation of the η\eta-contraction by means of an unconditional, \it generic EtaEta rewrite rule and of an extension of the substitution calculus, υ\upsilon. %Similar results Previous definitions of EtaEta are due to~\citeHardin92 and~\citeRiosTHESE in the framework of \la\sigma-calculi. The principal difference between \la\upsilon and \la\sigma-calculi concerns confluence and strong normalization\,: \la\upsilon is ground confluent and its simply typed version is terminating, whenever \la\sigma_\Lift\ -calculus is confluent on open terms but non terminating on typed terms. In~\citeHardin92 and~\citeRiosTHESE, EtaEta rule is presented as an extension of η\eta-contraction. Hardin and R\'\ios present their extension as a conditional rewrite rule and do not stick fully to the philosophy of explicit substitutions. In our approach, the EtaEta-rule is a first order rewrite rule which uses an explicit substitution calculus. For that, one needs to introduce a new constant ⊥\bot that denotes an unspecified term. Its behaviour is described by a rewrite rule. This report shows, in the one hand, how the EtaEta-rule associated with \la\ups and the rule for ⊥\bot provides a correct implementation of the η\eta-reduction and studies other properties of the \la\ups\eta-calculus namely confluenceon ground terms and strong normalisation on typed terms. On the other hand, this explicit EtaEta leads to η′\eta' a very general alternative to the classical η\eta. Indeed, we prove that η′\eta' allows confluent contractions which are not captured by classical η\eta

    On computational interpretations of the modal logic S4. II. The lambda-evQ-calculus

    Get PDF
    A language of constructions for minimal logic is the λ\lambda-calculus, where cut-elimination is encoded as β\beta-reduction. We examine corresponding languages for the minimal version of the modal logic S4, with notions of reduction that encodes cut-elimination for the corresponding sequent system. It turns out that a natural interpretation of the latter constructions is a λ\lambda-calculus extended by an idealized version of Lisp\u27s \verb/eval/ and \verb/quote/ constructs. In this Part II, we repair the non-computational defect of the λS4{\lambda_{\rm S4}}-calculus of Part I by deriving an entirely different interpretation. Quotation closures are not provided {\em ex abrupto},but are built from more primitive combinators. There is almost no freedom of choice here, and we are forced to use variants of the λσ\lambda\sigma-calculus, i.e.\ descriptions of interpreters as formal languages. We end up defining an infinite tower of interpreters, which provides an interesting analogy with Lisp\u27s reflexive tower. This is another argument backing the thesis that the meaning of modal constructions in S4 corresponds to \verb/eval/ and \verb/quote/

    On computational interpretations of the modal logic S4. II. The lambda-evQ-calculus

    Get PDF
    A language of constructions for minimal logic is the λ\lambda-calculus, where cut-elimination is encoded as β\beta-reduction. We examine corresponding languages for the minimal version of the modal logic S4, with notions of reduction that encodes cut-elimination for the corresponding sequent system. It turns out that a natural interpretation of the latter constructions is a λ\lambda-calculus extended by an idealized version of Lisp\u27s \verb/eval/ and \verb/quote/ constructs. In this Part II, we repair the non-computational defect of the λS4{\lambda_{\rm S4}}-calculus of Part I by deriving an entirely different interpretation. Quotation closures are not provided {\em ex abrupto},but are built from more primitive combinators. There is almost no freedom of choice here, and we are forced to use variants of the λσ\lambda\sigma-calculus, i.e.\ descriptions of interpreters as formal languages. We end up defining an infinite tower of interpreters, which provides an interesting analogy with Lisp\u27s reflexive tower. This is another argument backing the thesis that the meaning of modal constructions in S4 corresponds to \verb/eval/ and \verb/quote/

    Reescritura de términos y sustituciones explícitas

    Get PDF
    La operación de sustitución constituye un engranaje básico en los fundamentos de la teoría de lenguajes de programación. Juega un rol central en el lambda cálculo (por ende, en lenguajes de programación funcional), en unificación de primer orden y de orden superior (por ende, en lenguajes de programación basados en el paradigma lógico), en modalidades de pasaje de parámetros (por ende, en lenguajes de programación imperativos), etc. Recientemente, investigadores en informática se han interesado en el pasaje de la noción usual de la sustitución, atómica, y de gruesa granularidad, hacia una noción más refinada, de más fina granularidad. La noción de sustitución es transportada del metalenguaje (nuestro lenguaje de discurso) al lenguaje objeto (nuestro lenguaje de estudio). Como consecuencia de ello se obtienen los llamados cálculos de sustituciones explícitas. Estos son de sumo interés a la hora de estudiar la interpretación operacional de los formalismos en cuestión y constituyen los objetos de interés de esta tesis. Se desarrollan los siguientes tres ejes de estudio: Primero, se consideran estrategias de reescritura perpetuas en lambda cálculos con sustituciones explícitas. Estas son estrategias de reescritura que preservan la posibilidad de reducciones infinitas. Se propone una caracterización inductiva del conjunto de términos que no poseen reducciones infinitas (los llamados fuertemente normalizantes). Un lambda cálculo polimórfico con sustituciones explícitas también es analizado, incluyendo propiedades tales como subject reduction y normalización fuerte. Segundo, colocamos el ς-cálculo de M. Abadi and L. Cardelli enriquecido con sustituciones explícitas bajo el microscopio. Este cálculo se encuentra en un nivel semejante de abstracción al lambda cálculo pero se basa en objetos en lugar de funciones. Propiedades tales como simulación del lambda cálculo, confluencia y preservación de la normalización fuerte (aquellos términos que son fuertemente normalizantes en ς también lo son en ς con sustituciones explícitas) son consideradas. Finalmente, dirigimos nuestra atención a la tarea de relacionar la reescritura de orden superior con aquella de primer orden. Fijamos una variante de los ERS (apodados SERSdb) de Z. Khasidashvili como nuestro formalismo de orden superior de partida y definimos un proceso de conversión que permite codificar cualquier SERSdb como un sistema de reescritura de primer orden. En este último, cada paso de reescritura se lleva a cabo módulo una teoría ecuacional determinada por un cálculo de sustituciones explícitas. La misma se formula de manera genérica a través de una presentación de cálculos de sustituciones explícitas basada en macros y axiomas sobre estas macros, parametrizando de esta manera al procedimiento de conversión sobre cualquier cálculo de sustituciones explícitas que obedece la presentación basada en macros. El procedimiento de conversión se encarga de codificar pattern matching de orden superior y sustitución en el entorno de reescritura de primer orden. Asimismo, propiedades que relacionan la noción de reescritura en el orden superior con aquella de primer orden son analizadas en detalle. Se identifica una clase de SERSdb para los cuales el sistema de primer orden resultante de su conversión no requiere una teoría ecuacional para implementar pattern matching de orden superior, bastando para ello matching sintáctico. También se argumenta que esta clase de sistemas de orden superior es apropiada para transferir resultados del entorno de reescritura de orden superior a aquella de primer orden. A modo de ejemplo no-trivial de ello, estudiamos la transferencia del teorema de standarización (fuerte).Substitution spans many areas in programming language theory. It plays a central role in the lambda calculus (hence functional programming), in first and higher-order unikation (hence logic programming), parameter passing methods (hence imperative programming), etc. Recently researchers became interested in shifting from the usual atomic, coarse grained view of substitution to a more refined, fine grained one. Substitution is promoted from the metalevel (our language of discourse) to the object-level (our language of study). This is interesting when studying the operational interpretation of the formalisms in question. Calculi of object-level or explicit substitution is the concern of this thesis. The following three study axes are developed. First we consider perpetual rewrite strategies in lambda calculi of explicit substitutions. These are rewrite strategies that preserve the possibility of inhite derivations. Also, we study how to characterize inductively the set of terms that do not possess infinite derivations (the strongly normalizing terms). Polymorphic lambda calculus with explicit substitutions shall receive our attention too, including properties such as subject reduction and strong normalization. Secondly, we put the ς-calculus of M.Abadi and L.Cardelli augmented with explicit substitutions under the microscope. This calculus is at the level of the lambda calculus but is based on objects instead of functions. Properties such as simulation of the lambda calculus, confluence and preservation of strong normalization (terms which are strongly normalizing in ς are also strongly normalizii in ς with explicit substitutions) are considered. Finally, we address the task of reducing higher-order rewriting to first-order rewriting. We fix a variant of Z-Khasidashvili's ERS (dubbed SERSdb) as our departing formalism and provide a conversion procedure to encode any ERS as a first-order rewrite system in which a rewrite step takes place modulo an equational theory determined by a calculus of explicit substitutions. The latter is achieved with the aid of a macro-based presentation of calculi of explicit substitutions, thus parametrizing the conversion procedure over any calculus of explicit substitutions in compliance with the aforementioned presentation. The conversion procedure is in charge of encoding higherorder pattern matching and substitution in the first-order framework. Properties relating the rewrite relation in the higher-order framework and that of the resulting first-order system are studied in detail. We then identify a class of SERSdb for which the resulting first-order system does not require the equational theory to implement higher-order pattern matching, thus contenting itself with syntactic matching. It is argued that this class of systems is appropriate for transferring results from the first-order framework to the higher-order one. As a non-trivial example we study the transfer of the (strong) standardization theorem.Fil:Bonelli, Eduardo. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales; Argentina

    An explicit Eta rewrite rule

    No full text
    Programme 2 - Calcul symbolique, programmation et genie logiciel - Projet EurecaSIGLEAvailable at INIST (FR), Document Supply Service, under shelf-number : 14802 E, issue : a.1994 n.2417 / INIST-CNRS - Institut de l'Information Scientifique et TechniqueFRFranc

    An explicit Eta rewrite rule

    No full text
    : In this report, we extend -calculi of explicit substitutions by an Eta rule. We do this in the framework of AE, a -calculus of explicit substitutions introduced by Lescanne (1994) and thoroughly studied by Lescanne and Rouyer-Degli (1994). The main feature of such a calculus is that the classical fi-contraction is expressed by a first-order term rewriting system. Our main result is the explicitation of the j-contraction by means of an unconditional, generic Eta rewrite rule and of an extension of the substitution calculus, AE. Previous definitions of Eta are due to Hardin (1992) and R'ios (1993) in the framework of oe-calculi. The principal difference between AE and oe-calculi concerns confluence and strong normalization : AE is ground confluent and its simply typed version is terminating, whenever oe * -calculus is confluent on open terms but non terminating on typed terms. In their work, Hardin and R'ios present Eta rule as an extension of j-contraction. Their extension is a condi..
    corecore