UWN
UWN
Not clear what you mean, but 0 is excluded for division, no matter which: ``` ?- A #= X/Y. clpz:(A*Y#=X), clpz:(Y in inf.. -1\/1..sup). ?- A #= X//Y. clpz:(X//Y#=A), clpz:(Y...
Just for the record, the oldest `clpfd` library of SICStus I can get hold of right now: ``` [ulrich@a9 lib]$ /usr/local/lib/sicstus3.8.4_2/bin/sicstus SICStus 3.8.4 (x86-linux-glibc2.1): Sun Jul 23 14:25:19 CEST 2000...
Currently: ``` ?- X#=popcount(-1^ -1). thread 'main' panicked at 'assertion failed: sign == Sign::Positive', /home/ulrich/.cargo/git/checkouts/dashu-b0ac188b86787091/f934219/integer/src/repr.rs:148:9 note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
@razetime: Please note the missing `#`: ``` ?- X#=popcount(-1 ^ -1). X = 0.
There was a discussion on this in #135 including a sketch for a `dif/2` implementation that is much simpler than existing ones. It uses `(\=)/2` to determine non-unifiability and thus...
> 1. What already happens, dif/2 can cause the handling of other attributes. This doesn't seem so good. Why? It's a perfectly pure environment where this happens. (And if it...
In other words, do you see a flaw in [this implementation sketch](https://github.com/mthom/scryer-prolog/issues/135#issuecomment-488348886)? Maybe if this `ẁhenthereisachange/1` triggers too often.
Constraints maintain to various degrees consistency. When they fail we know for sure that there is no solution. That's what the success of `X \= Y` indicates. However, constraints cannot...
``` ?- "\x0\" = [Null]. Null = '\x0\'. % ok ?- "ab\x0\" = [A,B,Null]. false, unexpected. A = a, B = b, Null = '\x0\'. ?- "ab\x0\" = [A,B]. A...
So in a (single) `quoted token (* 6.4.2 *)` the null character is handled correctly whereas in a `double quoted list token (* 6.4.6 *)` it is ignored, but **only...