Results 1  10
of
35
Floating point verification in HOL Light: the exponential function
 UNIVERSITY OF CAMBRIDGE COMPUTER LABORATORY
, 1997
"... Since they often embody compact but mathematically sophisticated algorithms, operations for computing the common transcendental functions in floating point arithmetic seem good targets for formal verification using a mechanical theorem prover. We discuss some of the general issues that arise in veri ..."
Abstract

Cited by 36 (7 self)
 Add to MetaCart
Since they often embody compact but mathematically sophisticated algorithms, operations for computing the common transcendental functions in floating point arithmetic seem good targets for formal verification using a mechanical theorem prover. We discuss some of the general issues that arise in verifications of this class, and then present a machinechecked verification of an algorithm for computing the exponential function in IEEE754 standard binary floating point arithmetic. We confirm (indeed strengthen) the main result of a previously published error analysis, though we uncover a minor error in the hand proof and are forced to confront several subtle issues that might easily be overlooked informally. The development described here includes, apart from the proof itself, a formalization of IEEE arithmetic, a mathematical semantics for the programming language in which the algorithm is expressed, and the body of pure mathematics needed. All this is developed logically from first prin...
A Constraintbased Partial Evaluator for Functional Logic Programs and its Application
, 1998
"... The aim of this work is the development and application of a partial evaluation procedure for rewritingbased functional logic programs. Functional logic programming languages unite the two main declarative programming paradigms. The rewritingbased computational model extends traditional functional ..."
Abstract

Cited by 12 (0 self)
 Add to MetaCart
The aim of this work is the development and application of a partial evaluation procedure for rewritingbased functional logic programs. Functional logic programming languages unite the two main declarative programming paradigms. The rewritingbased computational model extends traditional functional programming languages by incorporating logical features, including logical variables and builtin search, into its framework. This work is the first to address the automatic specialisation of these functional logic programs. In particular, a theoretical framework for the partial evaluation of rewritingbased functional logic programs is defined and its correctness is established. Then, an algorithm is formalised which incorporates the theoretical framework for the procedure in a fully automatic technique. Constraint solving is used to represent additional information about the terms encountered during the transformation in order to improve the efficiency and size of the residual programs. ...
An Operational Semantics of a Simulator Algorithm
 International Institute for Software Technology, United Nations University
, 2000
"... The semantics of a hardware description language is usually given informally in terms of how a simulator should behave. We give an operational semantics of simple version of Verilog hardware description language. We also outline some techniques of possible formal reasoning based on the operational s ..."
Abstract

Cited by 11 (3 self)
 Add to MetaCart
The semantics of a hardware description language is usually given informally in terms of how a simulator should behave. We give an operational semantics of simple version of Verilog hardware description language. We also outline some techniques of possible formal reasoning based on the operational semantics.
Formal Reasoning with Verilog HDL
 In Workshop on Formal Techniques for Hardware and Hardwarelike Systems, Marstrand
, 1998
"... Most hardware verification techniques tend to fall under one of two broad, yet separate caps: simulation or formal verification. This paper briefly presents a framework in which formal verification plays a crucial role within the standard approach currently used by the hardware industry. As a basis ..."
Abstract

Cited by 8 (2 self)
 Add to MetaCart
(Show Context)
Most hardware verification techniques tend to fall under one of two broad, yet separate caps: simulation or formal verification. This paper briefly presents a framework in which formal verification plays a crucial role within the standard approach currently used by the hardware industry. As a basis for this, the formal semantics of Verilog HDL are defined, and properties about synchronization and mutual exclusion algorithms are proved.
Towards a Formal Semantics of Verilog using Duration Calculus
 Formal Techniques for RealTime and Fault Tolerant Systems (FTRTFT'98). LNCS
, 1998
"... We formalise the semantics of V \Gamma , a simple version of Verilog hardware description language using an extension of Duration Calculus. The language is simple enough for experimenting formalisation, but contains sufficient features for being practically relevant. V \Gamma programs can exhibi ..."
Abstract

Cited by 8 (2 self)
 Add to MetaCart
(Show Context)
We formalise the semantics of V \Gamma , a simple version of Verilog hardware description language using an extension of Duration Calculus. The language is simple enough for experimenting formalisation, but contains sufficient features for being practically relevant. V \Gamma programs can exhibit a rich variety of computations, and it is therefore necessary to extend Duration Calculus with several features, including Weakly Monotonic Time, infinite intervals and fixed point operators. The semantics is compositional and can be used as the formal basis of a formal theory of Verilog. Gerardo Schneider is a fellow of UNU/IIST, on leave from Catholic University of Pelotas, Brazil, where he is a lecturer. Xu Qiwen is a Research Fellow of UNU/IIST. His research interest is in Formal Techniques of Programming, including Theory for Concurrency and Real Time, Verification and Design Calculi. Email: qxu@iist.unu.edu Copyright c fl 1998 by UNU/IIST, Gerardo Schneider and Xu Qiwen Contents...
Towards an Operational Semantics of Verilog
, 1998
"... We give an operational semantics of simple version of Verilog hardware description language. Gerardo Schneider is a fellow of UNU/IIST, on leave from Catholic University of Pelotas, Brazil, where he is a lecturer. Xu Qiwen is a Research Fellow of UNU/IIST. His research interest is in Formal Techniq ..."
Abstract

Cited by 6 (0 self)
 Add to MetaCart
We give an operational semantics of simple version of Verilog hardware description language. Gerardo Schneider is a fellow of UNU/IIST, on leave from Catholic University of Pelotas, Brazil, where he is a lecturer. Xu Qiwen is a Research Fellow of UNU/IIST. His research interest is in Formal Techniques of Programming, including Theory for Concurrency and Real Time, Verification and Design Calculi. Email: qxu@iist.unu.edu Copyright c fl 1998 by UNU/IIST, Gerardo Schneider and Xu Qiwen Contents i Contents 1 Introduction 1 2 A Subset of Verilog and its Operational Semantics 1 2.1 Procedural Assignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 2.2 Delay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 2.3 Wait . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2.4 Event control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2.5 Continuous Assignment . . ....
High Level Verification of Control Intensive Systems Using Predicate Abstraction
 ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS
, 2003
"... Predicate abstraction has been widely used for model checking hardware/software systems. However, for control intensive systems, existing predicate abstraction techniques can potentially result in a blowup of the size of the abstract model. We deal with this problem by retaining important control va ..."
Abstract

Cited by 5 (0 self)
 Add to MetaCart
Predicate abstraction has been widely used for model checking hardware/software systems. However, for control intensive systems, existing predicate abstraction techniques can potentially result in a blowup of the size of the abstract model. We deal with this problem by retaining important control variables in the abstract model. By this method we avoid having to introduce an unreasonable number of predicates to simulate the behavior of the control variables. We also show how to improve predicate abstraction by extracting useful information from a high level representation of hardware/software systems. This technique works by first extracting relevant branch conditions. These branch conditions are used to invalidate spurious abstract counterexamples through a new counterexamplebased lazy refinement algorithm. Experimental results are included to demonstrate the effectiveness of our methods.
Integrating Variants of DC
, 1999
"... There are many variants of DC, each of which is designed to deal with a specific feature of realtime computing systems, such as liveness properties, recursive programs, divergence, superdense computation of imperative languages. This report attempts to integrate those variants, and provides a DCba ..."
Abstract

Cited by 5 (0 self)
 Add to MetaCart
(Show Context)
There are many variants of DC, each of which is designed to deal with a specific feature of realtime computing systems, such as liveness properties, recursive programs, divergence, superdense computation of imperative languages. This report attempts to integrate those variants, and provides a DCbased design method for the mixed software/hardware systems. The language is a conservative extension of DC in the sense that it adopts the same semantic definition for all the ingredients of DC. We add the weak chop inverse, higher order quantification, substitution and point values of state variables into DC, and show that the new language preserves all the laws of variants of DC, including Neighbourhood Logic, Duration Calculus with Iteration, Higherorder Duration Calculus, DC with Superdense Chop, and Recursive Duration Calculus. The language has been successfully used in formalising an industrial specification language Timed RSL and the Hardware Description Language Verilog. He Jifeng ...
From Operational Semantics to Denotational Semantics for Verilog
 Proc. CHARME 2001: 11th Advanced Research Working Conference on Correct Hardware Design and Verification Methods
, 2001
"... This paper presents the derivation of a denotational semantics from an operational semantics for a subset of the widely used hardware description language Verilog. Our aim is to build an equivalence between the operational and denotational semantics. We propose a discrete time semantic model for ..."
Abstract

Cited by 5 (2 self)
 Add to MetaCart
This paper presents the derivation of a denotational semantics from an operational semantics for a subset of the widely used hardware description language Verilog. Our aim is to build an equivalence between the operational and denotational semantics. We propose a discrete time semantic model for Verilog.
A Formal Executable Semantics of Verilog
"... This paper describes a formal executable semantics for the Verilog hardware description language. The goal of our formalization is to provide a concise and mathematically rigorous reference augmenting the prose of the official language standard, and ultimately to aid developers of Verilogbased tools ..."
Abstract

Cited by 3 (1 self)
 Add to MetaCart
(Show Context)
This paper describes a formal executable semantics for the Verilog hardware description language. The goal of our formalization is to provide a concise and mathematically rigorous reference augmenting the prose of the official language standard, and ultimately to aid developers of Verilogbased tools; e.g., simulators, test generators, and verification tools. Our semantics applies equally well to both synthesizeable and behavioral designs and is given in a familiar, operationalstyle within a logic providing important additional benefits above and beyond static formalization. In particular, it is executable and searchable so that one can ask questions about how a, possibly nondeterministic, Verilog program can legally behave under the formalization. The formalization should not be seen as the final word on Verilog, but rather as a starting point and basis for community discussions on the Verilog semantics.