Implement the concept of Normalizing rules
Normalizing rules are rules that: 1) always help synthesis 2) are commutative 3) should be applied as early as possible Here we apply normalizing rules explicitly before all other rules, and in a deterministic order. This should dramatically reduce the search space in cases where such rules apply. Note that rules that are said to be normalizing should never fail once instantiated.
Showing
- src/main/scala/leon/synthesis/Heuristics.scala 1 addition, 1 deletionsrc/main/scala/leon/synthesis/Heuristics.scala
- src/main/scala/leon/synthesis/ParallelSearch.scala 15 additions, 7 deletionssrc/main/scala/leon/synthesis/ParallelSearch.scala
- src/main/scala/leon/synthesis/Rules.scala 8 additions, 1 deletionsrc/main/scala/leon/synthesis/Rules.scala
- src/main/scala/leon/synthesis/SimpleSearch.scala 15 additions, 5 deletionssrc/main/scala/leon/synthesis/SimpleSearch.scala
- src/main/scala/leon/synthesis/Synthesizer.scala 1 addition, 1 deletionsrc/main/scala/leon/synthesis/Synthesizer.scala
- src/main/scala/leon/synthesis/rules/Assert.scala 1 addition, 1 deletionsrc/main/scala/leon/synthesis/rules/Assert.scala
- src/main/scala/leon/synthesis/rules/OnePoint.scala 1 addition, 1 deletionsrc/main/scala/leon/synthesis/rules/OnePoint.scala
- src/main/scala/leon/synthesis/rules/UnconstrainedOutput.scala 1 addition, 1 deletion...main/scala/leon/synthesis/rules/UnconstrainedOutput.scala
- src/main/scala/leon/synthesis/rules/UnusedInput.scala 1 addition, 1 deletionsrc/main/scala/leon/synthesis/rules/UnusedInput.scala
Please register or sign in to comment