30 research outputs found

    Experience in using a typed functional language for the development of a security application

    Full text link
    In this paper we present our experience in developing a security application using a typed functional language. We describe how the formal grounding of its semantic and compiler have allowed for a trustworthy development and have facilitated the fulfillment of the security specification.Comment: In Proceedings F-IDE 2014, arXiv:1404.578

    Automatic Differentiation for Adjoint Code Generation

    Get PDF
    This document is a compilation of extended abstracts presented at the Automatic Differentiation session entitled «Automatic Differentiation for adjoint code generation» which has been held within the IMACS Conference on Applications of Computer Algebra held in Prague (Czech Republic) in August 1998. This is the second Automatic Differentiation session organized within IMACS'ACA conferences

    Adjoining Strategies for Multi-Layered Programs

    Get PDF
    Several papers have presented the rules to apply to a straight line program to differentiate it in direct or reverse mode. In this paper, we first recall these rules, and we try to specify the different possible strategies for the differentiation of a multi-level program in direct or reverse mode. The strategy to apply in direct mode is straight forward and can be directly extended from the straight line case. For the reverse mode, the computation of derivatives in reverse order (ie. the computation of initial variables) makes the problem much more complicated. We show that, a lot of strategies can be applied, between storing recursively the variables and recomputing them all from the initial point. In order to make the comparison of those strategies possible, we show the complexities in terms of memory requirement and execution time. The first section describes basics of automatic differentiation, the second one contains some notations and the graphical representation of a program we are using in the rest of the paper. The third section is dedicated to the description of different strategies applicable on a real code

    Le gradient de THYC3D par Odyssée

    Get PDF
    Odyssée est un outils de différentiation automatique de code Fortran qui met en oeuvre à la fois le mode inverse et le mode direct de différentiation automatique. Ce document présente les résultats obtenus lors de la génération automatique d'un code inverse (adjoint) pour le code de thermohydraulique opérationnel THYC par Odyssée. Il faut noter qu'à notre connaissance, il n'existe aucune expérience de différentiation automatique de code opérationnel en mode inverse avec un autre outils automatique. En effet, les trois autres outils de différentiation automatique qui mettent en oeuvre le mode inverse (adolc, tamc, Padre2) ne peuvent pas être appliqués sur de très grands codes

    Objets conditionnels et objets inconnus

    Get PDF
    Pour rapprocher la forme des calculs effectués par les systèmes de calcul formel, des calculs faits à la main, et faciliter ainsi l'utilisation des systèmes de Calcul Formel, nous avons introduit deux nouvelles classes d'expressions. Les premières qualifiées de conditionnelles sont des objets multi-valués, qui permettent de décrire abs(n)abs (n) comme l'objet ``si n0n\ge 0 alors nn sinon n-n''. Les secondes qualifiées d'inconnues (on en connaît le ``typé' mais pas la valeur) permettent d'exprimer ``soit nn un entier'' grâce à un mécanisme de typage. Cette étude a donné lieu à une implémentation en \AS-A In order to improve the expressivity of Computer Algebra Systems, we have introduced two new classes of expression. First, we defined multi-valued expressions called \it conditional\/ expressions, in order to express abs(n)abs (n) as the object ``if n0n\ge 0 then nn else n-n''. Then we have specified a second class called unknown (elements whose values are unknown, but whose type is known) in order to enable declaration such as ``let nn an integer''. Examples of those two classes have been implemented in \AF CALCUL FORMEL / CALCUL SYMBOLIQUE / EXPRESSIONS CONDITIONNELLES / \

    Towards a meta simplifier

    Get PDF
    Disponible dans les fichiers attachés à ce documen

    Odyssée Version 1.6 The User's Reference Manual

    Get PDF
    Odyssée is an automatic differentiation software performing transformation of fortran 77 codes which implements both the forward and reverse mode of automatic differentiation. The current version of Odyssée is version 1.6. It includes the Odyssée engine, an interpreter of the command language and a motif-like graphical user interface. This document introduces the main functionnalities of Odyssée through an illustrative example. It presents the basic concepts and objects of Odyssée, and completely describes the command language of Odyssée and its graphical user interface

    Comparing Strategies for Coding Adjoints

    Get PDF
    This document presents and compares methodologies to generate discrete adjoint codes. These methods can be implemented when hand writing adjoints, or within Automatic Differentiation tools. Automatic differentiation has been applied successfully to industrial codes that are large and general enough to fully validate this new technology. Future AD tools will make use of some general methods presented in this paper but still not implemented within present tools. In this paper, we try to compare these strategies in terms of accuracy, execution time and memory requirement on a one dimension- al thermal-hydraulic module for two-phase flow modeling

    Odyssée User's Guide Version 1.7

    Get PDF
    Odyssée is an automatic differentiation processor for fortran code which implements both the forward and reverse mode of automatic differentiation. This document presents the functionalities of Odyssée through an illustrative example. It presents the basic concepts and objects of Odyssée, and completely describes the command language of Odyssée and its graphical user interface
    corecore