algebraic instances for HVector