Results 1  10
of
109,934
A Structural Approach to Operational Semantics
, 1981
"... Syntax of a very simple programming language called L. What is abstract about it will be discussed a little here and later at greater length. For us syntax is a collection of syntactic sets of phrases; each set corresponds to a different type of phrase. Some of these sets are very simple and can be ..."
Abstract

Cited by 1541 (3 self)
 Add to MetaCart
Syntax of a very simple programming language called L. What is abstract about it will be discussed a little here and later at greater length. For us syntax is a collection of syntactic sets of phrases; each set corresponds to a different type of phrase. Some of these sets are very simple and can be taken as given: Truthvalues This is the set T = ftt; ffg and is ranged over by (the metavariable) t (and we also happily employ for this (and any other) metavariable sub and superscripts to generate other metavariables: t ; t 0 ; t 1k ).
Linear pattern matching algorithms
 IN PROCEEDINGS OF THE 14TH ANNUAL IEEE SYMPOSIUM ON SWITCHING AND AUTOMATA THEORY. IEEE
, 1972
"... In 1970, Knuth, Pratt, and Morris [1] showed how to do basic pattern matching in linear time. Related problems, such as those discussed in [4], have previously been solved by efficient but suboptimal algorithms. In this paper, we introduce an interesting data structure called a bitree. A linear ti ..."
Abstract

Cited by 549 (0 self)
 Add to MetaCart
In 1970, Knuth, Pratt, and Morris [1] showed how to do basic pattern matching in linear time. Related problems, such as those discussed in [4], have previously been solved by efficient but suboptimal algorithms. In this paper, we introduce an interesting data structure called a bitree. A linear time algorithm for obtaining a compacted version of a bitree associated with a given string is presented. With this construction as the basic tool, we indicate how to solve several pattern matching problems, including some from [4], in linear time.
A Transformation System for Developing Recursive Programs
, 1977
"... A system of rules for transforming programs is described, with the programs in the form of recursion equations An initially very simple, lucid. and hopefully correct program IS transformed into a more efficient one by altering the recursion structure Illustrative examples of program transformations ..."
The Semantics of Predicate Logic as a Programming Language
 Journal of the ACM
, 1976
"... ABSTRACT Sentences in firstorder predicate logic can be usefully interpreted as programs In this paper the operational and fixpomt semantics of predicate logic programs are defined, and the connections with the proof theory and model theory of logic are investigated It is concluded that operational ..."
Abstract

Cited by 810 (18 self)
 Add to MetaCart
that operational semantics is a part of proof theory and that fixpolnt semantics is a special case of modeltheoret:c semantics KEY WORDS AND PHRASES predicate logic as a programming language, semantics of programming languages, resolution theorem proving, operaUonal versus denotatlonal semantics, SL
A Theory of Diagnosis from First Principles
 ARTIFICIAL INTELLIGENCE
, 1987
"... Suppose one is given a description of a system, together with an observation of the system's behaviour which conflicts with the way the system is meant to behave. The diagnostic problem is to determine those components of the system which, when assumed to be functioning abnormally, will explain ..."
Abstract

Cited by 1117 (5 self)
 Add to MetaCart
Suppose one is given a description of a system, together with an observation of the system's behaviour which conflicts with the way the system is meant to behave. The diagnostic problem is to determine those components of the system which, when assumed to be functioning abnormally, will explain the discrepancy between the observed and correct system behaviour. We propose a general theory for this problem. The theory requires only that the system be described in a suitable logic. Moreover, there are many such suitable logics, e.g. firstorder, temporal, dynamic, etc. As a result, the theory accommodates diagnostic reasoning in a wide variety of practical settings, including digital and analogue circuits, medicine, and database updates. The theory leads to an algorithm for computing all diagnoses, and to various results concerning principles of measurement for discriminating among competing diagnoses. Finally, the theory reveals close connections between diagnostic reasoning and nonmonotonic reasoning.
Concurrent Constraint Programming
, 1993
"... This paper presents a new and very rich class of (concurrent) programming languages, based on the notion of comput.ing with parhal information, and the concommitant notions of consistency and entailment. ’ In this framework, computation emerges from the interaction of concurrently executing agent ..."
Abstract

Cited by 502 (16 self)
 Add to MetaCart
This paper presents a new and very rich class of (concurrent) programming languages, based on the notion of comput.ing with parhal information, and the concommitant notions of consistency and entailment. ’ In this framework, computation emerges from the interaction of concurrently executing agents that communicate by placing, checking and instantiating constraints on shared variables. Such a view of computation is interesting in the context of programming languages because of the ability to represent and manipulate partial information about the domain of discourse, in the context of concurrency because of the use of constraints for communication and control, and in the context of AI because of the availability of simple yet powerful mechanisms for controlling inference, and the promise that very rich representational/programming languages, sharing the same set of abstract properties, may be possible. To reflect this view of computation, [Sar89] develops the cc family of languages. We present here one member of the family, CC(.L,+) (pronounced “cc with Ask and Choose”) which provides the basic operations of blocking Ask and atomic Tell and an algebra of behaviors closed under prefixing, indeterministic choice, interleaving, and hiding, and provides a mutual recursion operator. cc(.L,t) is (intentionally!) very similar to Milner’s CCS, but for the radically different underlying concept of communication, which, in fact, pro’ The class is founded on the notion of “constraint logic programming ” [JL87,Mah87], fundamentally generalizes concurrent logic programming, and is the subject of the first author’s dissertation [Sar89], on which this paper is substantially based.
A calculus for cryptographic protocols: The spi calculus
 Information and Computation
, 1999
"... We introduce the spi calculus, an extension of the pi calculus designed for the description and analysis of cryptographic protocols. We show how to use the spi calculus, particularly for studying authentication protocols. The pi calculus (without extension) suffices for some abstract protocols; the ..."
Abstract

Cited by 919 (55 self)
 Add to MetaCart
We introduce the spi calculus, an extension of the pi calculus designed for the description and analysis of cryptographic protocols. We show how to use the spi calculus, particularly for studying authentication protocols. The pi calculus (without extension) suffices for some abstract protocols; the spi calculus enables us to consider cryptographic issues in more detail. We represent protocols as processes in the spi calculus and state their security properties in terms of coarsegrained notions of protocol equivalence.
Logical foundations of objectoriented and framebased languages
 JOURNAL OF THE ACM
, 1995
"... We propose a novel formalism, called Frame Logic (abbr., Flogic), that accounts in a clean and declarative fashion for most of the structural aspects of objectoriented and framebased languages. These features include object identity, complex objects, inheritance, polymorphic types, query methods, ..."
Abstract

Cited by 880 (64 self)
 Add to MetaCart
We propose a novel formalism, called Frame Logic (abbr., Flogic), that accounts in a clean and declarative fashion for most of the structural aspects of objectoriented and framebased languages. These features include object identity, complex objects, inheritance, polymorphic types, query methods, encapsulation, and others. In a sense, Flogic stands in the same relationship to the objectoriented paradigm as classical predicate calculus stands to relational programming. Flogic has a modeltheoretic semantics and a sound and complete resolutionbased proof theory. A small number of fundamental concepts that come from objectoriented programming have direct representation in Flogic; other, secondary aspects of this paradigm are easily modeled as well. The paper also discusses semantic issues pertaining to programming with a deductive objectoriented language based on a subset of Flogic.
Results 1  10
of
109,934