Demo Data from VLDB 2026 / reviewers in the wild / expert
Michael J. O'Donnell
dblp:o/MichaelJODonnell
· DBLP profile ↗
17ranked-venue papers
4as first author
0since 2021 · last 2008
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Theory of computation · 8 · 2 first-authorSoftware engineering, systems software and programming languages · 5 · 1 first-authorSystems, architecture and hardware · 2 · 1 first-authorApplied, interdisciplinary, general and emerging computing · 2Databases, data management, data science and information retrieval · 1
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Theoretical computer science
8 papers |
Algorithms and data structures · 62% Computational complexity · 14% Logic in computer science · 14% | |
| Software engineering, system software, and programming languages
6 papers |
Programming languages and type systems · 56% Compilers and program optimization · 25% Runtime systems and virtual machines · 19% | |
| Computer architecture, parallel and distributed computing, and storage systems
2 papers |
Interconnection networks and networks-on-chip · 82% Processor architecture and microarchitecture · 18% |
Topics — the 29 heaviest of 31, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Algorithms and data structures › data structure design › search structures
hashing |
0.0 | 2 | 1986 | Collections of Functions for Perfect Hashing · SIAM J. Comput. 1986 Geometric Problems with Application to Hashing · SIAM J. Comput. 1982 |
Runtime systems and virtual machines › interpreter
interpreter generation |
0.0 | 2 | 1984 | Implementation of an Interpreter for Abstract Equations · POPL 1984 Interpreter Generation Using Tree Pattern Matching · POPL 1979 |
Algorithms and data structures › data structure design › search structures › hashing
perfect hashing |
0.0 | 1 | 1986 | Collections of Functions for Perfect Hashing · SIAM J. Comput. 1986 |
Computational complexity
lower bounds |
0.0 | 1 | 1985 | Lower Bounds for Sorting with Realistic Instruction Sets · IEEE Trans. Computers 1985 |
Algorithms and data structures › sequence algorithms
sorting |
0.0 | 1 | 1985 | Lower Bounds for Sorting with Realistic Instruction Sets · IEEE Trans. Computers 1985 |
Programming languages and type systems › lambda calculus
polymorphic lambda calculus |
0.0 | 1 | 1983 | The Expressiveness of Simple and Second-Order Type Structures · J. ACM 1983 |
Programming languages and type systems › lambda calculus
typed lambda calculus |
0.0 | 1 | 1983 | The Expressiveness of Simple and Second-Order Type Structures · J. ACM 1983 |
Programming languages and type systems
abstract data types |
0.0 | 1 | 1982 | Pattern Matching in Trees · J. ACM 1982 |
Compilers and program optimization
compiler optimization |
0.0 | 1 | 1982 | Pattern Matching in Trees · J. ACM 1982 |
Programming languages and type systems › functional programming
equational programming |
0.0 | 1 | 1982 | Programming with Equations · ACM Trans. Program. Lang. Syst. 1982 |
Compilers and program optimization
program transformation |
0.0 | 1 | 1982 | Programming with Equations · ACM Trans. Program. Lang. Syst. 1982 |
Interconnection networks and networks-on-chip › switching network › multistage interconnection network
augmented data manipulator network |
0.0 | 1 | 1982 | A Combinatorial Problem Concerning Processor Interconnection Networks · IEEE Trans. Computers 1982 |
Interconnection networks and networks-on-chip
multiprocessor interconnection |
0.0 | 1 | 1982 | A Combinatorial Problem Concerning Processor Interconnection Networks · IEEE Trans. Computers 1982 |
Algorithms and data structures › data structure design › search structures › hashing
geometric hashing |
0.0 | 1 | 1982 | Geometric Problems with Application to Hashing · SIAM J. Comput. 1982 |
Computational geometry
geometric optimization |
0.0 | 1 | 1982 | Geometric Problems with Application to Hashing · SIAM J. Comput. 1982 |
Algorithms and data structures › sequence algorithms › string algorithms
string matching |
0.0 | 1 | 1982 | Pattern Matching in Trees · J. ACM 1982 |
Algorithms and data structures › sequence algorithms › string algorithms › string matching
tree pattern matching |
0.0 | 1 | 1982 | Pattern Matching in Trees · J. ACM 1982 |
Programming languages and type systems › programming paradigms
nonprocedural language |
0.0 | 1 | 1979 | Interpreter Generation Using Tree Pattern Matching · POPL 1979 |
Programming languages and type systems › type systems › polymorphism
polymorphic types |
0.0 | 1 | 1979 | A Programming Language Theorem Which Is Independent of Peano Arithmetic · STOC 1979 |
Compilers and program optimization
tree pattern matching |
0.0 | 1 | 1979 | Interpreter Generation Using Tree Pattern Matching · POPL 1979 |
Logic in computer science › meta-logic
independence result |
0.0 | 1 | 1979 | A Programming Language Theorem Which Is Independent of Peano Arithmetic · STOC 1979 |
Logic in computer science
proof theory |
0.0 | 1 | 1979 | A Programming Language Theorem Which Is Independent of Peano Arithmetic · STOC 1979 |
Processor architecture and microarchitecture
instruction set architecture |
0.0 | 1 | 1985 | Lower Bounds for Sorting with Realistic Instruction Sets · IEEE Trans. Computers 1985 |
Computational complexity › computability theory
elementary functions |
0.0 | 1 | 1983 | The Expressiveness of Simple and Second-Order Type Structures · J. ACM 1983 |
Logic in computer science › lambda calculus
normalization |
0.0 | 1 | 1983 | The Expressiveness of Simple and Second-Order Type Structures · J. ACM 1983 |
Logic in computer science › lambda calculus › normalization
strong normalization |
0.0 | 1 | 1983 | The Expressiveness of Simple and Second-Order Type Structures · J. ACM 1983 |
Combinatorics and discrete mathematics
fibonacci numbers |
0.0 | 1 | 1982 | A Combinatorial Problem Concerning Processor Interconnection Networks · IEEE Trans. Computers 1982 |
Automata and formal languages
parsing |
0.0 | 1 | 1979 | Interpreter Generation Using Tree Pattern Matching · POPL 1979 |
Computational complexity › complexity classes
P vs NP |
0.0 | 1 | 1979 | A Programming Language Theorem Which Is Independent of Peano Arithmetic · STOC 1979 |
Methods — techniques the papers use, named apart from their topics
tree pattern matching · 0.0proof theory · 0.0comparison-based sorting analysis · 0.0algebraic operations · 0.0upper and lower bounds · 0.0counting argument · 0.0complexity analysis · 0.0interpreter implementation · 0.0trigonometric optimization · 0.0term rewriting · 0.0table-driven matching · 0.0critical angle identification · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2008 | Problems Encountered When Implementing Agile Methods in a Very Small Company
Michael J. O'Donnell, Ita Richardson |
EuroSPI | 1 |
| 1996 | Some Intuitions Behind Realizability Semantics for Constructive Logic: Tableaux and Läuchli Countermodels
James Lipton, Michael J. O'Donnell |
Ann. Pure Appl. Log. | 2 |
| 1994 | Intuitive Counterexamples for Constructive Fallacies
James Lipton, Michael J. O'Donnell |
MFCS | 2 |
| 1987 | Term-Rewriting Implementation of Equational Logic Programming
Michael J. O'Donnell |
RTA | 1 |
| 1987 | How to Prove Representation-Independent Independence Results
Stuart A. Kurtz, Michael J. O'Donnell, James S. Royer |
Inf. Process. Lett. | 2 |
| 1986 | Realisability Semantics for Error-Tolerant Logics
John C. Mitchell, Michael J. O'Donnell |
TARK | 2 |
| 1986 | Collections of Functions for Perfect HashingabstractHashing techniques for accessing a table without searching it are usually designed to perform efficiently on the average over all possible contents of the table. If the table contents are known in advance, we might be able to choose a hashing function with guaranteed efficient (worst-case) performance. Such a technique has been called “perfect hashing” by Sprugnoli and others. In this paper, we address the question of whether perfect hashing is feasible in principle as a general technique, or whether it must rely on special qualities of the table contents. We approach the question by counting the number of functions which must be searched to be sure of finding a perfect hashing function. We present upper and lower bounds on the size of this search space, with attention to the tradeoff between the size of the search space and the size of the hash table. Francine Berman, Mary Ellen Bock, Eric Dittert, Michael J. O'Donnell, Darrell Plank |
SIAM J. Comput. | 4 |
| 1985 | Implementation of an Interpreter for Abstract EquationsabstractAbstract This paper summarizes a project whose goal is the implementation of a useful interpreter for abstract equations that is absolutely faithful to the logical semantics of equations. The interpreter was first distributed to Berkeley UNIX VAX sites in May 1983. The main novelties of the interpreter are strict adherence to semantics based on logical consequences, ‘lazy’ (outermost) evaluation applied uniformly, an implementation based on table‐driven pattern matching, with no run‐time penalty for large sets of equations, and strict separation of syntactic and semantic processing, so that different syntaxes may be used for different problems. Christoph M. Hoffmann, Michael J. O'Donnell, Robert Strandh |
Softw. Pract. Exp. | 2 |
| 1985 | Lower Bounds for Sorting with Realistic Instruction SetsabstractΩ(n log n) time is required to sort n integers using comparison, addition, subtraction, multiplication, division, indirect addressing, and mildly restricted truncation. Eric Dittert, Michael J. O'Donnell |
IEEE Trans. Computers | 2 |
| 1984 | Implementation of an Interpreter for Abstract EquationsabstractThis paper summarizes a project, introduced in [HO79, HO82b], whose goal is the implementation of a useful interpreter for abstract equations that is absolutely faithful to the logical semantics of equations. The Interpreter was first distributed to Berkeley UNIX VAX sites in May, 1983. The main novelties of the interpreter are Christoph M. Hoffmann, Michael J. O'Donnell |
POPL | 2 |
| 1983 | The Expressiveness of Simple and Second-Order Type StructuresabstractTyped lambda (?`-) calculi provtde convement mathematical settings in which to investigate the effects of type structure on the function definmon mechamsm m programming languages.Lambda expressaons mtm~c programs that do not use while loops or carcular function definitions.Two typed ?`-calculi are investigated, the sunply typed ?`-calculus, whose types are similar to Pascal types, and the second-order typed ?,-calculus, which has a type abstractaon mechamsm simdar to that of modern data abstraction languages such as ALPHARD.Two related questions are considered for each calculus: (1) What functaons are definable m the calculus?and (2) How difficult is the proof that all expressions in the calculus are normahzable 0.e., that all computaUons termmate)* The simply typed calculus only defines elementary functtons.Normahzation for this calculus ~s provable using commonplace forms of reasoning formalazable m Peano arithmetic The second-order calculus defines a huge hierarchy of funcuons going far beyond Ackermann's function These funcuons are so rapidly increasing that Peano arithmetic cannot prove that they are total In fact, normalizataon for the second-order calculus cannot be proved even m second-order Peano artthmetic, nor m Peano anthmettc augmented by all true statements Also d~scussed are the lmphcataons of the present ?`-calculusresults for the programming languages PASCAL, ALPHARD, RUSSELL, and MODEL. Steven Fortune, Daniel Leivant, Michael J. O'Donnell |
J. ACM | 3 |
| 1982 | Pattern Matching in TreesabstractABSTgACT.Tree pattern matching is an interesting special problem which occurs as a crucial step m a number of programmmg tasks, for instance, design of interpreters for nonprocedural programming languages, automatic implementations of abstract data types, code optimization m compilers, symbohc computation, context searching in structure editors, and automatic theorem provmg.As with the sorting problem, the variations in requirements and resources for each application seem to preclude a uniform, umversal solution to the tree-pattern-matching problem.Instead, a collection of well-analyzed techmques, from which specific applications may be selected and adapted, should be sought.Five new techniques for tree pattern matching are presented, analyzed for time and space complexity, and compared with previously known methods.Particularly important are applications where the same patterns are matched against many subjects and where a subject may be modified incrementally Therefore, methods which spend some tune preprocessmg patterns in order to improve the actual matching time are included Categories and SubJect Descriptors' F.2.2 [Analysis of Algorithms and Problem Complexity]' Nonnutactical Algorithms and Problems--pattern matchmg, G 2 2 [Discrete Mathematics]: Graph Theory--trees Christoph M. Hoffmann, Michael J. O'Donnell |
J. ACM | 2 |
| 1982 | Geometric Problems with Application to HashingabstractEfficient algorithms are presented for two geometric problems. Both problems involve finding the best projection of a set of points from two-space onto a line, with two different notions of “best”. The key technique is to identify critical angles in between which the functions to be optimized have nice trigonometric forms that can be solved exactly. Applications to hashing arise when we look for the best linear combination of two hashing functions. Douglas Comer, Michael J. O'Donnell |
SIAM J. Comput. | 2 |
| 1982 | A Combinatorial Problem Concerning Processor Interconnection NetworksabstractThe augmented data manipulator (ADM) [5] has been proposed as an interconnection scheme for microprocessors. In this note we show how the number of permutations achieved by the last stage of an n-node ADM may be derived from a Fibonacci series. This result was used in [1] to analyze the total number of permutations achieved by an entire ADM. Michael J. O'Donnell, Carl H. Smith 0001 |
IEEE Trans. Computers | 1 |
| 1982 | Programming with EquationsabstractEquations provide a convenient notation for defining many computations, for example, for programming language interpreters.This paper illustrates the usefulness of equational programs, describes the problems involved in implementing equational programs, and investigates practical solutions to those problems.The goal of the study is a system to automatically transform a set of equations into an efficient program which exactly implements the logical meaning of the equations.This logical meaning may be defined in terms of the traditional mathematical interpretation of equations, without using advanced computing concepts._ Christoph M. Hoffmann, Michael J. O'Donnell |
ACM Trans. Program. Lang. Syst. | 2 |
| 1979 | Interpreter Generation Using Tree Pattern MatchingabstractEquations provide a rich, intuitively understandable notation for describing nonprocedural computing languages such as LISP and Lucid. In this paper, we present techniques for automatically generating interpreters from equations, analagous to well-known techniques for generating parsers from context-free grammars. The interpreters so generated are exactly faithful to the simple traditional mathematical meaning of the equations-no lattice-theoretic or fixpoint ideas are needed to explain the correspondence. The main technical problem involved is the extension of efficient practical string matching algorithms to trees. We present some new efficient table-driven matching techniques for a large class of trees, and point out unsolved problems in extending this class. We believe that the techniques of this paper form the beginnings of a useful discipline of interpreting, comparable to the existing discipline of parsing. Christoph M. Hoffmann, Michael J. O'Donnell |
POPL | 2 |
| 1979 | A Programming Language Theorem Which Is Independent of Peano ArithmeticabstractStrongly typed programming languages contain a natural subrecursive part consisting of programs with no loops and no explicitly recursive (circular) function definitions. For languages with polymorphic type structure, such as Model, the termination of all loop-free nonrecursive programs is independent of Peano Arithmetic. An attempt to apply the same techniques to prove independence of the [email protected]@@@NP problem can succeed only if NP complete problems have almost polynomial complexity. Michael J. O'Donnell |
STOC | 1 |