Exploring Predictability of SAT/SMT Solvers Robert Brummayer Johannes Kepler University Linz, Austria [email protected]

Duckki Oe The University of Iowa Iowa City, Iowa, USA [email protected]

Aaron Stump The University of Iowa Iowa City, Iowa, USA [email protected]

Abstract This paper seeks to explore the predictability of SAT and SMT solvers in response to different kinds of changes to benchmarks. We consider both semantics-preserving and possibly semanticsmodifying transformations, and provide preliminary data about solver predictability. We also propose carrying learned theory lemmas over from an original run to runs on similar benchmarks, and show the benefits of this idea as a heuristic for improving predictability of SMT solvers.

1

Motivation

SAT and SMT (Satisfiability Modulo Theories) solvers have enjoyed tremendous performance improvements in the past ten years, increasing the automated-reasoning power available for applications like algorithmic verification, combinatorial design, planning, and others (e.g., [7, 5, 4]). Most work in the field has focused just on performance-oriented quality metrics for solvers. For example, the basic measure used in both the most recent (at the time of writing) SAT Competition and SMT Competition was simply the pair of the number of benchmarks solved and running time to solve them, compared in the natural lexicographic order (for the competitions mentioned, see, e.g., [1, 3]). While the SAT competition has also experimented recently with more complex measures, they are also centered on performance. In this paper, we propose another property to consider when evaluating solvers, namely predictability. While users certainly require and benefit from improvements to raw performance, anecdotal evidence from end users of solvers suggests that in some cases unpredictability is at least as significant a concern. For example, Steve Miller, Principal Software Engineer in the Advanced Technology Center of Rockwell Collins, reported in his keynote presentation at Midwest Verification Day 2009 that unpredictability is a significant issue for his team in incorporating SAT/SMT solvers into their verification workflow. Unpredictability is a problem because a small change to a model can lead to an enormous change in the amount of time to solve the resulting verification condition. If the amount of time is enormously longer, the verification may become infeasible or unacceptably delayed. If it is enormously shorter, engineers may doubt the result, questioning if an error elsewhere in the workflow has led to such different system behavior. It may improve the usability of such solvers to sacrifice a modest amount of performance for improved predictability. In this paper we provide a preliminary study of predictability of SAT (Section 2) and SMT (Section 3) solvers under small mutations of standard benchmarks. We use the standard deviation of solver times on a collection of mutants as a measure of variability. In the case of SMT solvers, we also propose and study a technique for heuristically improving predictability, by carrying over a selection of learned theory lemmas from the original run of the solver to the runs on the mutants.

2

Experiments with SAT Benchmarks

We survey how small changes to benchmarks affect the performance of SAT solvers. In particular, we evaluate the effects of semantics-preserving changes such as variable renaming and literal/clause reordering. Moreover, changes that may change the satisfiability status, e.g. adding resp. dropping arbitrary literals, are evaluated. The goal is to quantify the variability of solving times and to identify the effects of different types of variations. 1

Predictability of SAT/SMT Solvers

Type l c n lc nlc nlcx nlca

Brummayer, Oe, and Stump

Description literals in each clause are reordered clauses of the formula are reordered variable names are changed a combination of l and c variations a combination of n, l and c variations in addition to nlc, one literal of non-unary clause is changed (0.01% of chance) in addition to nlc, one literal is dropped from or added to clause (0.01% of chance) Figure 1: Types of variations

2.1

Methods

From the SAT competition 2009, 5 solvers and 13 benchmarks were chosen. The solvers are some of the highly ranked ones in each category, and the benchmarks are of easy to medium difficulty that could be solved in about 300 seconds from the industrial category of the competition. Those solvers and benchmarks are listed below with solving times: Benchmark ACG-10-5p0 AProVE09-07 AProVE09-17 AProVE09-20 countbitsrotate016 gss-14-s100 gus-md5-04 icbrt1 32 minand128 minandmaxor032 minxorminand032 minxorminand064 post-c32s-gcdm16-22

CirCUs 44.72 7.08 13.44 292.43 27.94 65.2 4.92 14.59 9.86 7.73 5.2 106.21 249.57

lysat 39.99 12.25 9.62 45.25 61.81 22.79 5.62 15.29 49.8 6.23 8.37 157.31 115.06

MiniSat 21.52 4.72 7.33 16.64 24.2 18.37 2.17 7.72 20.01 3.65 4.6 106.16 97.41

mxc-sat09 47.26 7.06 6.75 28.08 11.7 13.54 16.91 11.61 55.83 5.51 9.33 327.19 151.21

precosat 35.59 2.89 4.95 35.14 14.5 47.97 5.3 11.34 13.77 4.92 7.25 151.4 51.15

Types of variations We made random changes to the original in order to simulate situations in which users query similar, but not identical, formulas repeatedly. Seven types of variations were performed and summarized in Figure 1. The first five variations preserve the semantics of the original formula and do not change the satisfiability status of the formula. In contrast, the variations nlcx and nlca may change the satisfiability status. For the variation nlcx, 0.01% of all non-unary clauses are considered small and an arbitrary literal (of the existing variables) replaces one random literal of each affected clause. The variation nlca performs even more changes. In particular, the same number of binary and ternary clauses are changed with probability 0.01%. One literal is added to each of those binary clauses and one literal is dropped from each of those ternary clauses. Note that we tried to avoid some of the possible unrealistic changes. Unary clauses, the literal-clause ratio, and the lengths of clauses are left unchanged in order to keep the inherent difficulty level of the formula. Measure of Predictability For each type of variation and each benchmark, a random sample of 50 variations was generated and the solving times were recorded. Each solver has its own performance distribution over the same sample. For predictability, we only care about the spread of distribution or the variability of data. If the distribution of a solver is ”narrower“, we can say the solver is more predictable. 2

