7 research outputs found

    Proceedings of the Fourth Russian Finnish Symposium on Discrete Mathematics

    Get PDF

    Proceedings of the Fourth Russian Finnish Symposium on Discrete Mathematics

    Get PDF

    Understanding and Enhancing CDCL-based SAT Solvers

    Get PDF
    Modern conflict-driven clause-learning (CDCL) Boolean satisfiability (SAT) solvers routinely solve formulas from industrial domains with millions of variables and clauses, despite the Boolean satisfiability problem being NP-complete and widely regarded as intractable in general. At the same time, very small crafted or randomly generated formulas are often infeasible for CDCL solvers. A commonly proposed explanation is that these solvers somehow exploit the underlying structure inherent in industrial instances. A better understanding of the structure of Boolean formulas not only enables improvements to modern SAT solvers, but also lends insight as to why solvers perform well or poorly on certain types of instances. Even further, examining solvers through the lens of these underlying structures can help to distinguish the behavior of different solving heuristics, both in theory and practice. The first issue we address relates to the representation of SAT formulas. A given Boolean satisfiability problem can be represented in arbitrarily many ways, and the type of encoding can have significant effects on SAT solver performance. Further, in some cases, a direct encoding to SAT may not be the best choice. We introduce a new system that integrates SAT solving with computer algebra systems (CAS) to address representation issues for several graph-theoretic problems. We use this system to improve the bounds on several finitely-verified conjectures related to graph-theoretic problems. We demonstrate how our approach is more appropriate for these problems than other off-the-shelf SAT-based tools. For more typical SAT formulas, a better understanding of their underlying structural properties, and how they relate to SAT solving, can deepen our understanding of SAT. We perform a largescale evaluation of many of the popular structural measures of formulas, such as community structure, treewidth, and backdoors. We investigate how these parameters correlate with CDCL solving time, and whether they can effectively be used to distinguish formulas from different domains. We demonstrate how these measures can be used as a means to understand the behavior of solvers during search. A common theme is that the solver exhibits locality during search through the lens of these underlying structures, and that the choice of solving heuristic can greatly influence this locality. We posit that this local behavior of modern SAT solvers is crucial to their performance. The remaining contributions dive deeper into two new measures of SAT formulas. We first consider a simple measure, denoted “mergeability,” which characterizes the proportion of input clauses pairs that can resolve and merge. We develop a formula generator that takes as input a seed formula, and creates a sequence of increasingly more mergeable formulas, while maintaining many of the properties of the original formula. Experiments over randomly-generated industrial-like instances suggest that mergeability strongly negatively correlates with CDCL solving time, i.e., as the mergeability of formulas increases, the solving time decreases, particularly for unsatisfiable instances. Our final contribution considers whether one of the aforementioned measures, namely backdoor size, is influenced by solver heuristics in theory. Starting from the notion of learning-sensitive (LS) backdoors, we consider various extensions of LS backdoors by incorporating different branching heuristics and restart policies. We introduce learning-sensitive with restarts (LSR) backdoors and show that, when backjumping is disallowed, LSR backdoors may be exponentially smaller than LS backdoors. We further demonstrate that the size of LSR backdoors are dependent on the learning scheme used during search. Finally, we present new algorithms to compute upper-bounds on LSR backdoors that intrinsically rely upon restarts, and can be computed with a single run of a SAT solver. We empirically demonstrate that this can often produce smaller backdoors than previous approaches to computing LS backdoors

    Making Presentation Math Computable

    Get PDF
    This Open-Access-book addresses the issue of translating mathematical expressions from LaTeX to the syntax of Computer Algebra Systems (CAS). Over the past decades, especially in the domain of Sciences, Technology, Engineering, and Mathematics (STEM), LaTeX has become the de-facto standard to typeset mathematical formulae in publications. Since scientists are generally required to publish their work, LaTeX has become an integral part of today's publishing workflow. On the other hand, modern research increasingly relies on CAS to simplify, manipulate, compute, and visualize mathematics. However, existing LaTeX import functions in CAS are limited to simple arithmetic expressions and are, therefore, insufficient for most use cases. Consequently, the workflow of experimenting and publishing in the Sciences often includes time-consuming and error-prone manual conversions between presentational LaTeX and computational CAS formats. To address the lack of a reliable and comprehensive translation tool between LaTeX and CAS, this thesis makes the following three contributions. First, it provides an approach to semantically enhance LaTeX expressions with sufficient semantic information for translations into CAS syntaxes. Second, it demonstrates the first context-aware LaTeX to CAS translation framework LaCASt. Third, the thesis provides a novel approach to evaluate the performance for LaTeX to CAS translations on large-scaled datasets with an automatic verification of equations in digital mathematical libraries. This is an open access book

    From Legos and Logos to Lambda: A Hypothetical Learning Trajectory for Computational Thinking

    Get PDF
    This thesis utilizes design-based research to examine the integration of computational thinking and computer science into the Finnish elementary mathematics syllabus. Although its focus is on elementary mathematics, its scope includes the perspectives of students, teachers and curriculum planners at all levels of the Finnish school curriculum. The studied artifacts are the 2014 Finnish National Curriculum and respective learning solutions for computer science education. The design-based research (DBR) mandates educators, developers and researchers to be involved in the cyclic development of these learning solutions. Much of the work is based on an in-service training MOOC for Finnish mathematics teachers, which was developed in close operation with the instructors and researchers. During the study period, the MOOC has been through several iterative design cycles, while the enactment and analysis stages of the 2014 Finnish National Curriculum are still proceeding.The original contributions of this thesis lie in the proposed model for teaching computational thinking (CT), and the clariïŹcation of the most crucial concepts in computer science (CS) and their integration into a school mathematics syllabus. The CT model comprises the successive phases of abstraction, automation and analysis interleaved with the threads of algorithmic and logical thinking as well as creativity. Abstraction implies modeling and dividing the problem into smaller sub-problems, and automation making the actual implementation. Preferably, the process iterates in cycles, i.e., the analysis feeds back such data that assists in optimizing and evaluating the eïŹƒciency and elegance of the solution. Thus, the process largely resembles the DBR design cycles. Test-driven development is also recommended in order to instill good coding practices.The CS fundamentals are function, variable, and type. In addition, the control ïŹ‚ow of execution necessitates control structures, such as selection and iteration. These structures are positioned in the learning trajectories of the corresponding mathematics syllabus areas of algebra, arithmetic, or geometry. During the transition phase to the new syllabus, in-service mathematics teachers can utilize their prior mathematical knowledge to reap the beneïŹts of ‘near transfer’. Successful transfer requires close conceptual analogies, such as those that exist between algebra and the functional programming paradigm.However, the integration with mathematics and the utilization of the functional paradigm are far from being the only approaches to teaching computing, and it might turn out that they are perhaps too exclusive. Instead of the grounded mathematics metaphor, computing may be perceived as basic literacy for the 21st century, and as such it could be taught as a separate subject in its own right

    Making Presentation Math Computable

    Get PDF
    This Open-Access-book addresses the issue of translating mathematical expressions from LaTeX to the syntax of Computer Algebra Systems (CAS). Over the past decades, especially in the domain of Sciences, Technology, Engineering, and Mathematics (STEM), LaTeX has become the de-facto standard to typeset mathematical formulae in publications. Since scientists are generally required to publish their work, LaTeX has become an integral part of today's publishing workflow. On the other hand, modern research increasingly relies on CAS to simplify, manipulate, compute, and visualize mathematics. However, existing LaTeX import functions in CAS are limited to simple arithmetic expressions and are, therefore, insufficient for most use cases. Consequently, the workflow of experimenting and publishing in the Sciences often includes time-consuming and error-prone manual conversions between presentational LaTeX and computational CAS formats. To address the lack of a reliable and comprehensive translation tool between LaTeX and CAS, this thesis makes the following three contributions. First, it provides an approach to semantically enhance LaTeX expressions with sufficient semantic information for translations into CAS syntaxes. Second, it demonstrates the first context-aware LaTeX to CAS translation framework LaCASt. Third, the thesis provides a novel approach to evaluate the performance for LaTeX to CAS translations on large-scaled datasets with an automatic verification of equations in digital mathematical libraries. This is an open access book

    Arithmetic, Logic, Syntax and MathCheck

    No full text
    MathCheck is a web-based tool for checking all steps of solutions to mathematics, logic and theoretical computer science problems, instead of checking just the final answers. It can currently deal with seven problem types related to arithmetic, logic, and syntax. Although MathCheck does have some ability to perform symbolic computation, checking is mostly based on testing with many combinations of the values of the variables in question. This introduces a small risk of failure of detection of errors, but also significantly widens the scope of problems that can be dealt with and facilitates providing a concrete counter-example when the student’s solution is incorrect. So MathCheck is primarily a feedback tool, not an assessment tool. MathCheck is more faithful to established mathematical notation than most programs. Special attention has been given to rigorous processing of undefined expressions, such as division by zero. To make this possible, in addition to the two truth values “false” and “true”, it uses a third truth value “undefined”.peerReviewe
    corecore