Results 1 -
4 of
4
Safe, Untrusted Agents using Proof-Carrying Code
- of Lecture Notes in Computer Science
, 1998
"... . Proof-Carrying Code (PCC) enables a computer system to determine, automatically and with certainty, that program code provided by another system is safe to install and execute without requiring interpretation or run-time checking. PCC has applications in any computing system in which the safe, eff ..."
Abstract
-
Cited by 29 (3 self)
- Add to MetaCart
. Proof-Carrying Code (PCC) enables a computer system to determine, automatically and with certainty, that program code provided by another system is safe to install and execute without requiring interpretation or run-time checking. PCC has applications in any computing system in which the safe, efficient, and dynamic installation of code is needed. The key idea of Proof-Carrying is to attach to the code an easily-checkable proof that its execution does not violate the safety policy of the receiving system. This paper describes the design and a typical implementation of Proof-Carrying Code, where the language used for specifying the safety properties is first-order predicate logic. Examples of safety properties that are covered in this paper are memory safety and compliance with data access policies, resource usage bounds, and data abstraction boundaries. 1 Introduction Proof-Carrying Code (PCC) enables a computer system to determine, automatically and with certainty, that program cod...
A comparison of decision procedures
- in Presburger arithmetic. LIRA '97, Univ. of Novi Sad
, 1997
"... The efficient combining and augmenting of decision procedures are often very important for a successful use of theorem provers. There are several schemes for combining and augmenting decision procedures; some of them support handling uninterpreted functions, use of available lemmas, and the like. In ..."
Abstract
-
Cited by 2 (0 self)
- Add to MetaCart
The efficient combining and augmenting of decision procedures are often very important for a successful use of theorem provers. There are several schemes for combining and augmenting decision procedures; some of them support handling uninterpreted functions, use of available lemmas, and the like. In this paper we introduce a general setting for describing different schemes for both combining and augmenting decision procedures. This setting is based on the macro inference rules used in different approaches. Some of these rules are abstraction, entailment, congruence closure and lemma invoking. The general setting gives a simple description and the key ideas of one scheme and makes different schemes comparable. Also, it makes easier combining ideas from different schemes. In this paper we describe several schemes via introduced macro inference rules and report on our prototype implementation.
A Tutorial on EVES using s-Verdi
, 1995
"... This paper provides a tutorial introduction to EVES. EVES is a formal methods tool consisting of a set theoretic-based language, called Verdi, and an automated deduction system, called NEVER. We provide a general introduction to EVES and demonstrate its capabilities using (i) some examples from set ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
This paper provides a tutorial introduction to EVES. EVES is a formal methods tool consisting of a set theoretic-based language, called Verdi, and an automated deduction system, called NEVER. We provide a general introduction to EVES and demonstrate its capabilities using (i) some examples from set theory, (ii) a small critical application (a railroad crossing), and (iii) a small program proof. Keywords: Automated deduction, EVES, Formal methods, Logic of programs, NEVER, sVerdi, Verdi. 1 Introduction The primary goal of the EVES project was to develop a "verification system" by integrating techniques from automated deduction, mathematics, language design and formal methods, such that the resulting system is useful and sound. In our parlance, a verification system has a specification and implementation language (e.g., Verdi), a proof obligation generator, and automated deduction support (e.g., NEVER). 1 To understand our perspective, some background is necessary. We believe that th...
A general setting for . . . decision procedures
, 2002
"... The efficient combining and augmenting of decision procedures are often very important for a successful use of theorem provers. There are several schemes for combining and augmenting decision procedures; some of them support handling uninterpreted functions, use of available lemmas, and the like. In ..."
Abstract
- Add to MetaCart
The efficient combining and augmenting of decision procedures are often very important for a successful use of theorem provers. There are several schemes for combining and augmenting decision procedures; some of them support handling uninterpreted functions, use of available lemmas, and the like. In this paper we introduce a general setting for describing different schemes for both combining and augmenting decision procedures. This setting is based on the macro inference rules used in different approaches. Some of these rules are abstraction, entailment, congruence closure and lemma invoking. The general setting gives a simple description and the key ideas of one scheme and makes different schemes comparable. Also, it makes easier combining ideas from different schemes. In this paper we describe several schemes via introduced macro inference rules and report on our prototype implementation.

