Tag: AMZI-PROLOG
Estoy tratando de resolver algunas tareas relacionadas con la teoría de grafos y el análisis de redes utilizando Prolog. Dado un grafo con nodos y conexiones: connection(a, b). connection(b, e). connection(e, c). connection(b, c). connection(c, d). connection(d, f). connection(a, d). connection(a, c). connection(b, d). Tuve que agregar predicados para verificar . . . Read more
Tengo el siguiente código en Prolog: concat([], [], []). concat([], [H|T], [H|T2]) :- concat([], T, T2). concat([H|T], L2, [H|T2]) :- concat(T, L2, T2). is_ordered([]). is_ordered([_X]). is_ordered([X,Y|Tail]) :- X =< Y, is_ordered([Y|Tail]). y trato de obtener un ejemplo de X que ajuste con concat y is_ordered. Cuando escribo: concat([1, 2, 3], . . . Read more
Quiero verificar si una lista L de tuplas (x1, y1) tiene la propiedad de función: ∀ (x1, y1), (x2, y2) ∈ L (x1=x2 ∧ y1=y2) Intenté resolverlo con el siguiente predicado: m_Function(L) :- ((member(M1, L), member(M2, L), M1 = (X1, Y1), M2 = (X2, Y2), X1 = X2) -> Y1 . . . Read more
He creado una función en la cual llamo a varias funciones, pero cuando una de ellas devuelve false, la función principal se detiene y devuelve false. ¿Hay alguna manera de decirle a Prolog que si la función devuelve false, la omita y verifique el resto? En detalle: Estoy intentando hacer . . . Read more
Estoy escribiendo un código en Prolog que tiene salones y cursos. Un salón puede tener varias cosas como un proyector y una pizarra inteligente, y algunos de los cursos necesitan estos elementos. %base de conocimiento needs(101,proyector). needs(102,pizarra inteligente). needs(241,pizarra inteligente). needs(241,proyector). has(z23,proyector). has(z23,pizarra inteligente). has(z06,proyector). has(z11,pizarra inteligente). capacidad(z06,50). capacidad(z11,70). capacidad(z23,90). . . . Read more