The University of Arizona



Ergalics is "the science of computational tools and of computation itself." See an expanded discussion of ergalics and a derivation of this term.

Here are listed those ergalics research projects directed in part by Rick Snodgrass. For ergalics projects directed by other faculty in the Department of Computer Science, go here.

The articulation of scientific theories and the evaluation of such theories via hypothesis testing is found in isolated sub-disciplines of computer science, including HCI, empirical software engineering, and web science. Where our department is notable, and perhaps unique, is in its application of ergalics across computer science, including those sub-disciplines concerned with specific software systems artifacts: databases, networks, multimedia systems, operating systems, and robotics.

All of the projects described below and also listed to the right share several important characteristics. They propose predictive causal models about members of an identified class of computational tool and they subject those predictive models to hypothesis testing. They thus strive to articulate fundamental properties or fundamental understanding about the behavior of those tools or of the nature of interaction with users of those tools. They all embrace empirical generalization.

These research problems cannot be answered through mathematical theorems, for we are nowhere near understanding most complex computational tools to the degree required to state and prove such theorems. These pressing problems also cannot be addressed through the building of engineering artifacts, for that activity cannot address problems about an entire class of computational tool. Rather, addressing this focal problem requires a new perspective, in addition to the mathematical and engineering perspectives: that of science. This perspective encourages the understanding of computational tools and computation though the articulation of technology-independent principles and the determination of technology-independent limitations. This yields deep insights into tool developers, tool users and the tools themselves, enabling refinements and new tools that are more closely aligned with the innate abilities and limitations of those developers and users.


Rick Snodgrass gave a talk at North Carolina State University (a 62-minute video is here) in January 2013 presenting the general philosophical foundation of ergalics as well as a specific demonstration of database ergalics.


(Unless otherwise indicated, each participating person is in the Computer Science Department at the University of Arizona.)

Algorithmic Ergalics

Algorithmic ergalics adopts the scientific perspective, augmenting the mathematical perspective of asymptotic complexity, by attempting to determine a cost formula, stating the complexity of an implementation of an algorithm takes based on a number of parameters, including input size but also including type of processor, speed of main memory, and other relevant factors.

Validating Cost Models

The goal of this project is to scientifically validate the cost formula or interesting statements about the formula via experiments with actual implementation(s) and actual test data.

Automated Ergalics

This area considers how to partially automate articulation of hypothesis testing of ergalic theories, execution and replication of experiments, and data collection during such experiments.

Automated Causal Analysis

This project considers how to represent ergalic theories, how to characterize the space of possible experiments as a family of causal models, how to determine the efficacy of each experiment or collection of experiments, and how to update the current model with the results of experiments. The goal is to work towards "closing the loop" on the entire process of model testing. This work draws upon results and research in machine learning and artificial intelligence, specifically search, knowledge representation, and automated reasoning.

Industrial Collaborator
Sabah Currim (Mosaic Group, UA)
Graduate Students
Andrey Kvochko (Chief Programmer)
Undergraduate Students


The Arizona Database Laboratory (or AZDBLab) is a Laboratory Information Management System (LIMS). AZDBLab currently supports experiments on four DBMSes, two commercial and two open-source.

... AZDBLab is effectively an electronic laboratory notebook. Within this environment, one can design and specify experiments, schedule these experiments, monitor them when they are running, record both independent variables (those controlled by the experimenter) and dependent variables (those resulting from the experiment), and do analyses on the data.

AZDBLab runs on a hardware lab of dedicated machines, one each for each subject DBMS and one to host the DBMS that stores the lab notebooks. Having dedicated hardware allows us to worry less about other processes running on the machines that could dirty the results (these machines are only for experiments), and allows us to run extensive experiments taking days or weeks. We continue to use this software and hardware lab to perform ergalic experiments on DBMSes.

Industrial Collaborator
Sabah Currim (Alumni Office, UA)
Rui Zhang (Dataware Ventures)
Graduate Students
Other Collaborators
Undergraduate Students

Database Ergalics

This area concerns database management systems and associated utilities as computational tools of study, as well as the interaction of users with such tools.

Data Cognition

We are articulating and validating a theory-based user model of data semantics and of data access that can be used to better organize and utilize data. This model can also be used to evaluate existing conceptual data modeling and query languages and to design future modeling and query languages more effectively. To achieve this objective, this project integrates perspectives and methodologies from both the computer science (CS) and management information systems (MIS) research disciplines.

Glenn Browne (University of Virginia)
Christian S. Jensen (Aalborg University, Denmark)
Vijay Khatri (Indiana University)
Jeffrey Parsons (Memorial University of Newfoundland, Canada)

More ...
These models can be used to further improve DBMSes through engineering efforts that benefit from the fundamental understanding that this perspective can provide. We are using a novel methodology, empirical generalization, and a refined research infrastructure will be used to quantitatively study fundamental questions concerning the most central components of a database management system (DBMS). In this way, we are articulating novel predictive models and thoroughly testing these models, in order to understand more deeply the behavior of query optimization, query evaluation, and transaction processing and concurrency control across multiple DBMSes. The overarching goal is to predict important characteristics of DBMSes and to determine fundamental limits. It is through the deep understanding afforded by general predictive models that the needed engineering innovations can be determined, thereby providing the fundamental grounding for those innovations. This methodology has already yielded a predictive model that identifies across a range of production DBMSes some of the causes of suboptimality (when the DBMS chooses a wrong plan).
Less ...

Ergalic Metrology

Metrology is "the science of measurement" (wikipedia article). So ergalic metrology is the science of measuring computational tools. International Bureau of Weights and Measures (BIPM) defines metrology as "the science of measurement, embracing both experimental and theoretical determinations at any level of uncertainty in any field of science and technology."

Reproducible Measurement

This project's goal is to understand how one can get repeatable measurements with little variance of CPU time and I/O, which are surprisingly difficult problems, and then how to measure DBMS activity accurately. It turns out that even simple interactions with a DBMS exhibit wide variance in time.

Graduate Students

Ergalic Theories

The methodology of ergalics has resulted in extant scientific theories about computational tools.

A Field Guide to the Science of Computation

This NSF-funded project is developing an on-line service, the Field Guide, that presents extant scientific theories, thereby helping people discover and apply the scientific principles of computing. It will enable people to find practical information about how computational things work, analogous to the Boy Scout Handbook helping the scout out in the field. The Field Guide will be seeded by the work of this project and will incorporate community involvement in creating useful new entries.

More ...
Peter Denning (Naval Postgraduate School)
Susan Higgins (Naval Postgraduate School)
External Evaluator
K12 Teachers
Rama Rao Cheepurlpalli (Luz Academy)
Matthew Johnston (BASIS School)
Graduate Students
Andrey Kvochko (Chief Programmer)
Undergraduate Students
Drew Mahrt (Schema Guru)
Jaimie Sauls (Pedagogy Guru)
Lane Simons (Locus Infrastructure Guru)
Robert Trame (Apparati Guru)

Philosophy of Ergalics

Clay Morrison (who has a doctorate in Philosophy) and Rick Snodgrass have been working on a number of philosophical aspects of ergalics, including situating ergalics among models of science, developing an ontology of ergalic theories, understanding the role of simulation in ergalics, exploring whether the methodology of hypothesis testing is entirely adequate for testing theories of dynamic systems, and identifying the sources of endurance of ergalic theories.


Webmaster: Richard Snodgrass