Until recently, all of the interactions between objects in virtual 3D worlds have been based on calculations performed using linear algebra. Linear algebra relies heavily on coordinates, however, which can make many geometric programming tasks very specific and complex—often a lot of effort is required to bring about even modest performance enhancements. Although linear algebra is an efficient way to specify low-level computations, it is not a suitable high-level language for geometric programming.

Geometric Algebra for Computer Science presents a compelling alternative to the limitations of linear algebra. Geometric algebra, or GA, is a compact, time-effective, and performance-enhancing way to represent the geometry of 3D objects in computer programs. In this book you will find an introduction to GA that will give you a strong grasp of its relationship to linear algebra and its significance for your work. You will learn how to use GA to represent objects and perform geometric operations on them. And you will begin mastering proven techniques for making GA an integral part of your applications in a way that simplifies your code without slowing it down.

Key Features

  • Explains GA as a natural extension of linear algebra and conveys its significance for 3D programming of geometry in graphics, vision, and robotics.
  • Systematically explores the concepts and techniques that are key to representing elementary objects and geometric operators using GA.
  • Covers in detail the conformal model, a convenient way to implement 3D geometry using a 5D representation space.
  • Presents effective approaches to making GA an integral part of your programming.
  • Includes numerous drills and programming exercises helpful for both students and practitioners.
  • Companion web site includes links to GAViewer, a program that will allow you to interact with many of the 3D figures in the book, and Gaigen 2, the platform for the instructive programming exercises that conclude each chapter.


Professionals working in fields requiring complex geometric computation such as robotics, computer graphics, and computer games. Students in graduate or advanced undergraduate programs in computer science.

Table of Contents

CHAPTER 1. WHY GEOMETRIC ALGEBRA? An Example in Geometric Algebra How It Works and How It’s Different Vector Spaces as Modeling Tools Subspaces as Elements of Computation Linear Transformations Extended Universal Orthogonal Transformations Objects are Operators Closed-Form Interpolation and Perturbation Programming Geometry You Can Only Gain Software Implementation The Structure of This Book Part I: Geometric Algebra Part II: Models of Geometry Part III: Implementation of Geometric Algebra The Structure of the Chapters PART I GEOMETRIC ALGEBRA CHAPTER 2. SPANNING ORIENTED SUBSPACES Vector Spaces Oriented Line Elements Properties of Homogeneous Lines Visualizing Vectors Oriented Area Elements Properties of Planes Introducing the Outer Product Visualizing Bivectors Visualizing Bivector Addition Oriented Volume Elements Properties of Volumes Associativity of the Outer Product Visualization of Trivectors Quadvectors in 3-D Are Zero Scalars Interpreted Geometrically Applications Solving Linear Equations Intersecting Planar Lines Homogeneous Subspace Representation Parallelness Direct Representation of Oriented Weighted Subspaces Nonmetric Lengths, Areas, and Volumes The Graded Algebra of Subspaces Blades and Grades The Ladder of Subspaces k-Blades Versus k-Vectors The Grassmann Algebra of Multivectors


No. of pages:
© 2007
Morgan Kaufmann
Print ISBN:
Electronic ISBN:

About the editors

Leo Dorst

Affiliations and Expertise

Informatics Institute, Faculty of Sciences, University of Amsterdam, The Netherlands

Daniel Fontijne

Daniel Fontijne holds a Master’s degree in artificial Intelligence and a Ph.D. in Computer Science, both from the University of Amsterdam. His main professional interests are computer graphics, motion capture, and computer vision.

Affiliations and Expertise

Intelligent Autonomous Systems, University of Amsterdam, The Netherlands

Stephen Mann

Affiliations and Expertise

University of Waterloo, Ontario, Canada


Within the last decade, Geometric Algebra (GA) has emerged as a powerful alternative to classical matrix algebra as a comprehensive conceptual language and computational system for computer science. This book will serve as a standard introduction and reference to the subject for students and experts alike. As a textbook, it provides a thorough grounding in the fundamentals of GA, with many illustrations, exercises and applications. Experts will delight in the refreshing perspective GA gives to every topic, large and small.
-David Hestenes, Distinguished research Professor, Department of Physics, Arizona State University

Geometric Algebra is becoming increasingly important in computer science. This book is a comprehensive introduction to Geometric Algebra with detailed descriptions of important applications. While requiring serious study, it has deep and powerful insights into GA’s usage. It has excellent discussions of how to actually implement GA on the computer.
-Dr. Alyn Rockwood, CTO, FreeDesign, Inc. Longmont, Colorado