Select from two lists at the same positon. True if XList is
unifiable with YList apart a single element at the same
position that is unified with X in XList and with Y
in YList. A typical use for this predicate is to replace
an element, as shown in the example below. All possible substitutions
are performed on backtracking.
?- select(b, [a,b,c,b], 2, X).
X = [a, 2, c, b] ;
X = [a, b, c, 2] ;