added library for matrix operations