Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>ok i try to write the problem as i see it:</p> <pre><code>M = A x B </code></pre> <ul> <li>M known non negative integer input matrix NxN</li> <li>A,B unknown output decomposition of M, non unit, non negative integer</li> </ul> <p>multiplication of matrixes:</p> <pre><code>M[i][j] = sum(k=0,1,...,N-1)A[i][k]*B[k][j] </code></pre> <p>ok now let me write an 3x3 example for clarity: </p> <pre><code>M[3][3]=A*B i j i k k j i k k j i k k j M[0][0]=A[0][0]*B[0][0]+A[0][1]*B[1][0]+A[0][2]*B[2][0] M[0][1]=A[0][0]*B[0][1]+A[0][1]*B[1][1]+A[0][2]*B[2][1] M[0][2]=A[0][0]*B[0][2]+A[0][1]*B[1][2]+A[0][2]*B[2][2] M[1][0]=A[1][0]*B[0][0]+A[1][1]*B[1][0]+A[1][2]*B[2][0] M[1][1]=A[1][0]*B[0][1]+A[1][1]*B[1][1]+A[1][2]*B[2][1] M[1][2]=A[1][0]*B[0][2]+A[1][1]*B[1][2]+A[1][2]*B[2][2] M[2][0]=A[2][0]*B[0][0]+A[2][1]*B[1][0]+A[2][2]*B[2][0] M[2][1]=A[2][0]*B[0][1]+A[2][1]*B[1][1]+A[2][2]*B[2][1] M[2][2]=A[2][0]*B[0][2]+A[2][1]*B[1][2]+A[2][2]*B[2][2] // usage of B[i][j] M[0][0]=A[0][0]*B[0][0]+... M[1][0]=A[1][0]*B[0][0]+... M[2][0]=A[2][0]*B[0][0]+... M[?][j]=A[?][i]*B[i][j]+... // usage of A[i][j] M[0][0]=A[0][0]*B[0][0]+... M[0][1]=A[0][0]*B[0][1]+... M[0][2]=A[0][0]*B[0][2]+... M[i][?]=A[i][j]*B[j][?]+... </code></pre> <p>When you look closer then the solution is very simple. find all:</p> <pre><code>A[i][j]=GCD(M[i][0],...,M[i][N-1]) </code></pre> <p>then derive B either from M,A or as B=M*inverse(A)</p> <p>M is decomposable if there is at least single A[i][j] > 1 </p> <p>also you can get B as GCD and derivate A from M,B,....</p> <p>thats all , hope it helps... </p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload