diff --git a/cp-demo/PaperExamples.scala b/cp-demo/PaperExamples.scala
index 858d93de1bfbb849ee11c9425d06f18ed70f467d..64320c89cc4fd04241ecc402c26ed49165e9b721 100644
--- a/cp-demo/PaperExamples.scala
+++ b/cp-demo/PaperExamples.scala
@@ -63,6 +63,19 @@ object PaperExamples extends App {
   println("satSolve(something sat)", satSolve(List(List(-1, 2, 3), List(1, -2, 4), List(-3, -4))))
   println("satSolve(something unsat)", satSolve(List(List(1, 2), List(1, -2), List(-1, 2), List(-1, -2))))
 
+  @spec def divides(i : Int, j : Int) : Boolean = i * (j / i) == j
+  @spec def noneDivides(from : Int, j : Int) : Boolean = {
+    if(from == j) {
+      true
+    } else {
+      !divides(from, j) && noneDivides(from+1, j)
+    }
+  }
+  @spec def isPrime(i : Int) : Boolean = (i >= 2 && noneDivides(2, i))
+
+  val primes = (isPrime(_:Int)) minimizing((x:Int) => x) findAll
+
+  primes.take(25).foreach(println(_))
 
   @spec object SendMoreMoney {
     sealed abstract class Letter