Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Ruth E. Davis is active.

Publication


Featured researches published by Ruth E. Davis.


IEEE Software | 1985

Logic Programming and Prolog: A Tutorial

Ruth E. Davis

Logic programming offers significant advantages for the massively parallel computer systems of tomorrow. This tutorial examines the potential of Prolog to implement those advantages.


IEEE MultiMedia | 1997

IMMPS: a multimedia presentation design system

Timothy K. Shih; Ruth E. Davis

Our interactive multimedia presentation development system uses artificial intelligence to specify knowledge inheritance relations between presentation windows. An object-oriented multimedia database organizes resources and presentations, and a database browser facilitates object reuse. The system runs under Windows 95 and can be used for general-purpose presentations or for education, training, or product demonstrations.


international conference on formal engineering methods | 1997

A simple program whose derivation and proof is also

Jinyun Xue; Ruth E. Davis

The article presents a sample derivation and proof for Knuths program (D. Knuth, 1990) that translates a binary fraction to a decimal fraction. The main technique used is the partition-and-recur approach, that is, partitioning the problem, deriving an algorithm represented by recurrences, and finally transforming the algorithm to a program in a straightforward manner. Practice with this example has given us more confidence that partition-and-recur is a practicable approach for derivation and proof of general algorithms and programs.


Electronic Notes in Theoretical Computer Science | 2009

Visualization of Procedural Abstraction

Stefan Schaeckeler; Weijia Shang; Ruth E. Davis

Visualizing impacts of an optimization pass helps to reason about, and to gain insight into, the inner workings of the optimization pass. In this paper, we visualize the impacts of two procedural abstraction passes. For this, we modified two procedural abstraction post pass optimizers to visualize for each the difference in machine code before and after optimization by drawing abstracted fragments in the original program. We then explain how the generated visualizations aid in better understanding the optimization passes.


technical symposium on computer science education | 2014

Recruit and retain women in undergraduate computing: success stories using research-based practices

Leisa D. Thompson; Crystal Eney; Ruth E. Davis; Tiffany Grady

Leisa D. Thompson (Moderator) National Center for Women & IT (NCWIT) University of Virginia 1-210-883-6204 [email protected] Crystal Eney University of Washington Computer Science & Engineering 1-206-685-7571 [email protected] Ruth Davis Santa Clara University Computer Engineering 1-408-554-4358 [email protected] Tiffany Grady University of Texas Austin Computer Science 1-512-471-9523 [email protected]


washington ada symposium | 1993

LSL + Ada → reusable data structures

Ruth E. Davis

Many principles of software engineering are discussed in almost every course dealing with software. However, the depth of discussion and follow-through with required practice is uneven at best. While every introductory programming class is likely to list correctness and reusability as desirable qualities of programs, few such courses require the use of any specific methodology that might lead to such qualities. Good habits must be developed early, on small programs, if they are to be successfully used on complex systems as a programmer matures. Therefore we have incorporated an introduction to formal specification and design for reuse, using Ada, in our sophomore-level data structures course. The specification, representation and implementation of abstract data structures present the ideal opportunity to introduce students to formal methods of specification and the encapsulation features of Ada that make it an ideal vehicle for the implementation of reusable software. Since the subject matter is inherently modular, it is easy to separate programming projects into units that can be combined and reused in applications designed toward the end of the course, The reusability of a student’s component is evaluated by other students as well as by the instructor. In the design “with” reuse projects, students must reuse components built by others. The components are scored by the degree of satisfaction expressed by each “reuser,”


hawaii international conference on system sciences | 1992

An automated design specification and verification tool for systolic architectures

Timothy K. Shih; Nam Ling; Ruth E. Davis; Fuyau Lin

Presents a Prolog-based verifier, VSTA, for formal specification and verification of systolic architectures. VSTA allows users to design systolic array architectures in the systolic temporal arithmetic (STA) specification language, and the designs can be semi-automatically verified by the system. In addition, the authors describe how a systolic array for LU decomposition can be specified and verified with respect to its algorithm. The proof techniques used are mathematical induction and rewriting. The induction technique is adopted to exploit the regularity and locality nature of systolic array architectures. A number of verification tactics are developed in the verifier and their operational rules are used in the verifier. Using the powerful symbolic computation ability of Prolog, particularly pattern matching, automatic backtracking, and the depth-first searching rules, the verifier performs efficiently in the construction of proofs.<<ETX>>


hawaii international conference on system sciences | 1991

Supporting the specification of logic programs

Ruth E. Davis

The system described was designed to assist in the specification, implementation, and maintenance of correct and efficient logic programs, encouraging the separation of logic and control concerns by providing an environment that maintains separate declarative and control specifications. While the support environment consists of many subsystems, including a logic interpreter, a Prolog generator, specification editors, and debugging, analysis, and verification tools, the author focuses on the specifications developed with the system. After providing a brief overview of the system, he describes the form of the initial specifications provided by the user, and then the control and declarative specifications developed interactively from the initial specifications.<<ETX>>


international conference on software engineering | 1996

Practically formal methods

Ruth E. Davis; Ronald L. Danielson

The use of formal methods in software engineering need not imply that one is committed to formal specification, derivation, and verification of all programs. Formal methods encompass a spectrum of tools and techniques; some may be more appropriate than others in a given application. In order to bring formal specifications and reuse into the mainstream of software development, we have incorporated an introduction to formal specification and design for reuse in our sophomore-level data structures course. The specification, representation and implementation of abstract data structures present the ideal opportunity to introduce students to these techniques. We present our approach to the informal, practical use of specifications as a guide to implementation, increasing both the quality of documentation and confidence in the correctness of implementation of data structures.


2012 2nd Interdisciplinary Engineering Design Education Conference (IEDEC) | 2012

Engineering a new core

Shoba Krishnan; Ruth E. Davis

A diverse and technically literate core of graduates from engineering programs is needed now more than ever before to help serve, lead, and transform a troubled world. In order to prepare our engineering students to be effective and ethical professionals, citizens, and individuals, we have restructured our curriculum through a new core that offers a more effective and coherent experience, providing more opportunities for interdisciplinary, experiential, and civic education. This paper presents our approach to preparing engineering students to not only be proficient in engineering and science principles but to be aware of the interplay among science, technology, and society. We describe the core requirements and how we adapted our program to incorporate their learning objectives through a combination of exercises required in the Introduction to Engineering course they take in their freshman year in conjunction with their senior capstone design project.

Collaboration


Dive into the Ruth E. Davis's collaboration.

Top Co-Authors

Avatar

Timothy K. Shih

National Central University

View shared research outputs
Top Co-Authors

Avatar

Fuyau Lin

Santa Clara University

View shared research outputs
Top Co-Authors

Avatar

Nam Ling

Santa Clara University

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Crystal Eney

University of Washington

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge