I think the universe is pure geometry – basically, a beautiful shape twisting around and dancing over space-time.
Garrett Lisi
Theoretical Physicist
The power of mathematics is often to change one thing into another, to change geometry into language.
Marcus du Sautoy
Professor of Mathematics
Have You Ever Been ...
As long as algebra and geometry have been separated, their progress have been slow and their uses limited; but when these two sciences have been united, they have lent each mutual forces, and have marched together towards perfection.
Joseph Louis Lagrange
Mathematician
Meet Geometric Algebra ...
Language is a process of free creation; its laws and principles are fixed, but the manner in which the principles of generation are used is free and infinitely varied. Even the interpretation and use of words involves a process of free creation.
Noam Chomsky
Linguist, philosopher, and cognitive scientist
On The GA Explorer You Can ...
If you understand something in only one way, then you don’t really understand it at all. The secret of what anything means to us depends on how we’ve connected it to all other things we know. Well-connected representations let you turn ideas around in your mind, to envision things from many perspectives until you find one that works for you. And that’s
what we mean by thinking!
Marvin Minsky
Cognitive Scientist
Use GMac To ...
GMac Guides Index
- Learn about the purpose of GMac and its possible uses.
- Read the main features of GMac for coding with Geometric Algebra, scripting, and prototyping.
- Understand the requirements of using GMac and where to download it from.
- Find a short description of GMac’s various components and links to the GMac User Guides.
- Find an overview of the GMac system including how to download and install, things to know before using, and the dependency of GMac on Wolfram Mathematica.
- Read about the projects inside the GMac .NET solution, their roles in the GMac system, and how they depend on each other.
- Understand the GMacIDE user interface including main screens and menu items.
- Read about using GMac as a code composition library for generating computational code from GA models.
- Find some resources to start learning Geometric Algebra.
- Read about GMac’s software interface for communicating with Wolfram Mathematica.
- Learn about GMac’s extended symbolic interface for representing and computing with multivectors, GA frames, outermorphisms, and linear transforms using Wolfram Mathematica.
- Find a complete description of the GMacDSL syntax and semantics.
- Read about describing GA frames with arbitrary signatures and relations.
- View examples of various GMacDSL code elements.
- Understand how to write GMac macros that contain GA expressions and algorithms.
- Read an overview of GMacAST as an intermediate representation of GMacDSL code.
- Find a full description of all GMacAST nodes, their roles, and relations.
- Read the details of .NET classes that represent GMacAST nodes to be used in other components of GMac.
- Read about the purpose of TextComposerLib and its main features for composing structured text.
- View explanations and examples of using the text composition .NET classes in TextComposerLib.
- Understand how to use TextComposerLib un-parse expression trees into structured text.
- Read about the structured file generation capabilities of TextComposerLib.
- Read about the diagram generation capabilities of TextComposerLib.
- Find explanations of several techniques for code composition using TextComposerLib.
- Read a full explanation of the various components of GMacAPI code composition system.
- Find a description of the main .NET classes of GMacAPI including their roles and relations to each other.
- Read a complete code example for using GMacAPI to compose a simple code library from GMacDSL code.
- Read about the software structure and main classes GMac uses in its scripting engine.
- Find detailed examples for scripting with GMac.
- Understand how GMac scripting integrates C#, Mathematica, and GMacDSL into a powerful scripting framework for exploring GA-based models.