88,600 Hits in 2.9 sec

What Do Reversible Programs Compute? [chapter]

Holger Bock Axelsen, Robert Glück
2011 Lecture Notes in Computer Science  
We provide a novel semantics-based approach to such a theory, using reversible Turing machines (RTMs) as the underlying computation model.  ...  Understanding the fundamental properties of such models is not only relevant for reversible programming, but has also been found important in other fields, e.g., bidirectional model transformation, program  ...  Reversible computation models have been studied in widely different areas ranging from cellular automata [11] , program transformation concerned with the inversion of programs [19] , reversible programming  ... 
doi:10.1007/978-3-642-19805-2_4 fatcat:httvxsi2vjgina3pd7krqznzti

Reversible Debugging in Logic Programming [article]

Germán Vidal
2020 arXiv   pre-print
In this work, we propose a reversible debugging scheme for logic programs.  ...  For this purpose, we define an appropriate instrumented semantics (a so-called Landauer embedding) that makes SLD resolution reversible.  ...  We have proved a number of formal properties for our reversible semantics.  ... 
arXiv:2007.16171v1 fatcat:y2pmzoomtbh7bgiwnlgjq5ljra

Top-down mathematical semantics and symbolic execution

G. Lévi, A. M. Pegna
1983 RAIRO Informatique théorique  
Assume, for example, we have the following équations 1. append (nil, x) = x 2. append (cons (x, y), z) = cons (x, append (y, z)) 3. reverse (nil) = nil 4. reverse (cons (x, y)) = append (reverse (y), cons  ...  We have thus defined two equivalent formai semantics. The bottom-up fixed-point semantics is based on a bottom-up inference rule and is defined by a fixpoint transformation.  ... 
doi:10.1051/ita/1983170100551 fatcat:6bd4elhvxfelpfy7o3aa2ompy4

Declarative Interpretations Reconsidered [chapter]

1994 Logic Programming  
Three semantics have been proposed as the most promising candidates for a declarative interpretation for logic programs and pure Prolog programs: the least Herbrand model, the least term model, i.e. the  ...  We study here the relationship between these three semantics for specific classes of programs.  ...  Proof. ( ~ ) We have ({:::)We haveMin(S(P)) Min(Min(C(P)))Min(C(P)) S(P).S(P)Min(S(P)) =Min(Up(S(P))) Min(C(P)).Consequently, the C-semantics and S-semantics are isomorphic on subsumption free programs  ... 
doi:10.7551/mitpress/4316.003.0017 fatcat:xtequucvwravxptxd6cvrmbpr4

A Minimalist's Reversible While Language

2017 IEICE transactions on information and systems  
* Reversible Turing machines have a four-line inverter, e.g. [6] .  ...  Owing to its simplicity, the language may also be used for educational purposes. key words: reversible programming language, reversible self-interpreter, while language, translation, program inversion  ...  A preliminary version of R-CORE and the translator was presented at the 17th Workshop on Programming and Programming Languages (PPL 2015).  ... 
doi:10.1587/transinf.2016edp7274 fatcat:3ipg2pgkvvedlmugdpwkuouxxu

A Categorical Foundation for Structured Reversible Flowchart Languages

Robert Glück, Robin Kaarsgaard
2018 Electronical Notes in Theoretical Computer Science  
This leads to a categorical semantics for structured reversible flowcharts, from which we show that a program inverter can be extracted.  ...  This class includes the reversible programming language Janus (without recursion), as well as more recently developed reversible programming languages such as R-CORE and R-WHILE.  ...  As such, a programming language may have many different sound and complete program inverters, though they will all be equivalent up to program semantics.  ... 
doi:10.1016/j.entcs.2018.03.021 fatcat:kor4p3i4bjcdzexx7uoxlxna3u

"Bagatelle in C arranged for VDM SoLo"

José N. Oliveira
2001 Journal of universal computer science (Online)  
Reverse calculations go as far as absorbing auxiliary variables, introducing mutual recursion (if applicable) and reversing semantic denotations into standard generic programming schemata such as cata/  ...  The latter include code slicing, a "shortcut" which trims down the complexity of handling the formal semantics of all program variables at the same time.  ...  The slices of wc and their formal semantics In general, the semantics of a program block involving while, for or do statements and/or recursion will have to be inductively defined over some input type  ... 
doi:10.3217/jucs-007-08-0754 dblp:journals/jucs/Oliveira01 fatcat:l3g2qlqwtvfptfmkg6epdpsg4m

Semantics of Input-Consuming Logic Programs [chapter]

Annalisa Bossi, Sandro Etalle, Sabina Rossi
2000 Lecture Notes in Computer Science  
In this paper we show that -under some syntactic restrictions -the S-semantics of a program is correct and fully abstract also for inputconsuming programs.  ...  This allows us to conclude that for a large class of programs employing delay declarations there exists a model-theoretic semantics which is equivalent to the operational one.  ...  Concluding Remarks We have shown that -under some syntactic restrictions -the S-semantics reflects the operational semantics also when programs are input-consuming.  ... 
doi:10.1007/3-540-44957-4_13 fatcat:yzghhuamcvbwllhfxm4bvx2svq

Logical reversibility

P. Zuliani
2001 IBM Journal of Research and Development  
Use is made of a formal definition of logical reversibility and the expectation-transformer semantics for pGCL.  ...  A method has been developed for transforming a program written in the probabilistic guarded-command language ( pGCL) into an equivalent but reversible program.  ...  The following lemma is also useful later (we skip the proof, since it is a simple application of the above semantic rules). Lemma 1 For pGCL programs A, B, and C we have ͑skip; . .  ... 
doi:10.1147/rd.456.0807 fatcat:ynqp7k3r2jclvi4d2fbcovjqya

Reversible Computation and Reversible Programming Languages

Tetsuo Yokoyama
2010 Electronical Notes in Theoretical Computer Science  
In common with other programming paradigms, reversible programming has its own programming methodology.  ...  A reversible programming language supports deterministic forward and backward computation. This tutorial focuses on a high-level reversible programming language Janus.  ...  The operational semantics have three main judgments: the evaluation of expressions, the execution of statements and execution of programs.  ... 
doi:10.1016/j.entcs.2010.02.007 fatcat:jkfz6vwpnncttkhnudpl4r6ze4

Semantics of well-moded input-consuming logic programs

Annalisa Bossi, Sandro Etalle, Sabina Rossi
2000 Computer languages  
Secondly, we show that-under some syntactic restrictions-the S-semantics of a program is correct and fully abstract also for input-consuming programs.  ...  In particular, the equivalence between the model-theoretic and operational semantics does not hold. In this paper, we study the class of input-consuming programs.  ...  Concluding remarks We have shown that-under some syntactic restrictions-the S-semantics re ects the operational semantics also when programs are input-consuming.  ... 
doi:10.1016/s0096-0551(01)00005-4 fatcat:qer6fnb6lnefpo6giifw4kvhcu

Reversible Computations in Logic Programming [chapter]

Germán Vidal
2020 Lecture Notes in Computer Science  
In this paper, we present a so-called Landauer embedding for SLD resolution, the operational principle of logic programs, so that it becomes reversible.  ...  While logic programs are often invertible (e.g., one can use the same predicate for adding and for subtracting natural numbers), computations are not reversible in the above sense.  ...  A Reversible Semantics for Logic Programs In this section, we present a reversible version of SLD resolution.  ... 
doi:10.1007/978-3-030-52482-1_15 fatcat:lrlr3mjonzbgxfg2nhc3eaw7ii

Recovering UML class models from C++: A detailed explanation

Andrew Sutton, Jonathan I. Maletic
2007 Information and Software Technology  
These mappings employ a combination of C++ syntactic and semantic information along with domain knowledge of programming conventions, idioms, and reuse libraries to produce semantically accurate UML class  ...  Design recovery directly supports program comprehension through reverse engineering. Figure 1 depicts the architecture of a technology stack used in reverse engineering to recover program designs.  ...  In order to identify data types in C++, we have to rely heavily on how classes are used in a program.  ... 
doi:10.1016/j.infsof.2006.10.011 fatcat:4y5obbguqneihgwygj6uh5lzza

Equational Semantics [chapter]

Loîc Correnson, Etienne Duris, Didier Parigot, Gilles Roussel
1999 Lecture Notes in Computer Science  
In some sense, Equational Semantics is a kind of lambda-calculus dedicated to program transformations.  ...  We present its semantics and some of its transformations such as partial evaluation and decriptionnal composition (also called deforestation).  ...  We have implemented a prototype, called EQS, which performs such computations, and more generally, manipulates and transforms programs in Equational Semantics.  ... 
doi:10.1007/3-540-48294-6_17 fatcat:epu7j3npkrfifef7eqwyy5wmli

A Virtual Machine for Supporting Reversible Probabilistic Guarded Command Languages

Bill Stoddart, Robert Lynas, Frank Zeyda
2010 Electronical Notes in Theoretical Computer Science  
We describe a reversible stack based virtual machine designed as an execution platform for a sequential programming language used in a formal development environment.  ...  The paper includes a number of example programs.  ...  We have found that reversibility can simplify program semantics and suggest new programming structures and ways of thinking about problems.  ... 
doi:10.1016/j.entcs.2010.02.005 fatcat:2fhvkgitvve3xnh6s2nv4vfisi
« Previous Showing results 1 — 15 out of 88,600 results