added linear algebra