Fix bound computation in (^)/2
?- A in 0..1, B in-1..0, A^2 #= B. false. % unexpected. ?- A^2 #= B, A in 0..1, B in-1..0. A = 0, B = 0.
This commit is contained in:
@@ -5542,7 +5542,7 @@ run_propagator(pexp(X,Y,Z,Morph), MState) -->
|
|||||||
fd_put(Z, ZD2, ZPs),
|
fd_put(Z, ZD2, ZPs),
|
||||||
{ ( even(Y), ZU = n(Num) ->
|
{ ( even(Y), ZU = n(Num) ->
|
||||||
integer_kth_root_leq(Num, Y, RU),
|
integer_kth_root_leq(Num, Y, RU),
|
||||||
( XL cis_geq n(0), ZL = n(Num1) ->
|
( XL cis_geq n(0), ZL = n(Num1), Num1 >= 0 ->
|
||||||
integer_kth_root_leq(Num1, Y, RL0),
|
integer_kth_root_leq(Num1, Y, RL0),
|
||||||
( RL0^Y < Num1 -> RL is RL0 + 1
|
( RL0^Y < Num1 -> RL is RL0 + 1
|
||||||
; RL = RL0
|
; RL = RL0
|
||||||
|
|||||||
Reference in New Issue
Block a user