Predictability of SAT/SMT Solvers

Brummayer, Oe, and Stump

To statistically quantify variability, we used the standard deviation of solving times. Obviously, a ”small“ standard deviation indicates high predictability.

2.2

Empirical Results

Figure 2 summarizes the variabilities of solving times induced by the different types of variation. For each variation and each solver, the standard deviations of solving times for all benchmarks were collected. Each bar in the graphs summarizes the distribution of the 13 standard deviations for a given solver and a given variation. The gray box of each bar represents the range of the middle half values, which are considered typical values. The line in the middle of box marks the median value and the ”+” sign marks the average. The whiskers sticking out of box extend to adjacent values that are not farther away from the edge of the box than 1.5 times the height of the box. Small squares are values farther out than the adjacent values and considered outliers. The result for the variation l shows that all solvers have small variability compared to those under other types of variations. Note that the scale of the graph is smaller than the others. Interestingly, reordering literals affects the predictability of precosat more than other solvers. This could be easily avoided by sorting the literals inside the SAT solver. The outstandingly high value of CirCUs is for AProVE09-20. Notably, the solver showed less predictability over all variations of that particular benchmark. The results for the other semantics-preserving variations are almost the same. All solvers showed very similar behavior in general, except a few outliers. The other notable outlier, which belongs to mxc-sat09, is minxorminand064. Our experimental results suggest that any single type of variation, except for l, is sufficient to shuffle the performance of solvers without changing semantics. More experiments are necessary to generalize this observation to other benchmarks. The nlcx variation changed the variabilities for some benchmarks so that more outliers appear in the graphs. Interestingly, the highest outliers are all for post-c32s-gcdm16-22. However, the majority of benchmarks did not change the variability of solving times compared to the result for the variation type nlc. Interestingly, the nlca variation uniformly made the formula easier to solve and the solving times less variable across all solvers. At the same time, relative variability among solvers did not change much. Therefore, the graph looks similar to that of nlcx even if the scale of graph is different. Considering this variation, the highest outliers are all for AProVE09-20.

3

Experiments with SMT Benchmarks and Theory Lemmas

In this section, we explore mutation of SMT benchmarks, taken from the SMT-LIB library [2]. The following mutations are applied below with equal probability: (1) change the value of a real or integer constant; (2) swap operands of a predicate or function symbol, or logical connective; (3) change a predicate or function symbol, or logical connective, to one of the same type; (4) insert a logical negation; and (5) perform a local rewriting step to change a formula or a term to an equivalent one. Only (5) is semantics-preserving in general. The goal of this experiment is to assess the impact of inserting theory lemmas dumped from a run of the solver on the original benchmark, on mutations of that benchmark. The rationale for inserting learned theory lemmas as possibly improving performance and/or predictability is that learned theory lemmas represent information the solver found useful when solving the original benchmark. The idea is that this information may also prove useful when solving a similar benchmark. It is also possible that the learned lemmas will mitigate the effect of the mutation. Previous work by Whittemore et al. on reusing derived lemmas for SAT for a similar scenario (solving a sequence of related instances) requires tracking which lemmas are invalidated by changes in 3

Predictability of SAT/SMT Solvers

Brummayer, Oe, and Stump

Figure 2: The variabilities of solving times by different types of variation

4

Predictability of SAT/SMT Solvers

Brummayer, Oe, and Stump

the formula [6]. In contrast, theory lemmas are, by definition, formulas which are valid in the solver’s (possibly combined) background theory, without any other assumptions. Thus, it is always semanticspreserving to add a theory lemma, as it is always true modulo the theory, regardless of the rest of the benchmark formula. So no tracking is needed for theory lemmas (but would be needed for lemmas that follow from the input formula). We modified the two open-source SMT solvers CVC3 and OPENSMT to dump learned theory lemmas, with the helpful advice of the authors of those tools. We then perform the following test for selected benchmarks (discussed below), using a timeout of 1 minute and a memory limit of 1GB: 1. Run the solver on the original benchmark. If this times out, abort the rest of the test. 2. Run the lemma-dumping modified version of the solver to generate theory lemmas (all other runs use the unmodified solver). 3. Insert theory lemmas into the benchmark as additional assumptions to obtain a modified benchmark. Run the solver on this modified benchmark. 4. Generate 11 mutants from the original benchmark, using the above mutations. For these experiments, we allowed 4 changes to each benchmark. For all divisions exception QF RDL, we used 2 changes to formula structure, and 2 changes to term structure. For QF RDL, changes to the term structure tend to take the benchmark out of the syntactic class for difference logic, so for QF RDL we made 4 changes to the formula structure only. 5. Run the solver on each generated mutant. 6. Insert the lemmas dumped for the original benchmark into each mutant, and run the solver on each of the resulting benchmarks. Dumping theory lemmas. As mentioned, we modified CVC3 and OPENSMT to dump learned theory lemmas, following helpful advice from the authors of those tools. Early experiments showed that inserting all learned theory lemmas into benchmarks tends to overwhelm the solver. So we just dump 10% of the learned theory lemmas. For CVC3, we dumped every 10th learned lemma. For OPENSMT, we dumped the 10% of learned theory lemmas with at most 2 literals which had the highest activity (as measured by opensmt’s internal measure of activity). Certainly one could be interested to compare alternative methods for selecting theory lemmas to dump. However, this is scheduled as future work. OPENSMT does not normally learn theory lemmas outright (but rather, lemmas derived from theory lemmas by conflict analysis). We configured OPENSMT to learn theory lemmas of length at most 2, and kept that configuration for all runs of OPENSMT reported below. Benchmark selection. The tests below were performed on a selection of benchmarks used in SMTCOMP 2009 (see, e.g., [1] and earlier papers for more on SMT-COMP). The selection process used was the following. We are looking at several mature example divisions: QF UFIDL, QF AUFLIA, QF LIA, QF LRA, and QF RDL. CVC3 competed in all those divisions, while of these, opensmt competed just in QF LRA and QF RDL. For each solver and division in which it competed, we consider those benchmarks which it could solve in time between 1 second and 1 minute. A further issue we dealt with is that both SMT solvers sometimes introduce new symbols which make their way into theory lemmas. This is problematic, because the meanings and types of those symbols are not determined by the original benchmark. In the end, the approach we adopted was to try to translate away ites (term-level if-thenelse expressions) from benchmarks, since these seem to be the biggest (but not only) source of new symbols showing up in theory lemmas. CVC3 recently added a command-line option +liftITE that 5

