Results 1 
6 of
6
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.
Making Geometry Visible: An introduction to the Animation of Geometric Algorithms
, 1997
"... ion There are times when the amount of data produced by a program overwhelms the user. When this happens, an animation confuses more than it educates. If the algorithm is complex, and uses several different data structures and subalgorithms, the user may get lost in the details and not see the ov ..."
Abstract

Cited by 11 (1 self)
 Add to MetaCart
ion There are times when the amount of data produced by a program overwhelms the user. When this happens, an animation confuses more than it educates. If the algorithm is complex, and uses several different data structures and subalgorithms, the user may get lost in the details and not see the overall picture. In such cases, the programmer should condense complicated parts of the scene into simpler items, like boxes. This is the approach taken in several videos we have reviewed. Time can also be abstracted, if several phases of an algorithm are omitted and only the final result of several program steps is presented. An ideal system should include facilities that help the programmer implement this sort of abstraction. Ideally, all the detail should be accessible to the user if he/she needs to see it. This is called semantic zooming. Sometimes, of course, it may be desirable to present the viewer with large amounts of information. This occurs when several sorts are simultaneously c...
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 10 (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 Visualization As A Pedagogical Tool: Redressing Some ITS Fallacies
 ITS Fallacies, Instructional Science
, 1992
"... : The longterm future of Intelligent Tutoring Systems (ITSs) for the teaching of programming is severely hampered by weaknesses which prevent ITSs from scaling up to cater for either a wide audience or a broad curriculum. The weaknesses include an emphasis on toy examples, the use of instructionba ..."
Abstract

Cited by 3 (0 self)
 Add to MetaCart
: The longterm future of Intelligent Tutoring Systems (ITSs) for the teaching of programming is severely hampered by weaknesses which prevent ITSs from scaling up to cater for either a wide audience or a broad curriculum. The weaknesses include an emphasis on toy examples, the use of instructionbased (as opposed to guided discoverybased) teaching, a lack of attention to user interfaces, and the belief that it is possible to create a comprehensive bug catalogue. We propose an alternative approach, based on examining the needs of expert programmers, and considering a pedagogical trajectory which caters for development from novice to expert. The common thread through this trajectory is "Software Visualization", a collection of techniques which allows beginners to see the innards of program execution clearly, and at the same time allows experts to view high level program abstractions which help them home in quickly on buggy code. We rework some well known examples from the ITS communit...
Data Oriented LP with Magritte
"... Logic Programming applications and environment tools use a great variety of data representations and interaction paradigms, precluding data sharing and reusing data interaction routines defined by applications dealing with large and complex terms. To overcome these problems and towards simplifying t ..."
Abstract
 Add to MetaCart
Logic Programming applications and environment tools use a great variety of data representations and interaction paradigms, precluding data sharing and reusing data interaction routines defined by applications dealing with large and complex terms. To overcome these problems and towards simplifying the development of an integrated spreadsheetlike environment, we propose the creation of a common framework for user interaction in Logic Programming. A prototype of the proposed framework, implemented in Prolog with an interface to the X windowing system, is also described. 1 Introduction Logic Programming (LP) applications dealing with large and complex data require special visualizations/manipulations adapted to the standard graphical representations used in their fields (cf. [2] for situation semantics and [11] for natural language processing). These special interaction predicates are difficult to develop and reuse by other environment tools, such as debuggers. On the other hand, LP env...
Data Flow Tracing For Algorithm Animation
, 1999
"... Software visualisation consists of applying various multimedia techniques for significant improvement of human understanding of computer software. If the subject of such visualisation is an algorithm, and computer generated animation is essential for its realisation, we say of algorithm animation. ..."
Abstract
 Add to MetaCart
Software visualisation consists of applying various multimedia techniques for significant improvement of human understanding of computer software. If the subject of such visualisation is an algorithm, and computer generated animation is essential for its realisation, we say of algorithm animation.