Read Blog Posts
Well-written with rich ideas about Geometric Algebra and related topics.The Geometric Algebra Explorer website has been up and running for more than 2 years now. I developed this website using the WordPress Content Management System (CMS). WordPress and its countless plugins provide many impressive features for dynamic website developers, especially if they don't want to code much. I really enjoyed working with it, but it's time for me to go static.
In this post, I share my reasons, experience, and final workflow for leaving dynamic web development with WordPress and going into the static web development side. I think this might be helpful to someone trying to do the same or wanting to develop a similar website. Enjoy!
The Geometric Algebra Explorer website has been up and running for more than 2 years now. I developed this website using the WordPress Content Management System (CMS). WordPress and its countless plugins provide many impressive features for dynamic website developers, especially if they don't want to code much. I really enjoyed working with it, but it's time for me to go static.
In this post, I share my reasons, experience, and final workflow for leaving dynamic web development with WordPress and going into the static web development side. I think this might be helpful to someone trying to do the same or wanting to develop a similar website. Enjoy!
The Geometric Algebra Explorer website has been up and running for more than 2 years now. I developed this website using the WordPress Content Management System (CMS). WordPress and its countless plugins provide many impressive features for dynamic website developers, especially if they don't want to code much. I really enjoyed working with it, but it's time for me to go static.
In this post, I share my reasons, experience, and final workflow for leaving dynamic web development with WordPress and going into the static web development side. I think this might be helpful to someone trying to do the same or wanting to develop a similar website. Enjoy!
Two elementary courses common to modern physics, mathematics, and engineering curricula are Linear Algebra and Vector Calculus. Geometric Algebra is a natural and powerful extension of linear algebra and Geometric Calculus is even more so for vector calculus.
In this post, I interview Dr. Alan Macdonald who talks about his experience with both subjects and how he contributes in educating young undergraduate students about them through his books and online videos.
Two elementary courses common to modern physics, mathematics, and engineering curricula are Linear Algebra and Vector Calculus. Geometric Algebra is a natural and powerful extension of linear algebra and Geometric Calculus is even more so for vector calculus.
In this post, I interview Dr. Alan Macdonald who talks about his experience with both subjects and how he contributes in educating young undergraduate students about them through his books and online videos.
Two elementary courses common to modern physics, mathematics, and engineering curricula are Linear Algebra and Vector Calculus. Geometric Algebra is a natural and powerful extension of linear algebra and Geometric Calculus is even more so for vector calculus.
In this post, I interview Dr. Alan Macdonald who talks about his experience with both subjects and how he contributes in educating young undergraduate students about them through his books and online videos.
In this post, I interview Dr. Charles Gunn, a mathematician, movie-maker, and teacher whose mathematical activities center around projective geometry and its connection to the human being and the world. He is particularly excited by his recent work on Projective Geometric Algebra (PGA), which he believes has a great role to play in bringing the benefits of GA to a wider audience.
In this post, I interview Dr. Charles Gunn, a mathematician, movie-maker, and teacher whose mathematical activities center around projective geometry and its connection to the human being and the world. He is particularly excited by his recent work on Projective Geometric Algebra (PGA), which he believes has a great role to play in bringing the benefits of GA to a wider audience.
In this post, I interview Dr. Charles Gunn, a mathematician, movie-maker, and teacher whose mathematical activities center around projective geometry and its connection to the human being and the world. He is particularly excited by his recent work on Projective Geometric Algebra (PGA), which he believes has a great role to play in bringing the benefits of GA to a wider audience.
The area of Scientific Visualization (SciViz) is an interdisciplinary branch of science. According to Friendly, it is "primarily concerned with the visualization of three-dimensional phenomena (architectural, meteorological, medical, biological, etc.), where the emphasis is on realistic renderings of volumes, surfaces, illumination sources, and so forth, perhaps with a dynamic (time) component". It is also considered a subset of computer graphics, a branch of computer science. The purpose of scientific visualization is to graphically illustrate scientific data to enable scientists to understand, illustrate, and glean insight from their data.
In this post, I interview Dr. Werner Benger who describes his views on SciViz using Geometric Algebra and provides valuable insights about the use of SciViz in Big Data applications.
The area of Scientific Visualization (SciViz) is an interdisciplinary branch of science. According to Friendly, it is "primarily concerned with the visualization of three-dimensional phenomena (architectural, meteorological, medical, biological, etc.), where the emphasis is on realistic renderings of volumes, surfaces, illumination sources, and so forth, perhaps with a dynamic (time) component". It is also considered a subset of computer graphics, a branch of computer science. The purpose of scientific visualization is to graphically illustrate scientific data to enable scientists to understand, illustrate, and glean insight from their data.
In this post, I interview Dr. Werner Benger who describes his views on SciViz using Geometric Algebra and provides valuable insights about the use of SciViz in Big Data applications.
The area of Scientific Visualization (SciViz) is an interdisciplinary branch of science. According to Friendly, it is "primarily concerned with the visualization of three-dimensional phenomena (architectural, meteorological, medical, biological, etc.), where the emphasis is on realistic renderings of volumes, surfaces, illumination sources, and so forth, perhaps with a dynamic (time) component". It is also considered a subset of computer graphics, a branch of computer science. The purpose of scientific visualization is to graphically illustrate scientific data to enable scientists to understand, illustrate, and glean insight from their data.
In this post, I interview Dr. Werner Benger who describes his views on SciViz using Geometric Algebra and provides valuable insights about the use of SciViz in Big Data applications.
Planning for the next generation of GMac began in August 2011. I started to design the new version of GMac from scratch by reading significant parts of Terence Parr's book "Language Implementation Patterns", Robert W. Sebesta's classic book "Concepts of Programming Languages", and the second edition of the bestseller Dragon Book "Compilers: Principles, Techniques, and Tools". I had learned many lessons during developing the first GMac prototype. These books provided a solid conceptual framework for designing the new version of GMac containing all the lessons I'd learned before.
In the previous post, I talked about the first part of my journey developing GMac, the fascinating discoveries I made, and the difficulties I faced along the way. In this final part, I explain the design decisions I made for GMac and how I came to select them, in addition to the developments I hope to make in the future.
Planning for the next generation of GMac began in August 2011. I started to design the new version of GMac from scratch by reading significant parts of Terence Parr's book "Language Implementation Patterns", Robert W. Sebesta's classic book "Concepts of Programming Languages", and the second edition of the bestseller Dragon Book "Compilers: Principles, Techniques, and Tools". I had learned many lessons during developing the first GMac prototype. These books provided a solid conceptual framework for designing the new version of GMac containing all the lessons I'd learned before.
In the previous post, I talked about the first part of my journey developing GMac, the fascinating discoveries I made, and the difficulties I faced along the way. In this final part, I explain the design decisions I made for GMac and how I came to select them, in addition to the developments I hope to make in the future.
Planning for the next generation of GMac began in August 2011. I started to design the new version of GMac from scratch by reading significant parts of Terence Parr's book "Language Implementation Patterns", Robert W. Sebesta's classic book "Concepts of Programming Languages", and the second edition of the bestseller Dragon Book "Compilers: Principles, Techniques, and Tools". I had learned many lessons during developing the first GMac prototype. These books provided a solid conceptual framework for designing the new version of GMac containing all the lessons I'd learned before.
In the previous post, I talked about the first part of my journey developing GMac, the fascinating discoveries I made, and the difficulties I faced along the way. In this final part, I explain the design decisions I made for GMac and how I came to select them, in addition to the developments I hope to make in the future.
In the summer of 2003, I was almost at the end of my M.Sc. thesis. One day I was surfing the web searching for some references to add to the thesis I'd been writing. I ran into Mikael Nilsson’s interesting M.Sc. thesis “Geometric Algebra with Conzilla: Building a Conceptual Web of Mathematics”. His work contains a nice introduction to Geometric Algebra, with accompanying UML-based conceptual models. It got me very curious about GA. I made some more searches finding a few papers, books, and tutorials. After reading some of them I was suddenly transferred into a new world of algebraic abstractions. For the first time in my life as a student, engineer, and software developer I could hope to express, explore, and manipulate geometric abstractions with such clarity. I then decided that my Ph.D. will be about exploring Geometric Algebra using the best way I know: developing software.
In the summer of 2003, I was almost at the end of my M.Sc. thesis. One day I was surfing the web searching for some references to add to the thesis I'd been writing. I ran into Mikael Nilsson’s interesting M.Sc. thesis “Geometric Algebra with Conzilla: Building a Conceptual Web of Mathematics”. His work contains a nice introduction to Geometric Algebra, with accompanying UML-based conceptual models. It got me very curious about GA. I made some more searches finding a few papers, books, and tutorials. After reading some of them I was suddenly transferred into a new world of algebraic abstractions. For the first time in my life as a student, engineer, and software developer I could hope to express, explore, and manipulate geometric abstractions with such clarity. I then decided that my Ph.D. will be about exploring Geometric Algebra using the best way I know: developing software.
In the summer of 2003, I was almost at the end of my M.Sc. thesis. One day I was surfing the web searching for some references to add to the thesis I'd been writing. I ran into Mikael Nilsson’s interesting M.Sc. thesis “Geometric Algebra with Conzilla: Building a Conceptual Web of Mathematics”. His work contains a nice introduction to Geometric Algebra, with accompanying UML-based conceptual models. It got me very curious about GA. I made some more searches finding a few papers, books, and tutorials. After reading some of them I was suddenly transferred into a new world of algebraic abstractions. For the first time in my life as a student, engineer, and software developer I could hope to express, explore, and manipulate geometric abstractions with such clarity. I then decided that my Ph.D. will be about exploring Geometric Algebra using the best way I know: developing software.
Any useful mathematical structure consists of some integrating abstract elements. The mathematical structure of Geometric Algebra is sophisticated but very elegant and easy to understand. In my view as a software engineer, I could identify 10 main elements of the mathematical structure of GA. Some of these elements are well studied mathematical disciplines by their own right. The integration of the 10 elements, however, produces a rich mathematical language capable of expressing much more than the mere sum of its parts. In this post, I will describe each component and talk a little about its significance and varieties without delving into any mathematical details. The interested reader can find many tutorials and links to explain in full details the mathematics of Geometric Algebra on my GA Online Resources page. The information in this post can be useful for someone starting to study GA and wanting a clear roadmap for understanding and relating its main concepts and algebraic tools.
Any useful mathematical structure consists of some integrating abstract elements. The mathematical structure of Geometric Algebra is sophisticated but very elegant and easy to understand. In my view as a software engineer, I could identify 10 main elements of the mathematical structure of GA. Some of these elements are well studied mathematical disciplines by their own right. The integration of the 10 elements, however, produces a rich mathematical language capable of expressing much more than the mere sum of its parts. In this post, I will describe each component and talk a little about its significance and varieties without delving into any mathematical details. The interested reader can find many tutorials and links to explain in full details the mathematics of Geometric Algebra on my GA Online Resources page. The information in this post can be useful for someone starting to study GA and wanting a clear roadmap for understanding and relating its main concepts and algebraic tools.
Any useful mathematical structure consists of some integrating abstract elements. The mathematical structure of Geometric Algebra is sophisticated but very elegant and easy to understand. In my view as a software engineer, I could identify 10 main elements of the mathematical structure of GA. Some of these elements are well studied mathematical disciplines by their own right. The integration of the 10 elements, however, produces a rich mathematical language capable of expressing much more than the mere sum of its parts. In this post, I will describe each component and talk a little about its significance and varieties without delving into any mathematical details. The interested reader can find many tutorials and links to explain in full details the mathematics of Geometric Algebra on my GA Online Resources page. The information in this post can be useful for someone starting to study GA and wanting a clear roadmap for understanding and relating its main concepts and algebraic tools.
A Cyberneticist, or cybernetician, is a person practicing Cybernetics: a transdisciplinary approach for exploring regulatory systems; their structures, constraints, and possibilities. Professor Eduardo Bayro-Corrochano is one such leading academic who uses Geometric Algebra to handle the diverse fields of theoretical knowledge and practical application he needs. Such fields include Robotics, Neural Computing, Computer Vision, and Lie Algebras. In this post, I interview Prof. Eduardo Bayro who tells us about how using GA in his work can simplify dealing with such diverse fields, and how can GA relate, generalize, and unify ideas from these fields together in his mind and the minds of his students.
A Cyberneticist, or cybernetician, is a person practicing Cybernetics: a transdisciplinary approach for exploring regulatory systems; their structures, constraints, and possibilities. Professor Eduardo Bayro-Corrochano is one such leading academic who uses Geometric Algebra to handle the diverse fields of theoretical knowledge and practical application he needs. Such fields include Robotics, Neural Computing, Computer Vision, and Lie Algebras. In this post, I interview Prof. Eduardo Bayro who tells us about how using GA in his work can simplify dealing with such diverse fields, and how can GA relate, generalize, and unify ideas from these fields together in his mind and the minds of his students.
A Cyberneticist, or cybernetician, is a person practicing Cybernetics: a transdisciplinary approach for exploring regulatory systems; their structures, constraints, and possibilities. Professor Eduardo Bayro-Corrochano is one such leading academic who uses Geometric Algebra to handle the diverse fields of theoretical knowledge and practical application he needs. Such fields include Robotics, Neural Computing, Computer Vision, and Lie Algebras. In this post, I interview Prof. Eduardo Bayro who tells us about how using GA in his work can simplify dealing with such diverse fields, and how can GA relate, generalize, and unify ideas from these fields together in his mind and the minds of his students.
One of the most important fields of application for Geometric algebra can be found in Computer Science. In this post, I interview 3 key researchers who apply Geometric Algebra in their work to share their valuable experience and insights. Their applied research spans many applications in computer science including Computer Graphics, Robotics, Computer Vision, Image Processing, Neural Computing, and more.
One of the most important fields of application for Geometric algebra can be found in Computer Science. In this post, I interview 3 key researchers who apply Geometric Algebra in their work to share their valuable experience and insights. Their applied research spans many applications in computer science including Computer Graphics, Robotics, Computer Vision, Image Processing, Neural Computing, and more.
One of the most important fields of application for Geometric algebra can be found in Computer Science. In this post, I interview 3 key researchers who apply Geometric Algebra in their work to share their valuable experience and insights. Their applied research spans many applications in computer science including Computer Graphics, Robotics, Computer Vision, Image Processing, Neural Computing, and more.
Foundations of modern Geometric Algebra and Geometric Calculus were laid down by Prof. David Hestenes and Dr. Garret Sobczyk 50 years ago. In this post, I interview Dr. Garret Sobczyk who tells us about his fascinating life journey with Prof. Hestenes. Their journey eventually inspired many researchers to follow their lead in learning, developing, and applying Geometric Algebra and Geometric Calculus to many fields of science.
Foundations of modern Geometric Algebra and Geometric Calculus were laid down by Prof. David Hestenes and Dr. Garret Sobczyk 50 years ago. In this post, I interview Dr. Garret Sobczyk who tells us about his fascinating life journey with Prof. Hestenes. Their journey eventually inspired many researchers to follow their lead in learning, developing, and applying Geometric Algebra and Geometric Calculus to many fields of science.
Foundations of modern Geometric Algebra and Geometric Calculus were laid down by Prof. David Hestenes and Dr. Garret Sobczyk 50 years ago. In this post, I interview Dr. Garret Sobczyk who tells us about his fascinating life journey with Prof. Hestenes. Their journey eventually inspired many researchers to follow their lead in learning, developing, and applying Geometric Algebra and Geometric Calculus to many fields of science.
In this post, I interview Dr. Yu Zhaoyuan who explains the importance of Geographical Information Science (GIS) and the potential of Geometric Algebra as a mathematical modeling tool in this fascinating field of study. Dr. Zhaoyuan talks about the deep relations between Geometric Computing and GIS. He then tells us about the difficulties facing the creation of good GIS simulators and how GA can help in this regard. Finally, he talks about the recent GAGIS conference and the important research presented there.
In this post, I interview Dr. Yu Zhaoyuan who explains the importance of Geographical Information Science (GIS) and the potential of Geometric Algebra as a mathematical modeling tool in this fascinating field of study. Dr. Zhaoyuan talks about the deep relations between Geometric Computing and GIS. He then tells us about the difficulties facing the creation of good GIS simulators and how GA can help in this regard. Finally, he talks about the recent GAGIS conference and the important research presented there.
In this post, I interview Dr. Yu Zhaoyuan who explains the importance of Geographical Information Science (GIS) and the potential of Geometric Algebra as a mathematical modeling tool in this fascinating field of study. Dr. Zhaoyuan talks about the deep relations between Geometric Computing and GIS. He then tells us about the difficulties facing the creation of good GIS simulators and how GA can help in this regard. Finally, he talks about the recent GAGIS conference and the important research presented there.
I discovered Geometric Algebra (GA) back in 2003 and it caught my attention immediately. In my whole life as a student, engineer, researcher, and teacher I've never met a symbolic mathematical system so beautifully close to geometric abstractions. In this post, I try to explain how Geometric Algebra can express, unify, and generalize many geometric abstractions we use as engineers and computer scientists.
I discovered Geometric Algebra (GA) back in 2003 and it caught my attention immediately. In my whole life as a student, engineer, researcher, and teacher I've never met a symbolic mathematical system so beautifully close to geometric abstractions. In this post, I try to explain how Geometric Algebra can express, unify, and generalize many geometric abstractions we use as engineers and computer scientists.
I discovered Geometric Algebra (GA) back in 2003 and it caught my attention immediately. In my whole life as a student, engineer, researcher, and teacher I've never met a symbolic mathematical system so beautifully close to geometric abstractions. In this post, I try to explain how Geometric Algebra can express, unify, and generalize many geometric abstractions we use as engineers and computer scientists.
In the previous post we read how our languages and ideas about the computational universe are best expressed using either a general purpose language with balanced human-computational aspects like Python or using a domain-specific language carefully crafted for our particular domain of abstractions. In this post, we will focus our attention on a specific domain for computation, geometric computing, and the design of geometry-specific programming languages.
In the previous post we read how our languages and ideas about the computational universe are best expressed using either a general purpose language with balanced human-computational aspects like Python or using a domain-specific language carefully crafted for our particular domain of abstractions. In this post, we will focus our attention on a specific domain for computation, geometric computing, and the design of geometry-specific programming languages.
In the previous post we read how our languages and ideas about the computational universe are best expressed using either a general purpose language with balanced human-computational aspects like Python or using a domain-specific language carefully crafted for our particular domain of abstractions. In this post, we will focus our attention on a specific domain for computation, geometric computing, and the design of geometry-specific programming languages.
Computing is done by programming computers, programming requires programming languages, and programming languages come in many forms and flavors. The creative process of software development, in general, is certainly related to language, thought, and imagination. For geometric modeling and geometric processing applications, the correct selection of a programming language is absolutely fundamental.
Computing is done by programming computers, programming requires programming languages, and programming languages come in many forms and flavors. The creative process of software development, in general, is certainly related to language, thought, and imagination. For geometric modeling and geometric processing applications, the correct selection of a programming language is absolutely fundamental.
Computing is done by programming computers, programming requires programming languages, and programming languages come in many forms and flavors. The creative process of software development, in general, is certainly related to language, thought, and imagination. For geometric modeling and geometric processing applications, the correct selection of a programming language is absolutely fundamental.
There are 3 kinds of science: the experimental, the theoretical, and the simulated. The third kind of scientific activity only appeared recently, about 75 years ago, when the first electronic computers were made; effectively creating the "human computational universe" and upgrading our scientific methods to a whole new level. The idea of this third kind of science is to computationally and visually investigate our theoretical mathematical models encoded as computer programs executed on various sets of inputs to get new patterns, ideas, and "virtual" discoveries that can be verified experimentally later or at least may provide grounds for new abstractions, theories, and practical applications. This third kind of science, the science and art of computer simulations, is now unavoidable in all scientific research and education activities. All this is made possible by using only the two numbers 1 and 0; a.k.a True and False.
After our journey with classic numbers in part one and geometric numbers in part two, in this final part of our functional history of numbers, we will take a look at a third kind of numbers: the computational numbers.
There are 3 kinds of science: the experimental, the theoretical, and the simulated. The third kind of scientific activity only appeared recently, about 75 years ago, when the first electronic computers were made; effectively creating the "human computational universe" and upgrading our scientific methods to a whole new level. The idea of this third kind of science is to computationally and visually investigate our theoretical mathematical models encoded as computer programs executed on various sets of inputs to get new patterns, ideas, and "virtual" discoveries that can be verified experimentally later or at least may provide grounds for new abstractions, theories, and practical applications. This third kind of science, the science and art of computer simulations, is now unavoidable in all scientific research and education activities. All this is made possible by using only the two numbers 1 and 0; a.k.a True and False.
After our journey with classic numbers in part one and geometric numbers in part two, in this final part of our functional history of numbers, we will take a look at a third kind of numbers: the computational numbers.
There are 3 kinds of science: the experimental, the theoretical, and the simulated. The third kind of scientific activity only appeared recently, about 75 years ago, when the first electronic computers were made; effectively creating the "human computational universe" and upgrading our scientific methods to a whole new level. The idea of this third kind of science is to computationally and visually investigate our theoretical mathematical models encoded as computer programs executed on various sets of inputs to get new patterns, ideas, and "virtual" discoveries that can be verified experimentally later or at least may provide grounds for new abstractions, theories, and practical applications. This third kind of science, the science and art of computer simulations, is now unavoidable in all scientific research and education activities. All this is made possible by using only the two numbers 1 and 0; a.k.a True and False.
After our journey with classic numbers in part one and geometric numbers in part two, in this final part of our functional history of numbers, we will take a look at a third kind of numbers: the computational numbers.
In part one of this functional history of numbers we saw the development of various number systems we are mostly familiar with. In this part, we will see the development of many number systems that are important for our modern scientific needs, geometrically and computationally. The sad fact about these developments is that we are using and teaching less effective number systems today because of a "series of unfortunate events" that took place during the grand drama of human development of modern mathematics.
In part one of this functional history of numbers we saw the development of various number systems we are mostly familiar with. In this part, we will see the development of many number systems that are important for our modern scientific needs, geometrically and computationally. The sad fact about these developments is that we are using and teaching less effective number systems today because of a "series of unfortunate events" that took place during the grand drama of human development of modern mathematics.
In part one of this functional history of numbers we saw the development of various number systems we are mostly familiar with. In this part, we will see the development of many number systems that are important for our modern scientific needs, geometrically and computationally. The sad fact about these developments is that we are using and teaching less effective number systems today because of a "series of unfortunate events" that took place during the grand drama of human development of modern mathematics.
The main goal of this post is to link Geometric Algebra to mathematics on the fundamental level of numbers. Here I briefly describe the history of numbers with emphasis on their functional role in mathematics, science, and engineering to put the computational role GA can play into perspective.
The main goal of this post is to link Geometric Algebra to mathematics on the fundamental level of numbers. Here I briefly describe the history of numbers with emphasis on their functional role in mathematics, science, and engineering to put the computational role GA can play into perspective.
The main goal of this post is to link Geometric Algebra to mathematics on the fundamental level of numbers. Here I briefly describe the history of numbers with emphasis on their functional role in mathematics, science, and engineering to put the computational role GA can play into perspective.
I've been dealing with mathematical abstractions most of my life, as a student then as a software engineer and faculty member, on various levels and forms. My experience is like trying to find a safe path in a big forest of data and ideas that keep on growing and changing each day.
I've been dealing with mathematical abstractions most of my life, as a student then as a software engineer and faculty member, on various levels and forms. My experience is like trying to find a safe path in a big forest of data and ideas that keep on growing and changing each day.
I've been dealing with mathematical abstractions most of my life, as a student then as a software engineer and faculty member, on various levels and forms. My experience is like trying to find a safe path in a big forest of data and ideas that keep on growing and changing each day.