It seems there are some interesting differences between these modules (CLPR is bundled with SWI Prolog; CLPBNR is available as a pack courtesy of @ridgeworks).
With CLPR (use_module(library(clpr)).
)
?- {4 = 2/X}.
X = 0.5.
?- {4 = (4 - 2) / (2 - X)}.
{4-2.0/(2-X)=0.0}.
?- {4 = (4 - 2) / (X - 2)}.
{4-2.0/(-2.0+X)=0.0}.
?- {1 = (4 - 2)/(8 - X)}.
{1-2.0/(8-X)=0.0}.
With CLPBNR (use_module(library(clpbnr)).
)
?- {4 == 2/X}.
X = 1r2.
?- {4 == (4 - 2) / (2 - X)}.
X = 3r2.
?- {4 == (4 - 2) / (X - 2)}.
X = 5r2.
?- {1 == (4 - 2)/(8 - X)}.
X = 6.
/JCR