Объём необходимой теории никак не зависит от того, какой именно язык программирования ты используешь в данный момент.
В первую очередь, надо знать дискретную математику и вычислительную математику - в объёме профильного ВУЗа. Остальные разделы математики - в зависимости от решаемых задач.
P.S. Список, выданный белковым придатком к нейросети "Татьяна" - элементы языка C++, не имеющие никакого отношения к теории.