Predictability of SAT/SMT Solvers

name LamportBakery14 LamportBakery15 OOO5 sorted list insert noalloc3 vhard8 OOO8 ibm cache full q unbounded12 sorted list insert noalloc5 OOO6 sorted list insert noalloc6 vhard5 ibm cache full q unbounded15 ibm cache full q unbounded14 vhard6 ibm cache full q unbounded17 ibm cache full q unbounded16 vhard16 vhard9 vhard18 vhard11

orig 3.26 2.19 3.16 4.86 2.01 3.71 4.19 4.74 3.22 7.03 0.49 2.85 4.04 0.85 7.78 4. 19.3 2.77 29.23 5.03

Brummayer, Oe, and Stump

orig+lem 6.1 2.22 2.56 4.52 7.75 8.57 6.07 4.48 6.43 4.42 1.08 2.36 4.16 2.16 19.83 4.04 120. 15.39 120. 31.53

L 44 58 62 61 306 40 49 93 40 239 85 81 35 138 114 35 2235 427 3151 760

˜ m 2.49 1.97 2.66 4.13 0.07 3.51 4.2 3.94 2.78 3.79 0.04 2.87 4.05 0.04 4.07 4.01 0.16 0.08 0.19 0.12

σm 0.4 0.29 0.37 0.37 0.01 0.51 0.24 0.44 0.41 1.4 0.01 0.92 0.75 0.01 2.04 0.74 0. 0.01 0. 0.85

˜l 2.46 1.93 2.55 4.34 0.66 3.62 5.47 4.36 3.99 4.26 0.15 2.24 4.13 0.27 2.27 4.04 7.43 0.95 13.08 1.79

σl 1.01 0.27 0.16 0.36 0.04 2.31 0.96 0.33 1.44 0.44 0.03 0.82 0.36 0.59 5.63 0.17 0.01 0.03 0.03 33.98(1)

m/l

σm /σl

1.02 1.05

1.05 2.23 1.03

1.32 1.15

3.15

1.2

1.12 2.06

1.06

4.3

Figure 3: Results for CVC3: QF UFIDL can be used to do this. In some cases, lifting ites results in an explosion in the size of the formula, crashing the translating invocation of CVC3. In such cases, we excluded the benchmarks from our sample. The test machine for the experiments was a lightly-loaded Intel Core Dual CPU at 1.2GHz, with 1.5GB physical memory.

3.1

Empirical Results name ParallelPrefixSum live blmc002 ParallelPrefixSum safe blmc008 FISCHER11-7-fair FISCHER6-10-fair

orig 2.25 9.57 99.89 69.24

orig+lem 2.21 9.49 15.67 41.13

L 2 6 180 293

˜ m 2.27 9.55 92.08 56.03

σm 0.04 0.59 47.59(1) 29.68

˜l 2.26 9.62 17.66 52.89

σl 0.04 0.56 4.59 23.86

m/l

σm /σl 1.01 1.04

1.32

1.24

Figure 4: Results for CVC3: QF LIA Figures 3 through 10 summarize the results of these experiments (Figures 6 through 10 are relegated to the appendix for space reasons). Each figure corresponds to a single division and a single solver, except that for typographic reasons, the results for OPENSMT on QF RDL are split over Figures 9 and 10. Each row in the table corresponds to a test on a single benchmark, as described above. All times are given in seconds. The headings in the figure are as follows: • name: the of the benchmark. • orig: the time for the (unmodified) solver to solve the benchmark. • orig+lem: the time for the solver to solve the modified version of the original benchmark, with theory lemmas inserted. • L: the number of lemmas produced by the run of the lemma-generating version of the solver. 6

Predictability of SAT/SMT Solvers

name storeinv t1 pp nf ai 00009 001 swap t1 pp nf ai 00009 007 pointer-safe-10 pointer-invalid-20 pointer-invalid-10 pointer-safe-15 qlock-bug-5 swap t1 pp nf ai 00009 002 pointer-invalid-15 qlock.base.5 qlock-mutex-5

orig 47.6 4.32 9.54 117.29 10.72 41.1 19.48 23.6 42.07 14.68 14.81

Brummayer, Oe, and Stump

orig+lem 16.19 8.31 2.87 38.92 1.17 28.25 5.7 18.33 10.88 12.45 7.31

