Matrix analysis of structures theory, computation, and programming