## SERIOUS problem with geometric,... inner, and outer products

Higher-dimensional geometry (previously "Polyshapes").

### SERIOUS problem with geometric,... inner, and outer products

Hello Pat and all,

I stumbled onto to something... unless it turns out I'm making some silly mistake, it appears to be a major problem with the geometric... inner, and outer products.

I think you all know I've been trying to find an easy way to form inner and outer products... some easy to follow, and easy to remember rules. The webpage on using the wedge product (outer product) for tuning musical instruments, wedge-product, is very helpful for learning how to form outer products.

Recently, I came across this Master's Thesis by Mikael Nilsson, Geometric Algebra with Conzilla: Building a Conceptual Web of Mathematics. On pp. 37, 38 he provides an easy way to form outer and inner products:

p. 37:

p. 38:

I believe Mikael is referring to the Hestenes semi-commutative inner product, which is the inner product I've been using, as well.

I made up a couple of Venn diagrams to provide a graphical tool to understanding what Mikael is saying. For the outer product, where A<sub>i</sub> and B<sub>i</sub> are the sets of basis indices for each of the current product operands (all products without explicit operators are geometric products):

Then, the inner product:

Some of you more visually intuitive than I might wonder immediately... What if...?

However, I didn't see this possibility until later...

Now that I had an easy to use way to form both inner and outer products at my disposal, I thought I'd go back and follow up on the work in one of my previous Tetraspace Forum posts, Octonions do not form a Clifford Algebra...?

You'll notice that two of the operation tables for the geometric product that I derived appear to be isomorphic to the complex product... Cl<sub>0,1</sub> and Cl<sub>2</sub><sup>+</sup>... and two appear to be isomorphic to the quaternion product... Cl<sub>0,2</sub> and Cl<sub>3</sub><sup>+</sup>. And, I worked them out to be sure...

However, when I got to Cl<sub>3</sub><sup>+</sup>, I started to encounter some serious problems... the bivector basis...

The Cl<sub>3</sub><sup>+</sup> representation for the quaternions makes the assignments i = -e<sub>23</sub>, j = -e<sub>31</sub>, k = -e<sub>12</sub>.

So, for instance, neither '23' nor '31' are fully contained within the other, nor is their intersection null... that is, we have:

This means that all product terms involving the bivectors, excepting those which are the same (that is, '23' and '23', for instance), are neither going to be inner, nor outer products...?

Yet, the definition of the geometric product is: ab = a.b + a^b...? So, where are the product terms formed by the bivectors in the geometric product coming from?