L 11176 100 102 721 126 277 312 103 328 215 225

˜ m 0.13 4.34 5.2 68.36 4.65 20.78 17.86 23.61 21.64 12.77 12.73

σm 23.18 1.91 3.94 47.17(4) 4.7 27.07 37.84(1) 10.84 27.75 33.94(1) 38.35(1)

˜l 0.85 7.85 1.72 31.46 1.73 7.44 5.72 17.06 8.93 1.94 1.85

σl 7.74 3.53 3.65 32.88(1) 4.1 18.62 34.03(1) 7.84 28.76 33.49(1) 33.6(1)

m/l 2.68

σm /σl 2.99

1.76

1.08

1.97 1.67

1.14 1.45

1.37 1.7

1.38

Figure 5: Results for CVC3: QF AUFLIA ˜ the median of the times to solve the 11 generated mutants. • m: • σm : the standard deviation of those times. • ˜l: the median of the times to solve the 11 mutants with the same set of lemmas as above inserted into each mutant. • σl : the standard deviation of those times. • m/l: the ratio of total time to solve the 11 mutants to the total time to solve the 11 mutants with lemmas inserted. For readability, we only list this number (and similarly for the next column, for σm /σl ) for rows where we have no missing data, and if it is greater than 1. This quantity represents the speedup using lemmas, and so we view this as a relative performance metric. • σm /σl : the ratio of the above-defined standard deviations. We view this as a relative predictability metric. Missing data. We lose data in this experiment for timeouts and memory outs, indicated in parentheses with the standard deviation; and occasionally where mutation takes a benchmark out of the syntactic class for the division, indicated in square brackets with the standard deviation. The latter problem just occurs for OPENSMT on QF LRA, where the mutation occasionally creates divisions by zero. Some observations about the data in the figures are warranted. First, it is not generally the case that either m/l or σm /σl is improved by inserting theory lemmas. The ratio σm /σl (computed only for tests with no censored data) is greater than 1 for 36% of the 68 total benchmarks (including tests with censored data). Similarly, the ratio m/l is greater than 1 for 35 %. We can observe, however, that in some cases, one or the other, or both, measures are improved. For example, in Figure 3, the OOO5 benchmark shows a modest improvement in performance but a significant (> 2x) improvement in predictability. In some cases, such as sorted list insert noalloc5, predictability improves even with an overall decline in performance. We can also see that inserting theory lemmas back into the original benchmark, while sometimes resulting in a significant slowdown (e.g., around 2x for LamportBakery14 of Figure 3) can sometimes lead to big performance improvements: consider, for example, the results for FISCHER11-7-fair (Figure 4), where inserting theory lemmas leads to roughly a 6x speedup over the original benchmark; or for pointer-invalid-15 (Figure 5), with around a 4x speedup. So insertion of theory lemmas, while not generally helpful for performance or predictability, may have value as a heuristic for improving both. In our target use-model, a team making repeated calls to a solver can simply turn on “retain-lemmas” mode, and see if it improves performance or, over several 7

Predictability of SAT/SMT Solvers

Brummayer, Oe, and Stump

runs, predictability. If not, the heuristic can be turned off. But if so, it may improve the end-user’s experience for subsequent runs of the solver.

4

Conclusion and Future Work

We have considered preliminary data studying how various mutations to benchmarks affect the performance and reveal the predictability of SAT and SMT solvers, on collections of standard benchmarks. We have also considered one heuristic for improving predictability of SMT solvers, namely retaining learned theory lemmas from an original run to subsequent runs on similar benchmarks. This corresponds to a scenario where successive changes made by an end-user cause modest changes to the benchmark formula. For future work, a more informed model for mutation is required, to ensure that the proposed methods apply in real-world situations. For such a model, it would be very useful to have or to be able to generate a sequence of formulas from successive small modifications to a verification model or other applicationspecific structure. This will enable more accurate further studies of methods to measure and improve solver predictability. One possibility might be to consider benchmarks from the same benchmark family (for both the SAT and SMT experiments), since these should exhibit some similarities. For the SMT experiments, it would be interesting to test whether or not adding theory lemmas learned from a run of the SMT solver on one benchmark can improve predictability for other benchmarks from the same family. Similarly, it would be interesting to do more thorough exploration of which lemmas to carry over from one run to the next, and whether lemmas learned by one solver can improve predictability for another. Acknowledgments. Thanks to Clark Barrett and Roberto Bruttomesso for help modifying CVC3 and OPENSMT, respectively. Thanks also to Alberto Segre for consultation on statistics, and to Cesare Tinelli for discussion of the idea of considering predictability for SMT solvers.

References [1] Clark Barrett, Morgan Deters, Albert Oliveras, and Aaron Stump. Design and results of the 3rd annual satisfiability modulo theories competition (SMT-COMP 2007). International Journal on Artificial Intelligence Tools (IJAIT), 17(4):569–606, August 2008. [2] Clark Barrett, Silvio Ranise, Aaron Stump, and Cesare Tinelli. The Satisfiability Modulo Theories Library (SMT-LIB). www.SMT-LIB.org, 2008. [3] D. Berre and L. Simon. 55 Solvers in Vancouver: The SAT 2004 competition. In H. Hoos and D. Mitchell, editors, Proceedings of the International Conference on Theory and Applications of Satisfiability Testing (SAT), 2004. [4] E. Giunchiglia and M. Maratea. Planning as Satisfiability with Preferences. In Proceedings of the TwentySecond AAAI Conference on Artificial Intelligence., pages 987–992. AAAI Press, 2007. [5] S. Lahiri, S. Qadeer, and Z. Rakamaric. Static and Precise Detection of Concurrency Errors in Systems Code Using SMT Solvers. In A. Bouajjani and O. Maler, editors, Computer Aided Verification, 21st International Conference, CAV 2009. Proceedings, pages 509–524, 2009. [6] J. Whittemore, J. Kim, and K. Sakallah. Satire: A new incremental satisfiability engine. In Design Automation Conference, 2001. Proceedings, pages 542 – 545, 2001. [7] H. Zhang. Combinatorial designs by SAT solvers. In A. Biere, M. Heule, H. van Maaren, and T. Walsh, editors, Handbook of Satisfiability, volume 185 of Frontiers in Artificial Intelligence and Applications, chapter 17, pages 533–568. IOS Press, 2009.

