Using theory that all integers can be represented in the form 6k+i for integer k, i=−1, 0, 1, 2, 3, 4 with 2 dividing (6k + 0), (6k + 2), (6k + 4) and 3 dividing (6k + 3)
(defun LM:Primep ( n / m u )
(and (/= n 1)
(or (= n 2) (= n 7)
(not
(or
(zerop (rem n 2))
(zerop (rem n 3))
(zerop (rem (setq u (sqrt n)) 1))
(progn
(setq i 0.0)
(while
(and (<= (setq m (+ (* 6.0 (setq i (1+ i))) 1.0)) u)
(/= 0 (rem n m))
(/= 0 (rem n (- m 2.0)))
)
)
(or (zerop (rem n m))
(zerop (rem n (- m 2.0)))
)
)
)
)
)
)
)