Poincare's theorem about subgroups of finite index

Hi:

I'm given this problem: let G be a group and A, B subgroups of finite order in G. Let $\displaystyle D=A\cap B$. Prove that $\displaystyle u,v \epsilon At\cap Bs \Rightarrow Du=Dv$. (1) Using this, prove that $\displaystyle [G:D]\leq [G:A][G:B]$ (Poincare's theorem).

I can prove the theorem by defining $\displaystyle f: G_D \rightarrow G_A \times G_B, f(Dd)=((Ad, Bd), where G_D$ is the set of right

cosets of D in G and so on for $\displaystyle G_A and G_B$. f is one-to-one and therefor $\displaystyle G_D$ is a finite set. Furthermore, $\displaystyle |G_D|\leq |G_A||G_B|$.

My question is: can (1) make the proof simpler or more straightforward than that given by me? (assuming it is correct). Because I've tried to use (1) to prove the theorem but I've failed. Any suggestion would be welcome. Thanks for reading.