Curriculum Vitae Of

Prabhaker Mateti

Associate Professor
Department of Computer Science and Engineering
Wright State University
Dayton, Ohio 45435-0001
mailto:pmateti@wright.edu
http://www.cs.wright.edu/people/faculty/pmateti/
(937) 775-5114 (office)
(937) 775-5131 (secretary)
(937) 775-5133 (fax)

Personal Details

U.S. Citizen
Wife: Kalyani; Two sons (Tejasvi, 1979 - 2006; and Kiron, b. 1983)
Home Address: 2886 Kemp Rd, Beavercreek, Ohio 45431
Home Phone: (937) 427-1440

Education

Employment

Publications in Refereed Journals and Books

Conference (Refereed) Publications

Other Publications

Graduate Students

PhD Students

MS Students

Research Interests

I am interested in Internet security, distributed systems, technical aspects of software engineering, computer drawings, graph algorithms, and programming language design.

Research Grants

Internet Security

I am interested in Internet security from both research and teaching points of view. I use the label Internet security to include network security and system security. I and my students have been exploring security hardening the Linux kernel, improving security during the /sbin/init stage, etc.

Distributed Computing

Software Design Environments

I am building a design environment, called DOME. This environment will facilitate not only the process of design, but also the manipulation of the resulting designs. Designs are expressed in ÔM. It will contain limited domain theorem provers to facilitate qualitative analysis, design knowledge bases to guide ongoing process of design, and visually oriented debuggers and test generators that can profitably use the abstract views as found in designs. To date, over a dozen MS theses, and three PhD dissertations (two under my direction) have been produced on this project.

Formal Methods in Software Engineering

Work on DOME focusses on developing formal specifications and correctness proofs of realistic, but still rather small, programs with computer support essential for the application of formal methods to be fruitful in practice.

Limited Domain Theorem Proving

In the formal verification of programs from a rather limited domain of problems, the mathematical theorems that need to be proven have such properties that decision procedures can be devised for them. [Mateti 81] work is considered original in this area. We wished to extend our method of using closure and local implication rules to a wider class of problems than the small subset of sorting domain that we proved decidable. We have extended this to include Shell-sort also.

Transformations

I have studied algorithms that destructively traverse data structures, while returning it to original state before they are done. We developed the semantic notion of "abstract equivalence" which is important for such an understanding of recursion. We demonstrated by a series of program transformations the presence of in situ stacks in Morris' tree traversal algorithm, the Towers of Hanoi problem and the generalized list marking algorithms. I am presently developing a high-level language to express parse-tree based transformations.

Language Design

The design of a design specification language, called ÔM, is an on-going task. ÔM gracefully merges functional programming concepts with predicative concepts.

Automated Drawings

Even though diagrams are used widely in all areas of design, and specifically in programming, only a few papers consider the systematic drawing of them, and address topics such as (1) what makes the displays look pleasant or unpleasant, (2) how to draw diagrams aesthetically and automatically, (3) how do diagrams affect our productivity. We have done good work towards automating the drawing of data structures.

Software Developed

I have developed the following software practicing the software engineering and formal methods principles that I preach.

Guläm

Guläm is a command line interpreter. The Atari ST (an MC68000-based personal computer) version was released as a non-profit distribution to the public in 1987. It is now kept in all the anonymous FTP archives for that machine. It is in daily use by thousands. It integrated an Emacs-like editor, command line history, etc. into a very compact program. These features are now common-place in modern shells.

al := 0

This is a programming language clinging to the native instruction set of a CPU. I developed two similar looking languages: al:=0 for MC68000, and al:=0 for i8086. My students Chuck Heller, and Jay Patel developed compilers for these.

Indent

Indent is a pretty-printer for Pascal source code. It was in wide use because of its speed, and compactness. It also happens to be a proven-correct program (see my Publications).

DOME

DOME is a computer-aided design environment for software based on formal methods. This is an on-going project at present.

Courses Taught

Professional Society Affiliations

Service

May 2008


File translated from TEX by TTH, version 3.67.
On 1 Jun 2008, 21:37.