Walid Taha - Mathematical Equations as Executable Models of Mechanical Systems


Increasingly, hardware and software systems are being developed for applications where they must interact directly with a physical environment.  This trend significantly complicates testing computational systems and necessitates modeling and simulation of physical environments.  While numerous tools provide differing types of assistance in simulating physical systems, there are surprising gaps in the support that these tools provide.  Focusing on mechanics as an important class of physical environment, we address two such gaps, namely, the poor integration between different existing tools and the performance limitations of mainstream symbolic computing engines. 

We combine our solutions to these problems to create a domain-specific language that embodies a novel approach to modeling mechanical systems that is natural to engineers.  The new language, called Acumen, enables describing mechanical systems as mathematical equations.  These equations are transformed by a fast, well-defined sequence of steps into executable code.  Key design features of Acumen include support for acausal modeling, point-free (or implicit time) notation, efficient symbolic differentiation, and families of equations.  Our experience suggests that Acumen provides a promising example of balancing the needs of the engineering problem solving process and the available computational methods.

About the Speaker

Walid Taha is an assistant professor at Rice University, Houston, TX. His interests span programming languages semantics, type systems, compilers, program generation, real-time systems, and physically safe computing.  He is the principal investigator on a number of NSF, Texas ATP, and SRC research grants and contracts, including an NSF CAREER Award.  He is the principle designer of MetaOCaml, Acumen, and the Verilog Preprocessor system.  He founded the ACM Conference on Generative Programming and Component Engineering (GPCE), the IFIP Working Group on Program Generation (WG 2.11), and the Middle Earth Programming Languages Seminar (MEPLS).

Talk

November 2nd, 2009 - 14:00 - Ada Lovelace, INRIA Bordeaux A29