• English
    • français
  • Help
  •  | 
  • Contact
  •  | 
  • About
  •  | 
  • Login
  • HAL portal
  •  | 
  • Pages Pro
  • EN
  •  / 
  • FR
View Item 
  •   LillOA Home
  • Liste des unités
  • Centre de Recherche en Informatique, Signal et Automatique de Lille (CRIStAL) - UMR 9189
  • View Item
  •   LillOA Home
  • Liste des unités
  • Centre de Recherche en Informatique, Signal et Automatique de Lille (CRIStAL) - UMR 9189
  • View Item
JavaScript is disabled for your browser. Some features of this site may not work without it.

A Language-Independent Proof System for ...
  • BibTeX
  • CSV
  • Excel
  • RIS

Document type :
Article dans une revue scientifique
DOI :
10.1007/s00165-016-0361-7
Title :
A Language-Independent Proof System for Full Program Equivalence
Author(s) :
Ciobaca, Stefan [Auteur]
Lucanu, Dorel [Auteur]
Rusu, Vlad [Auteur] refId
Dynamic Reconfigurable Massively Parallel Architectures and Languages [DREAMPAL]
Rosu, Grigore [Auteur]
University of Illinois at Urbana-Champaign [Urbana]
Journal title :
Formal Aspects of Computing
Pages :
469--497
Publisher :
Springer Verlag
Publication date :
2016
ISSN :
0934-5043
HAL domain(s) :
Informatique [cs]/Logique en informatique [cs.LO]
Informatique [cs]/Langage de programmation [cs.PL]
English abstract : [en]
Two programs are mutually equivalent if, for the same input, either they both diverge or they both terminate with the same result. Mutual equivalence is an adequate notion of equivalence for programs written in deterministic ...
Show more >
Two programs are mutually equivalent if, for the same input, either they both diverge or they both terminate with the same result. Mutual equivalence is an adequate notion of equivalence for programs written in deterministic languages. It is useful in many contexts, such as capturing the correctness of program transformations within the same language, or capturing the correctness of compilers between two different languages. In this paper we introduce a language-independent proof system for mutual equivalence, which is para-metric in the operational semantics of two languages and in a state-similarity relation. The proof system is sound: if it terminates then it establishes the mutual equivalence of the programs given to it as input. We illustrate it on two programs in two different languages (an imperative one and a functional one), that both compute the Collatz sequence. The Collatz sequence is an interesting case study since it is not known wether the sequence terminates or not; nevertheless, our proof system shows that the two programs are mutually equivalent (even if we cannot establish termination or divergence of either one).Show less >
Language :
Anglais
Peer reviewed article :
Oui
Audience :
Internationale
Popular science :
Non
Collections :
  • Centre de Recherche en Informatique, Signal et Automatique de Lille (CRIStAL) - UMR 9189
Source :
Harvested from HAL
Files
Thumbnail
  • https://hal.inria.fr/hal-01245528v2/document
  • Open access
  • Access the document
Thumbnail
  • https://hal.inria.fr/hal-01245528v2/document
  • Open access
  • Access the document
Thumbnail
  • https://hal.inria.fr/hal-01245528v2/document
  • Open access
  • Access the document
Université de Lille

Mentions légales
Université de Lille © 2017