[ 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