length of list prolog
Length of List in Prolog
To find the length of a list in Prolog, you can use the built-in predicate length/2
. The length/2
predicate takes two arguments: the list and a variable to store the length of the list. Here's an example:
length([], 0). % base case: an empty list has length 0
length([_|T], N) :- length(T, N1), N is N1 + 1. % recursive case: increment the length by 1
In this example, the first clause states that an empty list has a length of 0. The second clause recursively calculates the length of a non-empty list by incrementing the length of its tail (T
) by 1.
To use this predicate, you can query it with a list and a variable to store the length. For example:
?- length([1, 2, 3, 4, 5], N).
N = 5.
This query will return N = 5
, indicating that the length of the list [1, 2, 3, 4, 5]
is 5.
Please note that the code provided is a general implementation of finding the length of a list in Prolog. There may be other ways to achieve the same result.