Results 11  20
of
117
Semiotic Morphisms, Representations and Blending for Interface Design
 In Proceedings, AMAST Workshop on Algebraic Methods in Language Processing
, 2003
"... Issues of representation arise in natural language processing, user interface design, art, and indeed, communication with any medium. This paper addresses such issues using algebraic semiotics, which draws on algebraic speci cation to give (among other things) an algebraic theory of representati ..."
Abstract

Cited by 20 (9 self)
 Add to MetaCart
(Show Context)
Issues of representation arise in natural language processing, user interface design, art, and indeed, communication with any medium. This paper addresses such issues using algebraic semiotics, which draws on algebraic speci cation to give (among other things) an algebraic theory of representation, and a generalization of blending in the sense of cognitive linguistics.
Refocusing in Reduction Semantics
, 2004
"... The evaluation function of a reduction semantics (i.e., a smallstep operational semantics with an explicit representation of the reduction context) is canonically defined as the transitive closure of (1) decomposing a term into a reduction context and a redex, (2) contracting this redex, and (3) ..."
Abstract

Cited by 20 (5 self)
 Add to MetaCart
The evaluation function of a reduction semantics (i.e., a smallstep operational semantics with an explicit representation of the reduction context) is canonically defined as the transitive closure of (1) decomposing a term into a reduction context and a redex, (2) contracting this redex, and (3) plugging the contractum in the context. Directly implementing this evaluation function therefore yields an interpreter with a worstcase overhead, for each step, that is linear in the size of the input term. We present
Social and Semiotic Analyses for Theorem Prover User Interface Design
 Formal Aspects of Computing
, 1999
"... We describe an approach to user interface design based on ideas from social science, narratology (the theory of stories), cognitive science, and a new area called algebraic semiotics. Social analysis helps to identify certain roles for users with their associated requirements, and suggests ways to m ..."
Abstract

Cited by 18 (11 self)
 Add to MetaCart
(Show Context)
We describe an approach to user interface design based on ideas from social science, narratology (the theory of stories), cognitive science, and a new area called algebraic semiotics. Social analysis helps to identify certain roles for users with their associated requirements, and suggests ways to make proofs more understandable, while algebraic semiotics, which combines semiotics with algebraic specification, provides rigorous theories for interface functionality and for a certain technical notion of quality. We apply these techniques to designing user interfaces for a distributed cooperative theorem proving system, whose main component is a website generation and proof assistance tool called Kumo. This interface integrates formal proving, proof browsing, animation, informal explanation, and online background tutorials, drawing on a richer than usual notion of proof. Experience with using the interface is reported, and some conclusions are drawn.
Phobos: A frontend approach to extensible compilers
, 2003
"... This paper describes a practical approach for implementing domainspecific languages with extensible compilers. Given a compiler with one or more frontend languages, we introduce the idea of a "generic" frontend that allows the syntactic and semantic specification of domainspecific langu ..."
Abstract

Cited by 15 (9 self)
 Add to MetaCart
(Show Context)
This paper describes a practical approach for implementing domainspecific languages with extensible compilers. Given a compiler with one or more frontend languages, we introduce the idea of a "generic" frontend that allows the syntactic and semantic specification of domainspecific languages. Phobos, our generic frontend, offers modular language specification, allowing the programmer to define new syntax and semantics incrementally.
Normal Forms for Partitions and Relations
 Recent Trends in Algebraic Development Techniques, volume 1589 of Lect. Notes in Comp. Science
, 1999
"... Recently there has been a growing interest towards algebraic structures that are able to express formalisms different from the standard, treelike presentation of terms. Many of these approaches reveal a specific interest towards their application in the "distributed and concurrent systems" ..."
Abstract

Cited by 14 (11 self)
 Add to MetaCart
Recently there has been a growing interest towards algebraic structures that are able to express formalisms different from the standard, treelike presentation of terms. Many of these approaches reveal a specific interest towards their application in the "distributed and concurrent systems" field, but an exhaustive comparison between them is difficult because their presentations can be quite dissimilar. This work is a first step towards a unified view, which is able to recast all those formalisms into a more general one, where they can be easily compared. We introduce a general schema for describing a characteristic normal form for many algebraic formalisms, and show that those normal forms can be thought of as arrows of suitable concrete monoidal categories.
Detection of metamorphic computer viruses using algebraic specification
 Journal in Computer Virology
, 2006
"... This paper describes a new approach towards the detection of metamorphic computer viruses through the algebraic specification of an assembly language. Metamorphic computer viruses are computer viruses that apply a variety of syntaxmutating, behaviourpreserving metamorphoses to their code in order ..."
Abstract

Cited by 14 (7 self)
 Add to MetaCart
