У коментарях є ряд "точних реальних" пропозицій (наприклад, тривалі дроби, лінійні дробові перетворення тощо). Типовий улов полягає в тому, що, хоча ви можете обчислити відповіді на формулу, рівність часто не можна визначити.
Однак, якщо вас просто цікавлять алгебраїчні числа, то вам пощастить: Теорія реальних закритих полів повна, не мінімальна та рішуча. Це довів Тарскі в 1948 році.
Але є улов. Ви не хочете використовувати алгоритм Тарскі, оскільки він знаходиться в класі складності НЕЗАЛЕМНИЙ, який настільки ж непрактичний, як і непрактичні алгоритми. Існують новітні методи, які знижують складність до DEXP, це найкраще, що ми знаємо на даний момент.
Зауважте, що ця проблема є NP-важкою, оскільки вона включає SAT. Однак невідомо (чи вважали), що опинився в НП.
EDIT Я спробую пояснити це трохи більше.
Основою для розуміння всього цього є проблема рішення, відома як Теорія модуля задоволеності, або коротше SMT. В основному ми хочемо вирішити SAT для теорії, побудованої на основі класичної логіки.
Тож ми почнемо з класичної логіки першого порядку з тесту на рівність. Які функціональні символи ми хочемо включити і які їх аксіоми визначають, чи можна визначити теорію чи ні.
Є багато цікавих теорій, висловлених у рамках SMT. Наприклад, існують теорії структур даних (наприклад, списки, двійкові дерева тощо), які використовуються для підтвердження правильності програм та теорії евклідової геометрії. Але для нашої мети ми розглядаємо теорії різних видів чисельності.
Арифметика Пресбургера - це теорія натуральних чисел з додаванням. Ця теорія є рішучою.
Арифметика піано - це теорія натуральних чисел з додаванням і множенням. Ця теорія не є рішучою, як це добре показало Гедель.
Арифметика Тарського - це теорія дійсних чисел з усіма польовими операціями (додавання, віднімання, множення та ділення). Цікаво, що ця теорія є рішучою. На той час це був дуже контр-інтуїтивний результат. Ви можете припустити, що тому, що це "надмножина" натуральних чисел, "важче", але це не так; порівняйте, наприклад, лінійне програмування над раціональними та лінійне програмування на цілі числа.
Може не здаватися очевидним, що задоволеність - це все, що вам потрібно, але це так. Наприклад, якщо ви хочете перевірити, чи відповідає позитивний квадратний корінь 2 рівний справжньому корінь куба 3, ви можете висловити це як проблему задоволення:
∃x.x>0∧x2−2=0∧x3−3=0
ex
sin{xπ|sinx=0}sin
exeix
Альфред Тарскі (1948), Метод рішення елементарної алгебри та геометрії .