8

Predictability of SAT/SMT Solvers

name sc-35.induction3 sc-15.induction uart-7.induction sc-12.induction p2-zenonumeric s6 uart-6.induction sc-14.induction reint to least.base pursuit-safety-7 sc-18.induction sc-10.induction uart-9.induction p-0-bucket s7 gasburner-prop3-16 gasburner-prop3-17 clocksynchro 3clocks.main invar.base p-driverlogNumeric s7 tgc io-safe-13 sc-24.induction clocksynchro 9clocks.main invar.base p4-zenonumeric s5 uart-8.base tgc io-safe-18 p6-zenonumeric s5 sc-8.induction2 simple startup 3nodes.abstract.induct tgc io-safe-20 simple startup 4nodes.missing.induct uart-24.induction sc-19.induction sc-21.induction3 uart-9.base synched.induction sc-32.induction3 uart-20.induction simple startup 5nodes.missing.induct simple startup 4nodes.abstract.induct

Brummayer, Oe, and Stump

orig 5.02 1.49 2.08 1.17 2.79 1.62 1.33 7.06 5.38 1.91 0.79 2.98 5.3 0.75 0.79 1.05 61.48 11.41 3.37 7.78 59.2 17.43 42. 65.28 3.76 22.71 68.34 2.65 18.58 2.12 12.72 39.64 3.36 4.4 13.01 7.36 76.84

orig+lem 120. 0.94 1.78 0.67 7.77 1.07 0.86 7.2 1.03 1.18 0.54 3.32 4.6 0.77 1.07 1.09 120. 6.6 1.93 7.72 90.93 15.73 13.5 120. 4.09 80.12 5.74 1.07 60.41 1.26 30.18 25.67 3.84 120. 29.44 3.29 120.

L 94 16 78 14 27 69 16 30 50 19 12 100 58 20 21 18 21 70 25 51 68 279 120 99 33 431 144 143 435 20 111 457 49 82 318 333 1048

˜ m 1.45 0.32 0.67 0.26 1.78 0.49 0.32 0.21 1.65 0.4 0.22 0.92 5.33 0.53 0.66 0.23 3.59 2.03 0.58 0.78 11.49 1.61 3.55 20.06 0.24 0.24 4.85 0.32 5.16 0.39 0.86 1.46 0.27 1.29 3.56 0.45 0.33

σm 2.72 0.54 0.67 0.4 0.4 0.51 0.5 0.79 8.9 0.76 0.26 1.04 0.04 19.63 34.16(1) 0.07 4.1 2.41 1.48 0.37 25.67 3.54 9.65 31.61(1) 1.7 0.09 15.38 0.1 6.02 0.84 32.94 5.02 2.46 2.26 4.18 0.17 0.13

Figure 6: Results for CVC3: QF LRA

A

More Results from SMT Experiments

9

˜l 1.48 0.33 0.64 0.27 3.23 0.53 0.3 0.23 0.58 0.41 0.24 1.09 4.74 0.63 0.72 0.27 6.59 2.83 0.7 0.94 12.33 4.44 4.8 22.37 0.34 0.47 4.96 0.4 5.22 0.44 0.96 5.28 0.29 1.32 3.74 0.61 0.83

σl 57.06(4) 0.36 0.66 0.24 1.54 0.32 0.32 34.31(1) 0.46 0.46 0.19 1.27 0.39 12.71 36.55(1) 0.24 32.75(1) 3.26 0.75 2.14 32.11 3.57 33.05(1) 43.77(3) 1.9 0.38 33.37(1) 0.18 18.92 0.5 14.68 16.33 34.17(1) 51.89(3) 10.54 0.47 0.32

m/l

σm /σl

1.24 1.05 1.23

1.5

1.07 1.29

1.56 1.56

6.22 1.31 1.14

19.28 1.64 1.35

1.1 1.46

1.54

1.42

1.95

1.32 1.94

1.69 2.24

1.65

Predictability of SAT/SMT Solvers

name fischer3-mutex-8 orb02 700 fischer6-mutex-6 abz6 800 orb07 330 orb05 700 fischer9-mutex-5 fischer3-mutex-9 fischer6-mutex-7 fischer9-mutex-6 fischer3-mutex-10 fischer6-mutex-8 abz5 1400 orb09 1100 abz5 1000 fischer3-mutex-12 fischer3-mutex-13 fischer3-mutex-11 orb04 850 orb04 1200 orb06 1200 orb05 1000 orb10 1100

orig 9.13 4.32 7.16 4.9 5.63 74.98 9.12 16.07 23.66 50.3 23.39 103.89 27.59 59.45 12.53 93.66 118.06 40.47 25.93 29.05 46.71 37.57 37.18

