Results 11  20
of
108
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 19 (11 self)
 Add to MetaCart
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.
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 17 (9 self)
 Add to MetaCart
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.
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.
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 14 (9 self)
 Add to MetaCart
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.
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
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
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 13 (4 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
Algebraic Semiotics, ProofWebs, and Distributed Cooperative Proving
 Proceedings, User Interfaces for Theorem Provers
, 1997
"... : We describe a new approach to interface design called algebraic semiotics, combining semiotics with algebraic specification to give a rigorous theory of representation quality, and we apply it to the tatami distributed cooperative proving project. This project uses standard html, Java, etc. for r ..."
Abstract

Cited by 11 (9 self)
 Add to MetaCart
: We describe a new approach to interface design called algebraic semiotics, combining semiotics with algebraic specification to give a rigorous theory of representation quality, and we apply it to the tatami distributed cooperative proving project. This project uses standard html, Java, etc. for remote proof browsing, servers for remote proof execution, a protocol to maintain truth of distributed cooperative proofs, and a tool combining proof assistance with website editing. Its proof paradigm reduces theorems to problems solvable by proof servers. ProofWebs integrate browsing, execution, animation, and informal explanation with formal proofs, and their design has been driven by semiotic ideas. 1 Introduction The landscape of theorem proving can be seen as two main peaks with a great plane between. These peaks represent fully automatic theorem provers and proof checking theorem provers; the plane represents the difficulty of combining their virtues. The peaks are steep and dark bec...
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 11 (3 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.
A Hidden Herbrand Theorem: Combining the Object and Logic Paradigms
 Principles of Declarative Programming
, 1998
"... : The benefits of the object, logic (or relational), functional, and constraint paradigms ..."
Abstract

Cited by 11 (3 self)
 Add to MetaCart
: The benefits of the object, logic (or relational), functional, and constraint paradigms
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 10 (0 self)
 Add to MetaCart
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 ...