Возможно, слабость используемого CLP (R) в том, что квадратичный регистр работает не так хорошо.После Y = Z очевидно, что X = Y ** 2, а затем с X = 9 и Y> 0 вы должны легко получить Y = 3. Какой CLP (R) вы используете?
CLP (R) должен не только поддерживать линейные равенства и неравенства.Используя, например, алгоритм Базиса Грёбнера, CLP (R) может сделать больше, даже алгебраически.Некоторые системы компьютерной алгебры могут сделать это легко.
Так что я думаю, это не проблема Пролога как такового, а скорее библиотеки.Строго говоря, CLP (X) указывает только на область X. Для области R действительных чисел существует множество возможных решений уравнений и неравенств.