勉強する(べんきょうする) means to study, to do something to get knowledge and 勉強する is used as a theme oriented.
学ぶ(まなぶ)=study; 学ぶ means to study, to do something to get knowledge / is used for what he studied and 学ぶ is used in formal.
@先生が居ても居なくても、”勉強する”は 使うことができます。 *日本語を大学で勉強しました。(先生がいます) *一人で日本語を勉強しています。(独学=どくがく means self study; 先生がいません)
A習う(ならう)/ 教わる(おそわる)は、絶対(ぜったい)に先生に(友達に、家族に)教えてもらいます。先生がいます。 *息子(むすこ)は塾(じゅく)で、英語を習っている。(You can say ”息子は塾で英語を勉強している”) *友達にすしの作り方を教わった(おそわった)。 *4歳(よんさい)の娘(むすめ)に、毎週(まいしゅう)、水泳(すいえい)と、英語と、バイオリンを 習(なら)わせている。causative form