Problem 1051. Exact binary matrix factorization
Given a binary-valued (only ones and zeroes) MxN matrix C, and K (where K<M and K<N) find a binary-valued MxK matrix A and a binary-valued KxN matrix B such that A*B equals C. e.g. for K = 2, and
C =
       1     1     1     0
       0     0     0     0
       0     1     0     1then one possible solution is
A =
     0     1
     0     0
     1     0B =
       0     1     0     1
       1     1     1     0For this problem, assume that at least one solution exists.
Note that you cannot do matrix multiplication with two logical matrices in MATLAB.
Solution Stats
Problem Comments
- 
		3 Comments
you should probably add an assert statement that checks the size of the output matrices
I second @bmtran. lu wins!
thanks, I added the extra asserts as you suggest. the other solutions submitted so far look interesting, thanks for them!
Solution Comments
Show commentsProblem Recent Solvers14
Suggested Problems
- 
         
         80 Solvers 
- 
         
         250 Solvers 
- 
         Solve the set of simultaneous linear equations 478 Solvers 
- 
         
         389 Solvers 
- 
         
         388 Solvers 
More from this Author5
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!