Spelling suggestions: "subject:"SAT solver""
1 |
A Formal Approach to Concurrent Error Detection in FPGA LUTsBergstra, Jameson P. 10 1900 (has links)
In this thesis we discuss a formal approach to the design of concurrent error detection (CED) logic in field-programmable gate arrays (FPGAs). Single event upsets (SEUs) occurring in look-up table (LUT) configuration bits are considered as the fault model. Our approach involves representing the LUT network of the design implemented in the FPGA with constraints to model the presence of SEUs as a boolean formula in conjunctive normal form. A quantified boolean formula (QBF) based approach to designing CED logic based on parity check codes is found to be infeasible for designs of a realistic size. It is shown that a satisfiability (SAT) solver can be used to find variable assignments that indicate which circuit outputs can be corrupted by upset events in the specified fault model. An algorithm is presented to automatically generate a parity check code, which will identify with one clock cycle detection latency a malfunction caused by an SEU. The resulting parity check logic can be verified using a SAT solver and it is shown to require fewer LUT resources than duplication for most circuits. / Master of Applied Science (MASc)
|
2 |
Análise da distribuição do número de operações de resolvedores SAT / Distribution\'s analysis of operations\'s number of SAT solversReis, Poliana Magalhães 28 February 2012 (has links)
No estudo da complexidade de problemas computacionais destacam-se duas classes conhecidas como P e NP. A questao P=NP e um dos maiores problemas nao resolvidos em Ciencia da Compu- tacao teorica e Matematica contemporanea. O problema SAT foi o primeiro problema reconhecido como NP-completo e consiste em verificar se uma determinada formula da logica proposicional clas- sica e ou nao satisfazivel. As implementacoes de algoritmos para resolver problemas SAT sao conhe- cidas como resolvedores SAT (SAT Solvers). Existem diversas aplicacoes em Ciencia da Computacao que podem ser realizadas com SAT Solvers e com outros resolvedores de problemas NP-completos que podem ser reduzidos ao SAT como por exemplo problemas de coloracao de grafos, problemas de agendamento e problemas de planejamento. Dentre os mais eficientes algoritmos para resolvedores de SAT estao Sato, Grasp, Chaff, MiniSat e Berkmin. O Algoritmo Chaff e baseado no Algoritmo DPLL o qual existe a mais de 40 anos e e a estrategia mais utilizada para os Sat Solvers. Essa dissertacao apresenta um estudo aprofundado do comportamento do zChaff (uma implementacao muito eficiente do Chaff) para saber o que esperar de suas execucoes em geral . / In the study of computational complexity stand out two classes known as P and NP. The question P = NP is one of the greatest unsolved problems in theoretical computer science and contemporary mathematics. The SAT problem was first problem recognized as NP-complete and consists to check whether a certain formula of classical propositional logic is satisfiable or not. The implementations of algorithms to solve SAT problems are known as SAT solvers. There are several applications in computer science that can be performed with SAT solvers and other solvers NP- complete problems can be reduced to SAT problems such as graph coloring, scheduling problems and planning problems. Among the most efficient algorithms for SAT solvers are Sato, Grasp, Chaf, MiniSat and Berkmin. The Chaff algorithm is based on the DPLL algorithm which there is more than 40 years and is the most used strategy for Sat Solvers. This dissertation presents a detailed study of the behavior of zChaff (a very efficient implementation of the Chaff) to know what to expect from their performance in general.
|
3 |
Análise da distribuição do número de operações de resolvedores SAT / Distribution\'s analysis of operations\'s number of SAT solversPoliana Magalhães Reis 28 February 2012 (has links)
No estudo da complexidade de problemas computacionais destacam-se duas classes conhecidas como P e NP. A questao P=NP e um dos maiores problemas nao resolvidos em Ciencia da Compu- tacao teorica e Matematica contemporanea. O problema SAT foi o primeiro problema reconhecido como NP-completo e consiste em verificar se uma determinada formula da logica proposicional clas- sica e ou nao satisfazivel. As implementacoes de algoritmos para resolver problemas SAT sao conhe- cidas como resolvedores SAT (SAT Solvers). Existem diversas aplicacoes em Ciencia da Computacao que podem ser realizadas com SAT Solvers e com outros resolvedores de problemas NP-completos que podem ser reduzidos ao SAT como por exemplo problemas de coloracao de grafos, problemas de agendamento e problemas de planejamento. Dentre os mais eficientes algoritmos para resolvedores de SAT estao Sato, Grasp, Chaff, MiniSat e Berkmin. O Algoritmo Chaff e baseado no Algoritmo DPLL o qual existe a mais de 40 anos e e a estrategia mais utilizada para os Sat Solvers. Essa dissertacao apresenta um estudo aprofundado do comportamento do zChaff (uma implementacao muito eficiente do Chaff) para saber o que esperar de suas execucoes em geral . / In the study of computational complexity stand out two classes known as P and NP. The question P = NP is one of the greatest unsolved problems in theoretical computer science and contemporary mathematics. The SAT problem was first problem recognized as NP-complete and consists to check whether a certain formula of classical propositional logic is satisfiable or not. The implementations of algorithms to solve SAT problems are known as SAT solvers. There are several applications in computer science that can be performed with SAT solvers and other solvers NP- complete problems can be reduced to SAT problems such as graph coloring, scheduling problems and planning problems. Among the most efficient algorithms for SAT solvers are Sato, Grasp, Chaf, MiniSat and Berkmin. The Chaff algorithm is based on the DPLL algorithm which there is more than 40 years and is the most used strategy for Sat Solvers. This dissertation presents a detailed study of the behavior of zChaff (a very efficient implementation of the Chaff) to know what to expect from their performance in general.
|
4 |
SAT-based answer set programmingLierler, Yuliya 29 September 2010 (has links)
Answer set programming (ASP) is a declarative programming paradigm oriented towards difficult combinatorial search problems. Syntactically, ASP programs look like Prolog programs, but solutions are represented in ASP by sets of atoms, and not by substitutions, as in Prolog. Answer set systems, such as Smodels, Smodelscc, and DLV, compute answer sets of a given program in the sense of the answer set (stable model) semantics. This is different from the functionality of Prolog systems, which determine when a given query is true relative to a given logic program. ASP has been applied to many areas of science and technology, from the design of a decision support system for the Space Shuttle to graph-theoretic problems arising in zoology and linguistics. The "native" answer set systems mentioned above are based on specialized search procedures. Usually these procedures are described fairly informally with the use of pseudocode. We propose an alternative approach to describing algorithms of answer set solvers. In this approach we specify what "states of computation" are, and which transitions between states are allowed. In this way, we define a directed graph such that every execution of a procedure corresponds to a path in this graph. This allows us to model algorithms of answer set solvers by a mathematically simple and elegant object, graph, rather than a collection of pseudocode statements. We use this abstract framework to describe and prove the correctness of the answer set solver Smodels, and also of Smodelscc, which enhances the former using learning and backjumping techniques. Answer sets of a tight program can be found by running a SAT solver on the program's completion, because for such a program answer sets are in a one-to-one correspondence with models of completion. SAT is one of the most widely studied problems in computational logic, and many efficient SAT procedures were developed over the last decade. Using SAT solvers for computing answer sets allows us to take advantage of the advances in the SAT area. For a nontight program it is still the case that each answer set corresponds to a model of program's completion but not vice versa. We show how to modify the search method typically used in SAT solvers to allow testing models of completion and employ learning to utilize testing information to guide the search. We develop a new SAT-based answer set solver, called Cmodels, based on this idea. We develop an abstract graph based framework for describing SAT-based answer set solvers and use it to represent the Cmodels algorithm and to demonstrate its correctness. Such representations allow us to better understand similarities and differences between native and SAT-based answer set solvers. We formally compare the Smodels algorithm with a variant of the Cmodels algorithm without learning. Abstract frameworks for describing native and SAT-based answer set solvers facilitate the development of new systems. We propose and implement the answer set solver called SUP that can be seen as a combination of computational ideas behind Cmodels and Smodels. Like Cmodels, solver SUP operates by computing a sequence of models of completion of the given program, but it does not form the completion. Instead, SUP runs the Atleast algorithm, one of the main building blocks of the Smodels procedure. Both systems Cmodels and SUP, developed in this dissertation, proved to be competitive answer set programming systems. / text
|
5 |
Test generation and animation based on object-oriented specifications.Krieger, Matthias 09 December 2011 (has links) (PDF)
The goal of this thesis is the development of support for test generation and animation based on object-oriented specifications. We aim particularly to take advantage of state-of-the-art satisfiability solving techniques by using an appropriate representation of object-oriented data. While automated test generation seeks a large set of data to execute an implementation on, animation performs computations that comply with a specification based on user-provided input data. Animation is a valuable technique for validating specifications.As a foundation of this work, we present clarifications and a partial formalization of the Object Constraint Language (OCL) as well as some extensions in order to allow for test generation and animation based on OCL specifications.For test generation, we have implemented several enhancements to HOL-TestGen, a tool built on top of the Isabelle theorem proving system that generates tests from specifications in Higher-Order Logic (HOL). We show how SMT solvers can be used to solve various types of constraints in HOL and present a modular approach to case splitting for deriving test cases. The latter facilitates the introduction of splitting rules that are tailored to object-oriented specifications.For animation, we implemented the tool OCLexec for animating OCL specifications. OCLexec generates from operation contracts corresponding Java implementations that call an SMT-based constraint solver at runtime.
|
6 |
Efficient Reasoning Techniques for Large Scale Feature ModelsMendonca, Marcilio January 2009 (has links)
In Software Product Lines (SPLs), a feature model can be used to represent the
similarities and differences within a family of software systems. This allows
describing the systems derived from the product line as a unique combination of
the features in the model. What makes feature models particularly appealing is
the fact that the constraints in the model prevent incompatible features from
being part of the same product.
Despite the benefits of feature models, constructing and maintaining these models
can be a laborious task especially in product lines with a large number of
features and constraints. As a result, the study of automated techniques to
reason on feature models has become an important research topic in the SPL
community in recent years. Two techniques, in particular, have significant
appeal for researchers: SAT solvers and Binary Decision Diagrams (BDDs). Each
technique has been applied successfully for over four decades now to tackle
many practical combinatorial problems in various domains. Currently, several
approaches have proposed the compilation of feature models to specific logic
representations to enable the use of SAT solvers and BDDs.
In this thesis, we argue that several critical issues related to the use of SAT
solvers and BDDs have been consistently neglected. For instance, satisfiability
is a well-known NP-complete problem which means that, in theory, a SAT solver
might be unable to check the satisfiability of a feature model in a feasible
amount of time. Similarly, it is widely known that the size of BDDs can become
intractable for large models. At the same time, we currently do not know
precisely whether these are real issues when feature models, especially large
ones, are compiled to SAT and BDD representations.
Therefore, in our research we provide a significant step forward in the
state-of-the-art by examining deeply many relevant properties of the feature
modeling domain and the mechanics of SAT solvers and BDDs and the sensitive
issues related to these techniques when applied in that domain. Specifically, we
provide more accurate explanations for the space and/or time (in)tractability of
these techniques in the feature modeling domain, and enhance the algorithmic
performance of these techniques for reasoning on feature models. The
contributions of our work include the proposal of novel heuristics to reduce the
size of BDDs compiled from feature models, several insights on the construction
of efficient domain-specific reasoning algorithms for feature models, and
empirical studies to evaluate the efficiency of SAT solvers in handling very
large feature models.
|
7 |
Efficient Reasoning Techniques for Large Scale Feature ModelsMendonca, Marcilio January 2009 (has links)
In Software Product Lines (SPLs), a feature model can be used to represent the
similarities and differences within a family of software systems. This allows
describing the systems derived from the product line as a unique combination of
the features in the model. What makes feature models particularly appealing is
the fact that the constraints in the model prevent incompatible features from
being part of the same product.
Despite the benefits of feature models, constructing and maintaining these models
can be a laborious task especially in product lines with a large number of
features and constraints. As a result, the study of automated techniques to
reason on feature models has become an important research topic in the SPL
community in recent years. Two techniques, in particular, have significant
appeal for researchers: SAT solvers and Binary Decision Diagrams (BDDs). Each
technique has been applied successfully for over four decades now to tackle
many practical combinatorial problems in various domains. Currently, several
approaches have proposed the compilation of feature models to specific logic
representations to enable the use of SAT solvers and BDDs.
In this thesis, we argue that several critical issues related to the use of SAT
solvers and BDDs have been consistently neglected. For instance, satisfiability
is a well-known NP-complete problem which means that, in theory, a SAT solver
might be unable to check the satisfiability of a feature model in a feasible
amount of time. Similarly, it is widely known that the size of BDDs can become
intractable for large models. At the same time, we currently do not know
precisely whether these are real issues when feature models, especially large
ones, are compiled to SAT and BDD representations.
Therefore, in our research we provide a significant step forward in the
state-of-the-art by examining deeply many relevant properties of the feature
modeling domain and the mechanics of SAT solvers and BDDs and the sensitive
issues related to these techniques when applied in that domain. Specifically, we
provide more accurate explanations for the space and/or time (in)tractability of
these techniques in the feature modeling domain, and enhance the algorithmic
performance of these techniques for reasoning on feature models. The
contributions of our work include the proposal of novel heuristics to reduce the
size of BDDs compiled from feature models, several insights on the construction
of efficient domain-specific reasoning algorithms for feature models, and
empirical studies to evaluate the efficiency of SAT solvers in handling very
large feature models.
|
8 |
Synthesis of Neural Networks using SAT SolversWarpe, Ludvig, Johnson Palm, August January 2023 (has links)
Artificial neural networks (ANN) have found extensive use in solving real-world problems in recent years, where their exceptional information processing is the main advantage. Facing increasingly complex problems, there is a need to improve their information processing. In this thesis, we explore new ways of synthesizing ANNs by reducing the synthesis problem to the Boolean satisfiability problem (SAT) that is, the problem of determining whether a given Boolean formula is satisfiable. Also known as the SAT problem, it aims to determine if there exists such a combination of Boolean variables in a propositional formula for which the formula evaluates to true. We derived a general formula in conjunctive normal form (CNF) representing the synthesis of a neural network. Given randomly generated datasets, we were able to construct CNF formulas whose satisfying assignments encode neural networks consistent with the datasets. These formulas were run through an off-the-shelf SAT solver, where the outputted models simulated the synthesis of neural networks consistent with the datasets. The experiments conducted in this thesis showed that our method had the ability to produce feed-forward neural networks of varying sizes consistent with randomly generated datasets of binary strings.
|
9 |
FPGA Based Complete SAT SolverKannan, Sai Surya January 2022 (has links)
No description available.
|
10 |
SAT en Parallèle / Parallel SAT solvingSzczepanski, Nicolas 12 December 2017 (has links)
La thèse porte sur la résolution des problèmes de satisfaisabilité booléenne (SAT) dans un cadre massivement parallèle. Le problème SAT est largement utilisé pour résoudre des problèmes combinatoires de première importance comme la vérification formelle de matériels et de logiciels, la bio-informatique, la cryptographie, la planification et l’ordonnancement de tâches. Plusieurs contributions sont apportées dans cette thèse. Elles vont de la conception d’algorithmes basés sur les approches « portfolio » et « diviser pour mieux régner », à l’adaptation de modèles de programmation parallèle, notamment hybride (destinés à des architectures à mémoire partagée et distribuée), à SAT, en passant par l’amélioration des stratégies de résolution. Ce travail de thèse a donné lieu à plusieurs contributions dans des conférences internationales du domaine ainsi qu’à plusieurs outils (open sources) de résolution des problèmes SAT, compétitifs au niveau international. / This thesis deals with propositional satisfiability (SAT) in a massively parallel setting. The SAT problem is widely used for solving several combinatorial problems (e.g. formal verification of hardware and software, bioinformatics, cryptography, planning, scheduling, etc.). The first contribution of this thesis concerns the design of efficient algorithms based on the approaches « portfolio » and « divide and conquer ». Secondly, an adaptation of several parallel programming models including hybrid (parallel and distributed computing) to SAT is proposed. This work has led to several contributions to international conferences and highly competitive distributed SAT solvers.
|
Page generated in 0.091 seconds