Я создаю CAS (компьютерная алгебра система) в PHP, но я застрял прямо сейчас. Я использую этот сайт.
Теперь я написал токенизатор. Он преобразует уравнение следующим образом:
1+2x-3*(4-5*(3x))
:
NUMBER PLUS_OPERATOR NUMBER VAR[X] MINUS_OPERATOR NUMBER MULTIPLY_OPERATOR GROUP
(где группа - это еще один набор токенов). Как я могу упростить это уравнение? Да, я знаю, что вы можете сделать: добавление X-vars, но они находятся в подгруппе. Каков наилучший метод, который я могу использовать для обработки этих токенов?