(Show Context)
This paper describes a new approach towards the detection of metamorphic computer viruses through the algebraic specification of an assembly language. Metamorphic computer viruses are computer viruses that apply a variety of syntaxmutating, behaviourpreserving metamorphoses to their code in order to defend themselves against static analysis based detection methods. An overview of these metamorphoses is given. Then, in order to identify behaviourallyequivalent instruction sequences, the syntax and semantics of a subset of the IA32 assembly language instruction set is specified formally using OBJ – an algebraic specification formalism and theorem prover based on ordersorted equational logic. The concepts of equivalence and semiequivalence are given formally, and a means of proving equivalence from semiequivalence is given. The OBJ specification is shown to be useful for proving the equivalence or semiequivalence of IA32 instruction sequences by applying reductions – sequences of equational rewrites in OBJ. These proof methods are then applied to fragments of two different metamorphic computer viruses, Win95/Bistro and Win9x.Zmorph.A, in order to prove their (semi)equivalence. Finally, the application of these methods to the detection of metamorphic computer viruses in general is discussed.
Hidden Algebra for Software Engineering
 PROCEEDINGS COMBINATORICS, COMPUTATION AND LOGIC
, 1999
"... This paper is an introduction to recent research on hidden algebra and its application to software engineering; it is intended to be informal and friendly, but still precise. We first review classical algebraic specification for traditional "Platonic" abstract data types like integers, ve ..."
Abstract

Cited by 14 (0 self)
 Add to MetaCart
(Show Context)
This paper is an introduction to recent research on hidden algebra and its application to software engineering; it is intended to be informal and friendly, but still precise. We first review classical algebraic specification for traditional "Platonic" abstract data types like integers, vectors, matrices, and lists. Software engineering also needs changeable "abstract machines," recently called "objects," that can communicate concurrently with other objects through visible "attributes" and statechanging "methods." Hidden algebra is a new development in algebraic semantics designed to handle such systems. Equational theories are used in both cases, but the notion of satisfaction for hidden algebra is behavioral, in the sense that equations need only appear to be true under all possible experiments; this extra flexibility is needed to accommodate the clever implementations that software engineers often use to conserve space and/or time. The most important results in hidden algebra are ...
Software Specification and Verification in Rewriting Logic
, 2003
"... One can distinguish two specification levels: a system specification level, in which the computational system of interest is specified; and a property specification level, in which the relevant properties are specified. These lectures present an approach to executable system specification based on e ..."
Abstract

Cited by 13 (4 self)
 Add to MetaCart
One can distinguish two specification levels: a system specification level, in which the computational system of interest is specified; and a property specification level, in which the relevant properties are specified. These lectures present an approach to executable system specification based on equational logic for deterministic systems and on rewriting logic for concurrent systems that is seamlessly integrated with a property specification level using firstorder, inductive, and temporal logics. This integration is directly supported by formal verification tools in the formal environment of the Maude rewriting logic language. We show how this approach and the supporting tools can be applied to the specification and verification of a wide variety of programs, that can be either declarative or imperative, and either deterministic or concurrent.
Formal JVM code analysis in JavaFAN
 Proc. AMAST’04, Springer LNCS
, 2004
"... Abstract. The JavaFAN uses a Maude rewriting logic specification of the JVM semantics as the basis of a software analysis tool with competitive performance. JavaFAN supports formal analysis of concurrent JVM programs by means of symbolic simulation, breadthfirst search, and LTL model checking. We d ..."
Abstract

Cited by 13 (5 self)
 Add to MetaCart
(Show Context)
Abstract. The JavaFAN uses a Maude rewriting logic specification of the JVM semantics as the basis of a software analysis tool with competitive performance. JavaFAN supports formal analysis of concurrent JVM programs by means of symbolic simulation, breadthfirst search, and LTL model checking. We discuss JavaFAN’s executable formal specification of the JVM, illustrate is formal analysis capabilities using several case studies, and compare its performance with similar Java analysis tools. 1
An Overview of the Tatami Project
, 2000
"... This paper describes the Tatami project at UCSD, which is developing a system to support distributed cooperative software development over the web, and in particular, the validation of concurrent distributed software. The main components of our current prototype are a proof assistant, a generator fo ..."
Abstract

Cited by 13 (8 self)
 Add to MetaCart
(Show Context)
This paper describes the Tatami project at UCSD, which is developing a system to support distributed cooperative software development over the web, and in particular, the validation of concurrent distributed software. The main components of our current prototype are a proof assistant, a generator for documentation websites, a database, an equational proof engine, and a communication protocol to support distributed cooperative work. We believe behavioral specification and verification are important for software development, and for this purpose we use first order hidden logic with equational atoms. The paper also briefly describes some novel user interface design methods that have been developed and applied in the project