Prolog - Como saber si un numero es primo en ProLog?

   
Vista:

Como saber si un numero es primo en ProLog?

Publicado por Hide (2 intervenciones) el 08/02/2015 16:39:30
Buenas a todos, estaba buscando por Internet como saber si un numero es primo pues estoy empezando en prolog y aun no le pillo bien. Buscando encontré esto:

cicloP(N,A,S):-A>N,S is 0,!.
cicloP(N,A,S):- N mod A=:=0,A=\=N,A1 is A+1,cicloP(N,A1,Sm),S is Sm+A,!.
cicloP(N,A,S):- A1 is A+1,cicloP(N,A1,Sm),S is Sm.
perfect(N):-cicloP(N,1,T),T=:=N.
verifPrimo(N):-cicloP(N,1,T),T=:=1;N=:=1.

Me funciona pero no entiendo bien que es el Sm, que valor tiene o que función cumple en la función, si alguien pudiera explicármelo estaría muy agradecido.

Gracias de antemano ^^
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
información
Otras secciones de LWP con contenido de Prolog
- Código fuente de Prolog
- Cursos de Prolog
- Temas de Prolog
información
Códigos de Prolog
- Juego Tres en raya
- Juego Rummy
- Tateti o tres en ralla