orig+lem 14.7 4.23 14.68 5.29 6.41 57.42 15.05 20.2 32.32 91.25 50.63 120. 120. 120. 21.89 120. 120. 119.12 42.75 120. 120. 120. 120.

Brummayer, Oe, and Stump

L 197 32 169 36 42 115 126 356 406 405 572 1209 64 84 59 1319 1734 902 53 63 78 62 68

˜ m 7.44 4.71 8.17 4.02 4.7 65.43 21.87 7.16 26.93 50.3 19.75 42.34 23.5 27.74 39.31 58.14 100.14 17.9 19.98 26.81 82.05 60.41 36.09

σm 2.54 0.16 4.3 0.21 0.42 23.57(3) 18.73 5.81 13.73 14.43 9.75 35.89(1) 2.16 17.18 10.57 28.9 44.77(3) 19.61 3.02 2.21 25.62 13.01 0.61

˜l 3.47 4.49 11.2 4.36 5.36 68.67 19. 6.54 28.67 66.48 5.11 45.87 120. 120. 29.32 10.82 16.17 9.07 42.59 120. 120. 120. 85.53

Figure 7: Results for CVC3: QF RDL

10

σl 4.18 0.23 4.85 0.23 0.42 15.15 9. 6.24 18.02 34.54(1) 16.36 38.81(2) 0.(11) 0.(11) 6.32 43.58(1) 48.22(3) 35.27(1) 10.21 0.(11) 4.77(10) 27.95(7) 18.52(3)

m/l 1.28 1.04

σm /σl

1.45 1.22

2.08

1.29

1.2

1.67

Predictability of SAT/SMT Solvers

name sc-10.induction pursuit-safety-10 p5-zenonumeric s5 pursuit-safety-11 uart-8.base sc-11.induction p-0-bucket s10 p-DepotsNum s8.msat uart-7.induction sc-12.induction uart-9.base pursuit-safety-13 tgc io-safe-18 clocksynchro 9clocks.main invar.base pursuit-safety-16 tgc io-safe-20 p-0-bucket s13 p7-driverlogNumeric s7 sc-15.induction uart-9.induction simple startup 3nodes.abstract.induct sc-14.induction sc-12.induction3 simple startup 4nodes.missing.induct sc-10.base pursuit-safety-15 sc-14.induction3 sc-18.induction p-2-bucket s11 simple startup 5nodes.missing.induct sc-12.base sc-19.induction p7-driverlogNumeric s8 sc-17.induction2 sc-19.induction2 simple startup 4nodes.abstract.induct opt1217–6 uart-13.base opt1217–11 sc-14.base sc-15.base

Brummayer, Oe, and Stump

orig 6.07 1.27 3.29 1.42 2.93 12.33 3.74 3.54 3.38 19.71 6.75 2.75 5.2 5.07 1.06 5.7 8. 5.23 15.12 7.72 8.81 39.51 11.55 12.17 14.21 1.67 13.74 110.77 26.33 55.16 32.94 90.19 13.03 70.35 60.03 50.11 45.69 47.2 57.04 74.98 94.18

orig+lem 7.55 1.36 3.66 1.65 4.12 8.77 4.42 2.57 3.06 11.25 8.34 3.01 3.13 6.4 2.5 7.15 6.24 12.96 42.9 9.21 9.02 30.79 13.79 15.59 13.08 2.25 22.94 116.39 24.54 46.07 33.58 114.56 30.67 54.6 120. 44.52 42.71 53.14 53.3 58.92 95.45

L 15 18 37 17 16 17 6 32 21 18 21 24 36 6 16 39 6 45 18 26 24 20 13 29 15 17 14 25 8 43 19 24 61 24 22 38 313 44 332 21 22

˜ m 0.2 0.54 3.26 0.66 3.32 0.22 6.14 1.86 0.15 0.24 5.01 1.02 3.06 0.41 1.62 4.88 12.61 2.19 0.3 0.22 0.21 0.28 0.31 0.28 7.03 1.58 0.35 0.38 25.81 0.38 14.3 0.39 2.42 0.38 0.48 0.28 7.43 17.96 7.48 29.43 45.51

σm 2.89 1.33 0.06 2.87 1.98 4.9 2.06 0.45 1.49 8.28 3.05 5.2 1.34 3.15[1] 12.63 1.88 3.13 1.51 17.62 3.3 0.6[1] 11.12 6.84 3.11[1] 3.95 9.62 12.87 44.05 1.52 10.74[1] 10.19 50.32(1) 4.97 27.86 45.44 2.83[1] 19.52 12.91 21.33 20.23 22.94

Figure 8: Results for opensmt: QF LRA

11

˜l 0.2 0.59 3.66 0.74 2.83 0.22 5.33 1.69 0.16 0.25 4.24 0.74 3. 0.53 1.75 4.36 10.93 2.39 0.31 0.21 0.19 0.28 0.3 0.29 7.96 1.57 0.35 0.37 25.28 0.39 18.71 0.38 2.53 0.38 0.43 0.28 5.15 17.7 6.79 36.85 34.34

σl 3.35 1.06 0.12 1.72 1.88 5.02 0.56 0.45 1.17 8.23 2.84 4.81 1.18 2.79[1] 20.28 2.38 5.03 2.27 18.03 2.91 0.52[1] 13.86 4.61 2.45[1] 4.67 11.97 10.9 35.59 2.01 11.17[1] 10.88 49.99(1) 15.52 28.62 47.49 3.38[1] 19.72 10.83 20.62 19.05 21.29

m/l

σm /σl

1.1

