Is there a matrix A such that AxB=B?

  • Thread starter yazid12111980
  • Start date
  • Tags
    Matrix
In summary, it seems that the standard definition of A×B as matrix multiplication is not applicable in this case. The cross product for matrices in 3 dimensions is not well-defined and cannot be used to satisfy the equation A×B=B. While it is possible to define a cross product for matrices in Matlab, it is not the same as the standard definition and may not yield the desired result. Other methods, such as using the matrix commutator, may be more suitable for solving this problem.
  • #1
yazid12111980
3
0
AxB=B ?

Hello, This my first post .. I hope to find someone can help me.

My question:
Assume that we have a 3x3 matrix B, is there a matrix A such that

AxB=B

??

Thanks
 
Physics news on Phys.org
  • #2


Take A the identity matrix. That is, take

[tex]A=\left(\begin{array}{ccc} 1 & 0 & 0\\ 0 & 1 & 0\\ 0 & 0 & 1 \end{array}\right)[/tex]
 
  • #3


I tried that .. it doesn't work for cross product !
 
  • #4


Its not a multiplication .. its a cross product. For example:

A =

1 2 3
4 5 6
7 8 9

>> B=eye(3)

B =

1 0 0
0 1 0
0 0 1

>> cross(B,A)

ans =

0 8 -6
-7 0 3
4 -2 0

?
 
  • #5


So, how do you define the cross product for matrices??
 
  • #7


yazid12111980 said:
Its not a multiplication .. its a cross product.
I would double check on that if I were you. The standard definition of A×B is that of matrix multiplication:

[tex](A\times B)_{ij} = \sum_k A_{ik} B_{kj}[/tex]

Interpreting A×B to mean Matlab's cross(A,B) when A and B are matrices is extremely non-standard.
 
  • #8


Cross products for matrices can be done in Matlab, and it seems to be defined as several cross products in the matrix. Are you sure this is what you want? I have never seen this before. AxB has always been ordinary matrix multiplication.
 
  • #9


@Yazid: I'm not sure there is even a sensible way to define a cross product for matrices in 3 dimensions. The closest you can probably get to it is just the matrix commutator. It's a antisymmetric product that takes two matrices and returns a matrix.

Then [A,B] = B is basically an eigenvalue problem for the adjoint representation of A...
where you've been given an eigenvector (B) and need to find an operator (ad(A)) with that eigenvector.
 
  • #10


Actually, http://www.mathworks.com.au/help/techdoc/ref/cross.html"
It works something like (I don't have matlab, so I can't be sure)

So if A = (a1,a2,...,an) and B=(b1,b2,...,bn) with ai and bi 3d vectors, then

cross(A,B) = ( cross(a1,b1), cross(a2,b2), ..., cross(an,bn) )

In Mathematica, the example provided can be written as

Code:
A = {{1, 2, 3}, 
     {4, 5, 6}, 
     {7, 8, 9}};
B = IdentityMatrix[3];

Transpose[Table[Cross[Transpose[B][[i]], Transpose[A][[i]]], {i, 3}]]
(* Output: 
{{ 0,  8, -6}, 
 {-7,  0,  3}, 
 { 4, -2,  0}}
*)

So for n=3, the original problem becomes

cross(A,B)=B ==> (a1xb1, a2xb2, a3xb3) = (b1, b2, b3)

which requires that aixbi=bi, something that is never true...
 
Last edited by a moderator:
  • #11


Simon_Tyler said:
In Mathematica, the example provided can be written as

I'd use the http://reference.wolfram.com/mathematica/ref/Thread.html" [Broken] command myself.
 
Last edited by a moderator:
  • #12


@pwsnafu

I couldn't get Thread to work without Cross complaining about its arguments - although the error messages can be suppressed. Overall, I found that a combination of Apply at level 1 (@@@) the fastest, but not by much. Table is definitely the clearest to someone who is not used to functional programming.

Here's some timings using my custom TimeAv function. The FullForm of Transpose, instead of its typeset form, definitely makes the whole thing less readable...

Code:
In[1]:= A = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
        B = IdentityMatrix[3];

In[3]:= SetOptions[TimeAv, Method -> {"MinNum", 10000}, "BlockSize" -> 1000];

In[4]:= Transpose[Table[Cross[Transpose[B][[i]], Transpose[A][[i]]], 
                  {i, 3}]] // TimeAv

During evaluation of In[4]:= Total wall time is 4.817133, 
total cpu time is 4.07 and total time spent evaluating the expression is 4.07

During evaluation of In[4]:= The expression was evaluated 10000 times, 
in blocks of 1000 runs. This yields a mean timing of 0.000407 
with a blocked standard deviation of 7.81025*10^-6.

Out[4]= {0.000407, {{0, 8, -6}, {-7, 0, 3}, {4, -2, 0}}}

In[5]:= Transpose[Apply[Cross, Transpose[{Transpose[B], Transpose[A]}], 
                        {1}]] // TimeAv

During evaluation of In[5]:= Total wall time is 3.847493, 
total cpu time is 3.85 and total time spent evaluating the expression is 3.85

During evaluation of In[5]:= The expression was evaluated 10000 times, 
in blocks of 1000 runs. This yields a mean timing of 0.000385 
with a blocked standard deviation of 5.*10^-6.

Out[5]= {0.000385, {{0, 8, -6}, {-7, 0, 3}, {4, -2, 0}}}

In[6]:= Quiet[Transpose[Thread[Cross[Transpose[B], Transpose[A]]]], 
              Cross::nonn1] // TimeAv

During evaluation of In[6]:= Total wall time is 4.462055, 
total cpu time is 4.46 and total time spent evaluating the expression is 4.46

During evaluation of In[6]:= The expression was evaluated 10000 times, 
in blocks of 1000 runs. This yields a mean timing of 0.000446 
with a blocked standard deviation of 9.16515*10^-6.

Out[6]= {0.000446, {{0, 8, -6}, {-7, 0, 3}, {4, -2, 0}}}
 

1. What is Matrix A for AxB=B?

Matrix A for AxB=B refers to the matrix that, when multiplied by matrix B, results in the same matrix B. In other words, it is the identity matrix for matrix B.

2. How is Matrix A for AxB=B related to the concept of an identity matrix?

Matrix A for AxB=B is essentially the identity matrix for matrix B. It represents the unique matrix that, when multiplied by matrix B, results in the same matrix B. This is similar to how the identity matrix, when multiplied by any other matrix, results in the same matrix.

3. What is the purpose of Matrix A for AxB=B in mathematics?

Matrix A for AxB=B is used in mathematics to represent the concept of an identity matrix and to solve equations involving matrices. It can also be used to simplify calculations involving matrices.

4. How is Matrix A for AxB=B different from other matrices?

Matrix A for AxB=B is different from other matrices in that it is the only matrix that, when multiplied by a specific matrix, results in the same matrix. Other matrices may have different properties and operations associated with them, but Matrix A for AxB=B is unique in its purpose.

5. Can Matrix A for AxB=B be used to solve all matrix equations?

No, Matrix A for AxB=B can only be used to solve equations in which the matrix B is known and the goal is to find Matrix A. It cannot be used to solve equations with other variables or unknown matrices.

Similar threads

  • Linear and Abstract Algebra
Replies
6
Views
408
  • Linear and Abstract Algebra
Replies
20
Views
891
  • Linear and Abstract Algebra
Replies
2
Views
984
  • Linear and Abstract Algebra
Replies
7
Views
2K
  • Linear and Abstract Algebra
Replies
20
Views
1K
  • Linear and Abstract Algebra
Replies
8
Views
993
Replies
24
Views
1K
  • Linear and Abstract Algebra
Replies
2
Views
350
  • Linear and Abstract Algebra
Replies
1
Views
765
  • Linear and Abstract Algebra
Replies
2
Views
493
Back
Top