Resultados de la búsqueda a petición "meta-predicate"
Procedimiento de mapa de Prolog que aplica el predicado a los elementos de la lista
¿Cómo se escribe un procedimiento Prologmap(List, PredName, Result) que aplica el predicadoPredName(Arg, Res) a los elementos deList, y devuelve el resultado en la listaResult? Por ejemplo test(N,R) :- R is N*N. ?- map([3,5,-2], test, L). L = ...
¿Por qué usamos '!' en prolog
Este es el código que estoy tratando de entender. co(X) :- co(X,[],L). co([],A,A):- write(A). co([X|Xs], A, L) :- p(X-Z,A,R), !, Z1 is Z+1, co(Xs, [X-Z1|R], L). co([X|Xs], A, L) :- co(Xs, [X-1|A], L). p(X-Y,[X-Y|R],R):- !. p(X,[H|Y], [H|Z]) :- ...
Relación de pares sobre la lista
El siguiente predicado de orden superior tiene éxito si todos los pares de elementos de la lista son verdaderos para una relación dada. ¿Existe un nombre común o mejor, más intencional para revelar esta relación? i motivación original para este ...
Prólogo: ¿Filtrar una lista?
Actualmente estoy trabajando en un proyecto muy corto en Prolog, y me quedé atascado tratando de aplicar un "filtro" que he creado en una lista. Tengo lo que podría llamar el filtro listo, pero no puedo aplicarlo. Sería mejor ...
Confiando en el orden de las reglas
Para calcular la distancia de Hamming entre dos listas de la misma longitud, utilizo
Prolog GNU - Operador Univ? Explicación de ello
Entonces el operador univ. No lo entiendo exactamente. Por ejemplo esto: foo(PredList,[H|_]) :- bar(PredList,H). foo(PredList,[_|T]) :- foo(PredList,T),!. bar([H|_],Item) :- G =.. [H,Item],G. bar([_|T],Item) :- bar(T,Item).¿Qué está haciendo ...