私は Datalog の概念に慣れていないので、pyDatalog を通じて調査しています。単位測定コンバーターを試しています。したがって、たとえば、1 メートルが何インチであるかという事実が与えられた場合、1 インチが何メートルであるかを教えてくれるはずです。これまでの私のコードは次のとおりです。
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)
プログラムがインチをメートルに正しく変換しないのはなぜですか? 1 メートルが 39.37 インチであることを確認し、逆数規則を適用して逆に変換します。したがって、0.0234 と出力されるはずですが、実際には出力されます。
V
----------
39.3707787