Network


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

Hotspot


Dive into the research topics where Michael A. Harrison is active.

Publication


Featured researches published by Michael A. Harrison.


Communications of The ACM | 1976

Protection in operating systems

Michael A. Harrison; Walter L. Ruzzo; Jeffrey D. Ullman

A model of protection mechanisms in computing systems is presented and its appropriateness is argued. The “safety” problem for protection systems under this model is to determine in a given situation whether a subject can acquire a particular right to an object. In restricted cases, it can be shown that this problem is decidable, i.e. there is an algorithm to determine whether a system in a particular configuration is safe. In general, and under surprisingly weak assumptions, it cannot be decided if a situation is safe. Various implications of this fact are discussed.


ACM Transactions on Programming Languages and Systems | 1980

An Improved Context-Free Recognizer

Susan L. Graham; Michael A. Harrison; Walter L. Ruzzo

A new algorithm for recognizing and parsing arbitrary context-free languages is presented, and several new results are given on the computational complexity of these problems. The new algorithm is of both practical and theoretical interest. It is conceptually simple and allows a variety of efficient implementations, which are worked out in detail. Two versions are given which run in faster than cubic time. Surprisingly close connections between the Cocke-Kasami-Younger and Earley algorithms are established which reveal that the two algorithms are “almost” identical.


Journal of the ACM | 1967

One-way stack automata

Seymour Ginsburg; Sheila A. Greibach; Michael A. Harrison

A number of operations which either preserve sets accepted by one-way stack automata or preserve sets accepted by deterministic one-way stack automata are presented. For example, sequential transduction preserves the former; set complementation, the latter. Several solvability questions are also considered.


Journal of the ACM | 1967

Stack automata and compiling

Seymour Ginsburg; Sheila A. Greibach; Michael A. Harrison

Compilation consists of two parts, recognition and translation. A mathematical model is presented which embodies salient features of many modern compiling techniques. The model, called the stack automaton, has the desirable feature of being deterministic in nature. This deterministic device is generalized to a nondeterministic device (nondeterministic stack automaton) and particular instances of this more general device are noted. Sets accepted by nondeterministic stack automata are recursive. Each set accepted by a deterministic linear bounded automaton is accepted by some nonerasing stack automaton. Each context-sensitive language is accepted by some (deterministic) stack automaton.


Journal of Computer and System Sciences | 1973

Strict deterministic grammars

Michael A. Harrison; Ivan M. Havel

A grammatical definition of a family of deterministic context free languages is presented. It is very easy to decide if a context free grammar is strict deterministic. A characterization theorem involving pushdown automata is proved, and it follows that the strict deterministic languages are coextensive with the family of prefix free deterministic languages. It is possible to obtain an infinite hierarchy of strict deterministic languages as defined by their degree.


programming language design and implementation | 1994

Accurate static estimators for program optimization

Tim A. Wagner; Vance Maverick; Susan L. Graham; Michael A. Harrison

Determining the relative execution frequency of program regions is essential for many important optimization techniques, including register allocation, function inlining, and instruction scheduling. Estimates derived from profiling with sample inputs are generally regarded as the most accurate source of this information; static (compile-time) estimates are considered to be distinctly inferior. If static estimates were shown to be competitive, however, their convenience would outweigh minor gains from profiling, and they would provide a sound basis for optimization when profiling is impossible. We use quantitative metrics to compare estimates from static analysis to those derived from profiles. For C programs, simple techniques for predicting branches and loop counts suffice to estimate intraprocedural frequency patterns with high accuracy. To determine inter-procedural estimates successfully, we combine function-level information with a Markov model of control flow over the call graph to produce arc and basic block frequency estimates for the entire program. For a suite of 14 programs, including the C programs from the SPEC92 benchmark suite, we demonstrate that static estimates are competitive with those derived from profiles. Using simple heuristics, we can determine the most frequently executed blocks in each function with 81% accuracy. With the Markov model, we identify 80% of the frequently called functions. Combining the two techniques, we identify 76% of the most frequently executed call sites.


symposium on operating systems principles | 1975

On protection in operating systems

Michael A. Harrison; Walter L. Ruzzo; Jeffrey D. Ullman

A model of protection mechanisms in computing systems is presented and its appropriateness is demonstrated. The “safety” problem for protection systems under our model is to determine in a given situation whether a subject can acquire a particular right to an object. In restricted cases, one can show that this problem is decidable, i.e., there is an algorithm to determine whether a system in a particular configuration is safe. In general, and under surprisingly weak assumptions, one cannot decide if a situation is safe. Various implications of this fact are discussed.


Journal of the ACM | 1974

On the Parsing of Deterministic Languages

Ivan M. Havel; Michael A. Harrison

A parsing method for strict deterministic grammars is presented and a technique for using it to parse any deterministic language is indicated. An important characterization of the trees of strict deterministic grammars is established. This is used to prove iteration theorems for (strict) deterministic languages, and hence proving that certain sets are not in these families becomes comparatively straightforward. It is shown that every strict deterministic grammar is LR(0) and that any strict deterministic grammar is equivalent to a bounded right context (1, 0) grammar. Thus rigorous proofs that the families of deterministic, LR (k), and bounded right context languages are coextensive are presented for the first time.


SIAM Journal on Computing | 1972

Real-Time Strict Deterministic Languages

Michael A. Harrison; Ivan M. Havel

The family of strict deterministic languages has been studied for its theoretical properties and applications to parsing. In particular, these languages have been shown to be precisely the prefix-free deterministic languages. Deterministic pushdown automata are called (quasi-)real time if they have no (only a bounded number of consecutive) null moves. It is shown that for strict deterministic languages, the quasi-real-time and real-time constraints are equivalent (except for


Information & Computation | 1967

Two-way pushdown automata

Jim Gray; Michael A. Harrison; Oscar H. Ibarra

\{ \Lambda \}

Collaboration


Dive into the Michael A. Harrison's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar

Seymour Ginsburg

University of Southern California

View shared research outputs
Top Co-Authors

Avatar

Ivan M. Havel

University of California

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Pehong Chen

University of California

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge