axiom-mail
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Axiom-mail] Calc. with a self-inverse integer matrix


From: Martin Rubey
Subject: Re: [Axiom-mail] Calc. with a self-inverse integer matrix
Date: 03 Mar 2008 11:36:26 +0100
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.4

"address@hidden" <address@hidden> writes:

> Hello,
> 
> thanks first for the advice that B=A! That is right, sorry for conducting too 
> soon to the CAS.
> With this, all the a_ij are out, and the problem is to find d_i and n_j such 
> that B is self-inverse and integer, and that 2 conditions are fulfilled:
> 
> B=-I + n @ d + 2 n @ n
> n.n=1
> n.d=0
> 
> in components:
> 
>    --------------------------------------------------------------------------|
>    | -1 + n1 d1 + 2 n1 n1    | n1 d2 + 2 n1 n2       | n1 d3 + 2 n1 n3       |
>    |-------------------------|-----------------------|-----------------------|
> B= |  n2 d1 + 2 n2 n1        | -1 + n2 d2 + 2 n2 n2  | n2 d3 + 2 n2 n3       |
>    |-------------------------|-----------------------|-----------------------|
>    |  n3 d1 + 2 n3 n1        | n3 d2 + 2 n3 n2       | -1 + d3 n3 + n3 n3    |
>    --------------------------------------------------------------------------|
> 
> n1 n1 + n2 n2 +n3 n3 = 1
> d1 n1 + d2 n2 +d3 n3 = 0
> 
> as you stated below, it is not possible to solve within the integers. 

I meant to say that maybe you can solve it within the integers, but not
automatically with axiom.

> now that the a_ij are out, maybe this does not apply anymore?
> 
> i am assuming that one can not find other solutions than for example
> n=(1,0,0) d=(0,z1,z2), with
> 
> B=   |  1  z1  z2 |
>      |  0  -1  0  |
>      |  0  0  -1  |
> 
> being integer and self-inverse when z1 and z2 are integer. however, assuming
> is not enough.  as i am new to axiom, i dont even know how to state the
> problem.

To save others some time, here are some functions I defined to play around:

N k == matrix [[n[i] for i in 1..k]]

D k == matrix [[d[i] for i in 1..k]]

B k == -scalarMatrix(k, 1)+N k * D k + 2*N k * transpose N k

L k == concat([first parts(transpose N k * N k - 1), first parts(D k * N 
k)],parts((B k)^2::SQMATRIX(k, POLY INT) - 1))

we now want to say, for example,

solve L 2

but that does not work.  However:

(57) -> radicalSolve(L 2, [n[1], n[2]]).1

                   +---------+
                   |     2
                   |   d
                   |    1
                d  |---------       +---------+
                 2 |  2     2       |     2
                   |d   + d         |   d
                  \| 2     1        |    1
   (57)  [n = - --------------,n =  |--------- ]
           1          d         2   |  2     2
                       1            |d   + d
                                   \| 2     1
                                       Type: List Equation Expression Integer


Substituting back into B 2:

eval(B 2, radicalSolve(L 2, [n[1], n[2]]).1)

You will have to check by hand whether you find some integral solutions
there...


Maybe somebody else can help...

Martin





reply via email to

[Prev in Thread] Current Thread [Next in Thread]