Base de Conocimiento Genealógica en Prolog: Hechos, Relaciones Familiares y Reglas
Base de Conocimiento Genealógica en Prolog
A continuación se presenta la definición estructurada de una base de hechos y reglas lógicas para modelar un árbol genealógico en Prolog, contemplando géneros, vínculos de maternidad y paternidad, edades y reglas para la identificación de hermanos.
Definición de Género (Hechos)
Mujeres
mujer(daniela).
mujer(martha).
mujer(beatriz).
mujer(socorro).
mujer(leticia).
mujer(patricia).
mujer(karen).
mujer(viridiana).
mujer(karime).
mujer(mariana).
mujer(paulina).
mujer(monica).
mujer(rosy).
mujer(majito).
mujer(america).
mujer(regina).
mujer(mercedes).Hombres
hombre(daniel).
hombre(migue).
hombre(marco).
hombre(jaime).
hombre(braulio).
hombre(brianramiroaguilarascencio).
hombre(santiago).
hombre(emilio).
hombre(emiliano).
hombre(damian).
hombre(mateo).
hombre(pedro).
hombre(carlos).Relaciones de Parentesco
Línea Materna (madre/2)
madre(martha, brianramiroaguilarascencio).
madre(martha, emilio).
madre(martha, santiago).
madre(martha, daniela).
madre(mercedes, martha).
madre(beatriz, daniel).
madre(beatriz, karen).
madre(beatriz, migue).
madre(socorro, beatriz).
madre(socorro, jaime).
madre(socorro, patricia).
madre(socorro, leticia).
madre(socorro, monica).
madre(rosy, regina).
madre(rosy, karime).
madre(rosy, america).
madre(karen, mateo).
madre(viridiana, majito).
madre(viridiana, emiliano).
madre(monica, braulio).
madre(monica, mariana).
madre(monica, paulina).Línea Paterna (padre/2)
padre(daniel, brianramiroaguilarascencio).
padre(daniel, emilio).
padre(daniel, daniela).
padre(daniel, santiago).
padre(pedro, daniel).
padre(carlos, martha).
padre(migue, emiliano).
padre(migue, majito).
padre(marco, braulio).
padre(marco, paulina).
padre(damian, mateo).Registro de Edades (edad/2)
edad(martha, 46).
edad(daniel, 47).
edad(migue, 43).
edad(karen, 39).
edad(beatriz, 69).
edad(socorro, 88).
edad(pedro, 76).
edad(carlos, 78).
edad(patricia, 60).
edad(leticia, 58).
edad(jaime, 56).
edad(monica, 50).
edad(viridiana, 31).
edad(emiliano, 14).
edad(emilio, 14).
edad(daniela, 18).
edad(brianramiroaguilarascencio, 23).
edad(majito, 9).
edad(mateo, 2).
edad(santiago, 12).
edad(america, 12).
edad(regina, 10).
edad(damian, 31).
edad(braulio, 24).
edad(mariana, 19).
edad(paulina, 17).
edad(karime, 19).
edad(marco, 60).
edad(mercedes, 67).
edad(rosy, 50).Reglas Lógicas de Hermandad
Las siguientes reglas permiten verificar si cuatro individuos distintos (H1, H2, H3 y H4) comparten la misma madre o el mismo padre garantizando que no se trate de la misma persona mediante operadores de desigualdad (\=):
Regla por Vínculo Materno
hermano(H1, H2, H3, H4) :-
madre(M, H1),
madre(M, H2),
madre(M, H3),
madre(M, H4),
H1 \= H2,
H1 \= H3,
H1 \= H4,
H2 \= H3,
H2 \= H4,
H3 \= H4.Regla por Vínculo Paterno
hermano(H1, H2, H3, H4) :-
padre(P, H1),
padre(P, H2),
padre(P, H3),
padre(P, H4),
H1 \= H2,
H1 \= H3,
H1 \= H4,
H2 \= H3,
H2 \= H4,
H3 \= H4.