[ Comparing and Sorting | Reference Manual | Alphabetic Index ]

number_sort(+List1, -List2)

Succeeds if List2 is the numerically ordered version of List1.
List1
List of numeric terms.
List2
List of numeric terms or variable.

Description

List1 is sorted according to numerical ordering, and unified with List2.

The sort is done according to numerical ordering and duplicates are retained as opposed to sort/2 which uses the standard ordering of terms and removes duplicates. See sort/4 for a discussion of the differences between numerical and standard ordering of numeric types.

Note number_sort(L1,L2) is equivalent to sort(0,$=<,L1,L2).

Modes and Determinism

Exceptions

(4) instantiation fault
List1 is not ground.
(5) type error
List1 contains non-numeric elements.

Examples

Success:
      sort([3,1,6,7,2],S).     (gives S=[1,2,3,6,7]).
      sort([1,3,2,3,4,1],S).   (gives S=[1,1,2,3,3,4]).
Fail:
      sort([2,1,3,4],[2,1,3,4]).



See Also

sort / 2, msort / 2, sort / 4