1.25

1.35 1.04

1.66 1.05

1.21 1.07 1.2 1.01 1.1 1.11

3.66 1.26 1.07 1.08 1.13

1.07

1.13

1.13

1.43

1.48

1.12 1.22

1.18 1.23

1.02

1.02 1.08 1.05 1.14

1.19 1.03 1.06 1.07

Predictability of SAT/SMT Solvers

name orb07 430 orb08 930 fischer3-mutex-12 fischer3-mutex-15 orb01 1200 skdmxa-3x3-6.base fischer3-mutex-14 abz6 943 orb10 900 fischer3-mutex-13 fischer9-mutex-8 skdmxa-3x3-7.base fischer6-mutex-9 abz7 500 orb09 900 orb10 1000 skdmxa-3x3-8.base orb06 1100 fischer3-mutex-16 orb04 1005 skdmxa-3x3-9.base fischer3-mutex-17 orb10 944 orb02 888 fischer9-mutex-9 fischer3-mutex-18 skdmxa-3x3-5.induction skdmxa-3x3-10.base fischer6-mutex-10

orig 0.56 4.63 3.79 6.36 0.88 8.02 4.49 3.29 2.5 4.73 5.4 9.42 6.6 5.76 6.77 3.62 12.29 2.02 8.16 27.42 14.87 10.14 14.39 3.56 10.56 13.05 28.12 19.6 7.65

Brummayer, Oe, and Stump

orig+lem 0.93 3.91 3.32 6.51 0.3 8.07 4.02 3.76 3.02 5.03 4.71 9.34 4.27 5.83 6.08 3.09 11.94 3.7 9.42 6.25 14.87 7.96 14.64 3.33 18.32 13.37 17.71 19.4 8.72

L 6 6 21 27 6 5 23 6 6 23 30 5 23 6 7 6 5 6 31 9 5 29 6 6 36 36 7 5 29

˜ m 0.34 1.56 0.83 1.99 0.35 8.31 1.37 0.38 8.93 1.24 1.72 10.26 1.47 5.7 3.36 1.03 12.95 0.81 2.08 5.26 16.14 2.21 2.33 0.37 3.22 2.89 19.72 19.71 2.76

σm 0.31 1.53 0.89 1.5 0.23 2.24 1.39 1.17 3.05 1.36 1.91 2.81 1.62 0.95 1.7 2.21 3.8 0.85 2.32 5.07 4.73 3.02 4.67 1.94 3.92 4.11 7.86 6.05 2.4

˜l 0.35 1.66 1.04 1.16 0.31 8.27 1.57 0.4 9.81 0.9 1.6 10.48 1.62 5.79 4.2 1.1 12.85 0.54 1.7 5.47 16.08 2.36 2.45 0.36 3.89 2.27 17.12 19.96 2.4

Figure 9: Results for opensmt: QF RDL

12

σl 0.42 5. 0.83 1.93 0.05 2.24 1.2 1.3 3.25 0.98 1.73 2.82 1.15 1.22 2.55 1.11 3.75 1.14 2.73 6.22[1] 4.69 2.34 6.32 2.78 3.32 3.82 7.06 6.05 2.81

m/l

σm /σl

1.01

1.06

1.42

4.51 1.15

1.24

1.38 1.1 1.4

1.17

1.98 1.01

1.01 1.11

1.28

1.01 1.14

1.18 1.07 1.11

Predictability of SAT/SMT Solvers

name fischer9-mutex-10 orb03 1100 orb07 397 abz5 1200 orb03 950 fischer3-mutex-19 skdmxa-3x3-11.base orb09 934 abz7 800 orb08 888 skdmxa-3x3-12.base fischer6-mutex-11 skdmxa-3x3-13.base fischer3-mutex-20 orb01 1100 fischer6-mutex-12 orb05 887 skdmxa-3x3-14.base skdmxa-3x3-5 fischer6-mutex-13 abz5 1234 skdmxa-3x3-6.induction skdmxa-3x3-15.base skdmxa-3x3-16.base fischer6-mutex-16 fischer9-mutex-11 fischer6-mutex-15 fischer6-mutex-14

orig 22.02 10.57 10.62 8.91 14.55 18.64 23.17 30.93 19.33 17.67 30. 12.54 34.69 19.34 21.69 43.47 7.7 43.51 32.3 30.86 30.29 48.16 56.2 75.21 108.07 54.97 83.54 106.9

Brummayer, Oe, and Stump

orig+lem 22.35 0.38 17.67 9.01 13.53 16.42 23.28 10.48 4.34 19. 30.1 26.58 35.08 24.25 18.04 25.85 17.2 43.06 40.95 52.75 17.22 33.19 55.89 75.66 120. 43.05 78.13 54.42

˜ m 6.04 0.4 0.66 0.47 11.96 2.6 25.02 0.52 3.63 4.52 31.34 3.3 35.56 2.03 1.19 6.04 0.42 45.87 27.94 8.69 0.38 35.92 57.54 73.81 34.07 16.96 20.37 17.41

L 45 8 6 7 7 43 5 9 6 8 5 35 5 42 8 52 8 5 39 54 9 9 5 5 73 65 70 67

σm 9.93 1.21 5.9 4.2 1.95 5.59 8.09 3.99 6.19 7.19 10.19 4.36 12.31 6.02 2.23 12.27 7.3 15.52 19.21 14.24 16.33 15.68 20.43 26.43 40.1 15.97 27.43 17.79

