Resultados de la búsqueda a petición "prolog"

3 la respuesta

Variables equivalentes de coincidencia de patrones en Haskell, como en Prolog

En prolog, podemos hacer algo como lo siguiente: myFunction a (a:xs) = ...Esto es, cuando el primer argumento demyFunction es lo mismo que el primer elemento de la lista que está en el segundo argumento, esta función evaluará a.... Mi pregunta ...

1 la respuesta

Cómo usar listas de diferencias en un intérprete Prolog

Cuando estaba escribiendoesta pregunta en una lista vacía como una lista de diferencias [https://stackoverflow.com/questions/41591498/is-it-possible-to-write-an-empty-list-as-a-difference-list-in-prolog] Quería probar lo que sabía sobre esas ...

2 la respuesta

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 ...

2 la respuesta

mini-kanren ¿cuál es la diferencia entre cond-a cond-u y cond-e?

He intentado usar una implementación de mini-kanren en clojure. Pero he estado luchando por comprender la diferencia entre cond-a cond-u y cond-e. Parece que tengo bastante claro acerca de cond-e, pero la comprensión de cond-a y cond-u ...

1 la respuesta

división de verdad en prólogo

Hola comunidad stackoverflow así que estoy tratando de calcular esta salida A B and(A,B) or(A,and(A,B)) true true true true true true false false false false true false false false false falsesin embargo, mi código me da un error cuando lo ...

7 la respuesta

Definición más compacta

Dadoword/1, word(W) :- abs(ABs), ABs = W. abs([]). abs([AB|ABs]) :- abs(ABs), ab(AB). ab(a). ab(b). ?- word(W). W = [] ; W = [a] ; W = [b] ; W = [a,a] ; W = [b,a] ; W = [a,b] ; W = [b,b] ; W = [a,a,a] ; W = [b,a,a] ; W = [a,b,a] ; W = [b,b,a] ; ...

2 la respuesta

Puntos de elección y rehacer en Prolog

Después de hacer una preguntaaquí [https://stackoverflow.com/questions/45391973/when-is-the-redo-port-called-with-new-variables-in-trace-0-and-when-not/45393321?noredirect=1#comment77769720_45393321] sobre cuándo exactamente unRedo se llama en ...

2 la respuesta

Prólogo: predicado para máximo sin acumulador

¿Es posible crear un predicado?max/2 sin un acumulador para quemax(List, Max) es cierto si y solo siMax es el valor máximo deList (una lista de enteros)?

3 la respuesta

Predicado nth1 simple en Prolog

Con SWI Prolog, hay un predicado que encuentra el enésimo elemento en una lista llamada nth1. Quiero implementar mi propia versión del predicado, pero SWI es tan complicado si nos fijamos en el código de listado (nth1). ¿Hay una manera más simple ...

4 la respuesta

Combinaciones permutadas de los elementos de una lista - Prolog

¿Cómo puedo generar todas las combinaciones posibles de los elementos de una lista? Por ejemplo, dada la lista[1,2,3], Quiero diseñar un predicado con la formacomb([1,2,3], L). que debería devolver la siguiente respuesta paraL: [1] [2] [3] ...