I am using Racket v8.5, with the packages for minikanren and
minikanren/numbers required. Why does introducing the numbero
constraint cause previously valid unifications to fail?
> (run 1 (q) (<lo '(1) q))
'((_.0 _.1 . _.2))
> (run 1 (q) (<lo '(1) q) (numbero q))
'()
> (run 1 (q) (numbero q) (<lo '(1) q))
'()
> (run 1 (q) (<lo q '(1)))
'(())
> (run 1 (q) (<lo q '(1)) (numbero q))
'()
> (run 1 (q) (numbero q) (<lo q '(1)))
'()