Prolog cuenta el número de veces que un predicado es verdadero
Quiero contar la cantidad de veces que un predicado personalizado es verdadero. Por ejemplo, tengo el siguiente código:
is_man(john).
is_man(alex).
?:-is_man(X).
X devolverá a john, luego, si presiono punto y coma, también devolverá alex, luego falso.
Quiero construir algo como:
count(is_man(X), Count).
Y esto para devolver
Count = 2
¿Cómo puedo hacer eso