From 68d3d080fa1b5f5b150e3c015c0eda75da1281ef Mon Sep 17 00:00:00 2001
From: Etienne Kneuss <ekneuss@gmail.com>
Date: Thu, 20 Aug 2015 14:25:42 +0200
Subject: [PATCH] Re-order failed tests in steps: after 10, 50 and then every
 500

It used to be extremely bad: if the interesting failing test is the last
one (of 300), CEGISLike would test 1000*300 times before ordering it to
make it first.

Now we assume that interesting tests are discovered early.
---
 src/main/scala/leon/synthesis/rules/CEGISLike.scala           | 2 +-
 src/regression/scala/leon/regression/repair/RepairSuite.scala | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/main/scala/leon/synthesis/rules/CEGISLike.scala b/src/main/scala/leon/synthesis/rules/CEGISLike.scala
index c76a59bbb..03feccf9e 100644
--- a/src/main/scala/leon/synthesis/rules/CEGISLike.scala
+++ b/src/main/scala/leon/synthesis/rules/CEGISLike.scala
@@ -723,7 +723,7 @@ abstract class CEGISLike[T <% Typed](name: String) extends Rule(name) {
 
         var n = 1
         def allInputExamples() = {
-          if (n % 1000 == 0) {
+          if (n == 10 || n == 50 || n % 500 == 0) {
             baseExampleInputs = baseExampleInputs.sortBy(e => -failedTestsStats(e))
           }
           n += 1
diff --git a/src/regression/scala/leon/regression/repair/RepairSuite.scala b/src/regression/scala/leon/regression/repair/RepairSuite.scala
index 8ea0f2424..1b5bd1012 100644
--- a/src/regression/scala/leon/regression/repair/RepairSuite.scala
+++ b/src/regression/scala/leon/regression/repair/RepairSuite.scala
@@ -18,7 +18,7 @@ class RepairSuite extends regression.LeonTestSuite {
     "Compiler1.scala"   -> "desugar",
     "Heap4.scala"       -> "merge",
     "ListEasy.scala"    -> "pad",
-    //"List1.scala"       -> "pad",
+    "List1.scala"       -> "pad",
     "Numerical1.scala"  -> "power",
     "MergeSort2.scala"  -> "merge"
   )
-- 
GitLab