˜l 7.94 0.41 0.78 0.46 11.74 3.74 25.05 0.48 4.24 4.66 30.93 3.69 35.69 3.46 0.88 5.03 0.36 45.92 34.88 6.94 0.4 30.94 57.21 73.93 42.84 9.5 35.25 14.53

Figure 10: Results for opensmt: QF RDL

13

σl 4.99 0.59 7.12 4.09 3.18 5.08 8. 9.34 0.8 6.74 10.08 9.3 12.34 5.94 8.21 9.14 5.14 15.62 26.52 19.28 5.76 13.51 20.48 26.5 41.86(1) 19.75 28.53 19.82

m/l 1.4 1.83

σm /σl 1.98 2.03

1.02

1.02 1.09 1.01

1.61 1.07 1.01

7.69 1.06 1.01

1.01 1.14 1.37

1.34 1.42

2.68 1.01

2.83 1.16

Exploring Predictability of SAT/SMT Solvers

Conference, 2001. Proceedings, pages 542 – 545, 2001. [7] H. Zhang. Combinatorial designs by SAT solvers. In A. Biere, M. Heule, H. van Maaren, and T. Walsh, editors,. Handbook of Satisfiability, volume 185 of Frontiers in Artificial Intelligence and Applications, chapter 17, pages 533–568. IOS Press, 2009. 8 ...

164KB Sizes 0 Downloads 133 Views

Recommend Documents

Fixed vs. Random Temporal Predictability of Predation ...
partial support for the RAH model (Mirza etal. 2006; Pecor ... (2005) found support for the. RAH testing ..... Freeman and Company, New York, pp. 446– 447.

On the Predictability of Search Trends - Research at Google
Aug 17, 2009 - various business decisions such as budget planning, marketing ..... the major characteristics of the underlying time series are maintained.

Wind power predictability: comparative study of ...
By February 2007, wind power installed capacity in Portugal was 1747 MW with. 700 MW (13 parks) being telemeasured and 3273 MW already licensed. This growth follows the tendency throughout Europe, and many efforts have been made to produce good quali

MRM: Delivering Predictability and Service ...
Job's characteristics. Deadline. Price. Figure 1: Overview of MRM. an appropriate point on this curve based on the delay- tolerance of her job and her current wealth. This, in com- bination with deadline-based scheduling, ensures both predictable fin

Economic agents as imperfect problem solvers
review on imperfect information in macroeconomics and finance. ... 4Generally, reasoning processes are characterized in the literature as 'fact-free' learning ... 6Following Sims (2003) a large literature has studied the choice properties of ...... I

Economic agents as imperfect problem solvers
... (2015b)) and a decision over which information provider to use (Nimark and ...... least incentives to deliberate around the mean realization of yt, because that is ...... from plan choice in the Medicare Part D program,” The American Economic .

Graph Partitioning and Parallel Solvers: Has the ...
munity concerning the applicability of graph partitioning to the parallelization ... ware for partitioning graphs, motivated by parallel computing applications (eg.

Systemic Default and Return Predictability in the Stock ...
Nov 14, 2015 - Abstract. Using a structural model of default, we construct a measure of systemic default defined as the probability that many firms default at the same time. Our estimation accounts for correlations in defaults between firms through c

Regime Specific Predictability in Predictive Regressions
Jun 24, 2011 - using moderately small sample sizes and compares them with their asymptotic counterparts. .... represent correct decision frequencies evaluated as the number of times the pvalue of ... and T = 800 from the null DGP yt = 0.01 + ut. ....

Tail risk premia and return predictability - Duke Economics
component. All of these studies, however, rely on specific model structures and long time-span asymptotics for para- meter estimation and extraction of the state ...... Std. dev. 2.89. 2.15. 2.50. 4.83. 5.33. 19.68. 3.19. 2.04. 0.54. 0.05. 0.23. 0.72

The Quest for Efficient Boolean Satisfiability Solvers
A DPLL-based SAT solver is a relatively small piece of software. Many of the ...... Efficient SAT Solver," presented at 39th Design Automation Conference, 2001.

Economic agents as imperfect problem solvers
their optimal policy function and coming up with the optimal state-contingent plan of action.3 ... about the optimal action as a function of the underlying state. ..... a vector of infinite length, where the whole vector has a joint Gaussian ...... L

Economic agents as imperfect problem solvers
Processes have also been applied in machine learning over unknown functional relationships – both in terms of supervised (Rasmussen and Williams (2006)) and non-supervised (Bishop (2006)) learning. 7Following Sims (2003) a large literature has stud

Fostering Creative Problem Solvers - Empathy Map - Aug 15 2014.pdf ...
There was a problem previewing this document. Retrying... Download. Connect more apps... Try one of the apps below to open or edit this item. Fostering ...

Sundials/ML: interfacing with numerical solvers - ML Family Workshop
Sep 22, 2016 - 4. REFERENCES. [1] T. Bourke and M. Pouzet. Zélus: A synchronous language with ODEs. In HSCC, pages 113–118. ACM. Press, Apr. 2013.

Sundials/ML: interfacing with numerical solvers - ML Family Workshop
Sep 22, 2016 - [email protected]. Jun Inoue. National Institute of Advanced. Industrial Science and. Technology. [email protected]. Marc Pouzet. Univ. Pierre et Marie Curie. École normale supérieure,. PSL Research University. Inria Paris.

Evolution-induced Catastrophe and its Predictability
Statistically, monitoring the fluctuations of the governing stress field in a ... XIANG-CHU YIN,XUE-ZHONG CHEN,ZHI-PING SONG, and CAN YIU (1995),A New ...