sealed traits Vector and Matrix