Почему создание отношений в pyDatalog, кажется, дает мне неправильный ответ?
Я новичок в понятиях Datalog, и я изучаю его через pyDatalog. Я экспериментирую с преобразователем единиц измерения. Так, учитывая факты о том, сколько дюймов в метре, например, он должен быть в состоянии сказать мне, сколько метров в дюйме. Вот мой код до сих пор:
from pyDatalog import pyDatalog
from pyDatalog.pyDatalog import create_terms as cterms
pyDatalog.create_terms('scale') # the long way of doing it
cterms('A, B, V')
scale['meter', 'inch'] = 39.3707787
scale[A, B] = 1/ scale[B, A]
print(scale['inch', 'meter'] == V)
Wny не программа конвертирует дюймы в метры правильно? Он должен видеть, что в метре 39,37 дюйма, и применять обратное правило для преобразования другим способом. Так что он должен распечатать 0.0234, но на самом деле он распечатывает
V
----------
39.3707787
1 ответ
Решение
Это ошибка. Исправление теперь выполняется в наборе изменений b1a5df9 и будет доступно в следующем выпуске. В то же время, вы можете применить изменения в вашей системе.