Diffeomorphism between groups I would like to prove that the map $$\phi :O_{n}\times H\rightarrow GL_{n}(\mathbb{R})$$ $$\phi(B,A)=BA$$ is a diffeomorphism, while $O_{n}$ is the orthogonal group and $H$ is the group of all upper triangular matrices, i.e I have to prove that $\phi$ is a smooth map.
I tried to say that any real square matrix has a QR decomposition.
Unfortunately, I don't understand how can I show that $\phi$  is indeed smooth. which tools can help me?
 A: Proving that $\phi$ is smooth is quite easy. Matrix multiplication is smooth on all of $GL_n(\mathbb R)$ because its coordinate functions are just polynomials, and the restriction of a smooth function to a submanifold (such as $O_n$ or $H$) is always smooth.
But just proving that $\phi$ is smooth is not enough to conclude that it's a diffeomorphism. You need to show that it's bijective and that its inverse is smooth. 
Showing that it's bijective just boils down to using the Gram-Schmidt process to prove that every invertible matrix can be written as a product of an orthogonal one times an upper triangular one. 
To show that its inverse is smooth, you can use the equivariant rank theorem, which says that if a group $G$ acts smoothly on two spaces $X$ and $Y$, transitively on $X$, and $F\colon X\to Y$ is a smooth map such that $F(g\centerdot x) = g\centerdot F(x)$ for all $g\in G$, $x\in X$, then $F$ has constant rank. So you just need to find appropriate group actions for which $\phi$ is equivariant. You could try $G=O_n\times H$, with actions $(B,A)\cdot (B',A') = (BB',A'A^{-1})$ and $(B,A)\cdot C = BCA^{-1}$.
Once you know $\phi$ is bijective and constant-rank, the global rank theorem implies that it's a diffeomorphism. 
You can find all of these theorems proved in my Introduction to Smooth Manifolds, 2nd ed.