More specifically, let's look at the geometric product table for Cl<sub>3</sub>, as posted on Ian Bell's website, Multivector Methods: The Geometric Product: (I've highlighted the entries of interest here)

Now, if we look at the product tables for the inner and outer products on Ian's website, Multivector Methods: Products of multivectors:

You'll also notice that using Lounesto's (left) contractive inner product won't help with this problem:

So, can someone explain all this? Does anyone have any ideas?
Paul
Trionian

Posts: 74
Joined: Sat Sep 04, 2004 10:56 pm

Hello all again,

I neglected to say it,... but, inner and outer products involving scalar operands are not handled by the rules given above.

Generally speaking, terms involving scalar operands are taken to be outer products, formed simply by utilizing the usual field product for two scalars, or a scalar multivector product for a scalar and a multivector (like multiplying a scalar by a matrix).

However, none of this seems directly relevant to the issue at hand.
Paul
Trionian

Posts: 74
Joined: Sat Sep 04, 2004 10:56 pm

I'm thrown off by his quote on page 38. I was thinking that the inner-product distributed with the outer product:
e<sub>1</sub>.(e<sub>1</sub>∧e<sub>2</sub>) = (e<sub>1</sub>∧e<sub>1</sub>) + (e<sub>1</sub>∧e<sub>2</sub>) = 0 + e<sub>1</sub>e<sub>2</sub>.

Regardless, for the quaternions as Cl<sub>3</sub><sup>+</sup>....

I'll have to think on this some more and flip through Lounesto a bit.
pat
Tetronian

Posts: 563
Joined: Tue Dec 02, 2003 5:30 pm
Location: Minneapolis, MN

Hello Pat,

e<sub>1</sub>.(e<sub>1</sub>∧e<sub>2</sub>) = (e<sub>1</sub>∧e<sub>1</sub>) + (e<sub>1</sub>∧e<sub>2</sub>) = 0 + e<sub>1</sub>e<sub>2</sub>.

Before, I wouldn't have thought this would make any difference... however, I believe Mikael probably means the geometric product when there's no explicit operator. Particularly, since the ones that you're wedging together are bivectors, those that I'm having trouble with in Cl<sub>3</sub><sup>+</sup>, this might not be inconseqential...?

BTW, I like the character enitity for the wedge. I had experimented with some of them... some of them the board accepts, but some others it doesn't seem to like. Of course, there's no character entity for infinity.
Paul
Trionian

Posts: 74
Joined: Sat Sep 04, 2004 10:56 pm

Paul wrote:BTW, I like the character enitity for the wedge. I had experimented with some of them... some of them the board accepts, but some others it doesn't seem to like. Of course, there's no character entity for infinity.

Ah, I've found that it never likes any of mine. So, I resort to using the numeric codes from here: http://www.w3.org/TR/xhtml1/dtds.html#a_dtd_Symbols.

So, I do wedge as &#8743; and infinity should be &#8734; if this: ∞ doesn't show up right, it's a deficiency in your browser, not the BB.
pat
Tetronian

Posts: 563
Joined: Tue Dec 02, 2003 5:30 pm
Location: Minneapolis, MN

Hello Pat,

Excellent... and they have infinity, too! ∞

Α
Β

Actually, if this is of any significance, it's probably more accurate to express the definition of the geometric product in terms of inner and outer products as:

ab = a⋅b ⊕ a∧b

Well, I guess that means that my browser doesn't do the sdot operator...

Anyway... the only difference that might(?) be of any significance here is the direct sum sign. I think it's really a direct sum, isn't it?

I notice my browser still doesn't seem to know all of them... Is there a way to install a file,... or, perhaps it's directing the browser to the appropriate page to reference the character information for a particular numeric code?
Paul
Trionian

Posts: 74
Joined: Sat Sep 04, 2004 10:56 pm

Paul wrote:BTW, I like the character enitity for the wedge. I had experimented with some of them... some of them the board accepts, but some others it doesn't seem to like. Of course, there's no character entity for infinity.

My browser displayed all of those. I'm using FireFox on a Mac. IIRC, Safari on the Mac also displays all of those correctly. I'm not sure if it's a function of the font or the browser or both. My guess is that it's both. If your browser just displays &#8901; instead of the vertically-centered dot, then it's probably your browser (but it could be that browser just knows that character isn't in your font). If it displays nothing or an empty box, then it's probably your font. Most browsers let you change your font. You could experiment a little bit. I'm using 'Gil Sans' as my font on the Mac here.
pat
Tetronian

Posts: 563
Joined: Tue Dec 02, 2003 5:30 pm
Location: Minneapolis, MN

And, I agree that the '+' should be ⊕ in the case you mentioned. And, it can technically be ⊕ for every plus in a multivector representation:
3 ⊕ 2e<sub>1</sub> ⊕ 5e<sub>2</sub> ⊕ -e<sub>12</sub>

Though, I could see some argument for keeping a normal '+' sign between blades of the same rank:
3 ⊕ ( 2e<sub>1</sub> + 5e<sub>2</sub> ) ⊕ -e<sub>12</sub>
Since we usually use '+' to write out vectors. Technically, it's still a more formal addition since αe<sub>1</sub> + βe<sub>2</sub> will never equal γe<sub>3</sub> (unless all constants are zero).

But, yes... I'd be perfectly happy if you defined Cl<sub>2</sub> as a 4-tuple (x,y,z,w) and you defined addition and multiplication so that:
• (x,y,z,w) ⊕ (a,b,c,d) = (x+a,y+b,z+c,w+d)
• (x,y,z,w) ⊗ (a,0,0,0) = (xa,ya,za,wa)
• (x,y,z,w) ⊗ (0,b,0,0) = (yb,xb,wb,-zb)
• (x,y,z,w) ⊗ (0,0,c,0) = (zc,-wc,xc,yc)
• (x,y,z,w) ⊗ (0,0,0,d) = (-wd,-zd,yd,xd)
• (x,y,z,w) ⊗ [ (a,b,c,d)⊕(q,r,s,t) ] = [ (x,y,z,w)⊗(a,b,c,d) ] ⊕ [ (x,y,z,w)⊗(q,r,s,t) ]
• [ (x,y,z,w)⊕(a,b,c,d) ] ⊗ (q,r,s,t) = [ (x,y,z,w)⊗(q,r,s,t) ] ⊕ [ (a,b,c,d)⊗(q,r,s,t) ]
(I think that's enough... so long as a,b,c,d,q,r,s,t,w,x,y,z,0 are all from the same field (maybe even commutative ring? or just ring?... well I suppose it's probably only the Cl<sub>2</sub> if they're from the field R)).
pat
Tetronian

Posts: 563
Joined: Tue Dec 02, 2003 5:30 pm
Location: Minneapolis, MN

Oops... forgot to also require that ⊕ be commutative and associative and that ⊗ be associative. Actually, I suppose the commutativity and associativity of ⊕ are built into my first line there since the addition within the field of coefficients would be commutative and associative. I suppose that the associativity of ⊗ is also derivable from what I have above, but it would be messy and it's easy to state.
pat
Tetronian

Posts: 563
Joined: Tue Dec 02, 2003 5:30 pm
Location: Minneapolis, MN

Hello Pat and all,

It appears Michael, from the MMB, has explained the "problem" I've found.

(Quote of Michael's post. Inner quote is from previous post of mine.)

> Perhaps... it was my understanding that ab = a.b + a^b
> was the definition of the geometric product for all multivectors.

For example what if a = e<sub>1</sub>e<sub>2</sub>, b = e<sub>1</sub>e<sub>3</sub>?

Then a.b = 0, a^b = 0 yet ab = -e<sub>2</sub>e<sub>3</sub> using associativity and the Clifford rule {e<sub>i</sub>,e<sub>j</sub>} = δ<sub>ij</sub> where {,} is the anticommutator. So ab = a.b + a^b doesn't hold.

Yes, I that's correct. That appears to be what accounts for the "problem" I've encountered.

(BTW, is δ<sub>ij</sub> the tensor suffix notation?)

If I'm reading Hestenes correctly, particularly p. 44 in <u>New Foundations for Classical Mechanics</u>:

The student should be aware that the geometric product of blades <b>A</b> and <b>B</b> is <i>not</i> generally related to inner and outer products by the formula

<b>AB</b> = <b>A.B</b> + <b>A∧B</b>

<i>unless</i> one of the factors is a vector, as in (1.4). In particular, this formula does not hold if both <b>A</b> and <b>B</b> are bivectors. To prove that, express <b>A</b> as a product of orthogonal vectors by writing <b>A</b> = <b>a∧b</b> = <b>ab</b>.

Then

<b>AB</b> = <b>a(b.B</b> + <b>b∧B)</b>

= <b>a.(b.B)</b> + <b>a∧(b.B)</b> + <b>a.(b∧B)</b> + <b>a∧b∧B</b>.

Hence

<b>AB</b> = <b>A.B</b> + <b><AB><sub>2</sub></b> + <b>A∧B</b>,

where

<b>A.B</b> = <b><AB><sub>0</sub></b> = <b>a.(b.B)</b>,
<b><AB><sub>2</sub></b> = <b>a∧(b.B)</b> + <b>a.(b∧B)</b>,
<b>A∧B</b> = <b><AB><sub>4</sub></b> = <b>a∧b∧B</b>.

And <b><AB><sub>2</sub></b> = <b>a∧(b.B)</b> + <b>a.(b∧B)</b> is precisely the term that appears for the bivectors in the geometric product table.

Thanks for clearing that up for me, Michael. Although it appears that things are looking even more complicated...

(Quote of Michael's post. Inner quote is from previous post of mine.)

> I believe that equation is derived from the quote I made from p. 38
> of Mikael Nilsson's Master's Thesis. Pat is putting in the implicit
> wedge products.

I don't see how. Certainly the outer product distributes over vector space addition, but that equation appears to be incorrect. I think it should be:

e<sub>1</sub>.(e<sub>1</sub>^e<sub>2</sub>) = e<sub>1</sub>.(e<sub>1</sub>e<sub>2</sub>) = e<sub>1</sub>(e<sub>1</sub>e<sub>2</sub>) = (e<sub>1</sub>e<sub>1</sub>)e<sub>2</sub> = e<sub>2</sub>

In the second equals sign I've basically used the rule that appears on p.38.

I'm not really sure. Pat's post said:

I'm thrown off by his quote on page 38. I was thinking that the inner-product distributed with the outer product:
e<sub>1</sub>.(e<sub>1</sub>∧e<sub>2</sub>) = (e<sub>1</sub>∧e<sub>1</sub>) + (e<sub>1</sub>∧e<sub>2</sub>) = 0 + e<sub>1</sub>e<sub>2</sub>.

Regardless, for the quaternions as Cl<sub>3</sub><sup>+</sup>....

I'll have to think on this some more and flip through Lounesto a bit.

It sounds like Pat and you may be saying the same thing.

However, I'm going to post this post to the Tetraspace Forum, so Pat will get a chance to see it.
Paul
Trionian

Posts: 74
Joined: Sat Sep 04, 2004 10:56 pm

<p>Ah, phew... that's better...</p>
<p>I was off base with the way that the dot-product should distribute... but, yes... it makes sense to me that the formulae at the top of this thread would only hold if at least one of the elements is a pure vector (or pure-scalar).</p>
pat
Tetronian

Posts: 563
Joined: Tue Dec 02, 2003 5:30 pm
Location: Minneapolis, MN