Мне нужно найти точное действительное решение линейной программы (где все входные данные являются целыми числами). Важно, чтобы решатель также выдавал решения в виде рациональных чисел, в идеале не выполняя никаких промежуточных шагов с числами с плавающей запятой.
GLPK может выполнять точные арифметические действия, но не может отображать решения в виде рациональных чисел (т.е. я получаю 0,3333 для 1/3). Я, вероятно, мог бы попытаться угадать, какое число имеется в виду, но это кажется очень хрупким.
Мне не удалось найти LP-решатель, который может делать такие вещи. Есть ли один? Производительность не является большой проблемой; мои проблемы очень маленькие. (Я рассматривал возможность использования решателя SMT, такого как Z3; они могут решать такие проблемы и предоставлять точные рациональные решения, но они прибегают к устранению квантификаторов вместо использования более подходящего алгоритма для линейных программ, таких как Simplex)