У меня есть системы полиномов, довольно простые выражения полиномов, но довольно длинные
оптимизировать мою руку. Выражения сгруппированы в наборы, и в данном наборе есть общие термины для нескольких переменных.
Я хотел бы знать, существует ли система компьютерной алгебры, такая как Mathematica, Matlab или sympy, которая может оптимизировать несколько полиномов с общими терминами для минимизации количества операций. Было бы также хорошо, если бы такая система могла минимизировать количество промежуточных членов, чтобы уменьшить количество регистров.
Если такой системы не существует, я собираюсь сделать ее самостоятельно, используя символическую алгебру Python Sympy. Если вы работаете над таким пакетом или хотите его разработать или использовать, сообщите мне.
вот вымышленный пример
x0 = ((t - q*A)*x + B)*y
y0 = ((t - q*A)*y + B)*z
z0 = ((t - q*A)*z + B)*x
так что вы, очевидно, можете учесть (t - qA) член. Теперь, если вы сделаете количество терминов очень большим с различными комбинациями общих терминов, это будет трудно сделать вручную. Уравнения, которые у меня есть, содержат до 40 членов, а размер набора составляет около 20. Надеюсь, это поможет
Спасибо