我正在使用 prolog 解决不等式问题。我找到了一个代码,它解决了 ax+b>=0 类型的方程。
我使用的代码如下。
:-use_module(library(clpr)).
dec_inc(left,right):-
copy_term(left-right,Copyleft-Copyright).
tell_cs(Copyleft).
max(Copyright,right,Leq).
tell_cs(Leq).
max([],[],[]).
max([E=<_|Ps],[_=<P1|P1s],[K=<P1|Ls]):-
sup(E,K),
max(Ps,P1s,Ls).
tell_cs([]).
tell_cs([C|Cs]):-
{C},
tell_cs(Cs).
例如
当我们给出 {2*X+2>=5}。它给出了正确的答案。{X>=1.5}。
2.但是如果我输入像 {(X+3)/(3*X+1)>=1} 这样的分数。它给出 {1- (3+X)/ (1+3.0*X)=<0.0}。
我怎样才能解决这类不等式问题以找到最终答案。(包括分数的问题)。
请帮我。
如果有任何学习资料可以参考,请告诉我。