Pub Date : 2021-02-02DOI: 10.3233/978-1-58603-929-5-289
K. Sakallah
Symmetry is at once a familiar concept (we recognize it when we see it!) and a profoundly deep mathematical subject. At its most basic, a symmetry is some transformation of an object that leaves the object (or some aspect of the object) unchanged. For example, a square can be transformed in eight different ways that leave it looking exactly the same: the identity “do-nothing” transformation, 3 rotations, and 4 mirror images (or reflections). In the context of decision problems, the presence of symmetries in a problem’s search space can frustrate the hunt for a solution by forcing a search algorithm to fruitlessly explore symmetric subspaces that do not contain solutions. Recognizing that such symmetries exist, we can direct a search algorithm to look for solutions only in non-symmetric parts of the search space. In many cases, this can lead to significant pruning of the search space and yield solutions to problems which are otherwise intractable. This chapter explores the symmetries of Boolean functions, particularly the symmetries of their conjunctive normal form (CNF) representations. Specifically, it examines what those symmetries are, how to model them using the mathematical language of group theory, how to derive them from a CNF formula, and how to utilize them to speed up CNF SAT solvers.
{"title":"Symmetry and Satisfiability","authors":"K. Sakallah","doi":"10.3233/978-1-58603-929-5-289","DOIUrl":"https://doi.org/10.3233/978-1-58603-929-5-289","url":null,"abstract":"Symmetry is at once a familiar concept (we recognize it when we see it!) and a profoundly deep mathematical subject. At its most basic, a symmetry is some transformation of an object that leaves the object (or some aspect of the object) unchanged. For example, a square can be transformed in eight different ways that leave it looking exactly the same: the identity “do-nothing” transformation, 3 rotations, and 4 mirror images (or reflections). In the context of decision problems, the presence of symmetries in a problem’s search space can frustrate the hunt for a solution by forcing a search algorithm to fruitlessly explore symmetric subspaces that do not contain solutions. Recognizing that such symmetries exist, we can direct a search algorithm to look for solutions only in non-symmetric parts of the search space. In many cases, this can lead to significant pruning of the search space and yield solutions to problems which are otherwise intractable. This chapter explores the symmetries of Boolean functions, particularly the symmetries of their conjunctive normal form (CNF) representations. Specifically, it examines what those symmetries are, how to model them using the mathematical language of group theory, how to derive them from a CNF formula, and how to utilize them to speed up CNF SAT solvers.","PeriodicalId":250589,"journal":{"name":"Handbook of Satisfiability","volume":"30 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2021-02-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129821800","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2021-02-02DOI: 10.3233/978-1-58603-929-5-569
Fabrizio Altarelli, R. Monasson, G. Semerjian, F. Zamponi
This chapter surveys a part of the intense research activity that has been devoted by theoretical physicists to the study of randomly generated k-SAT instances. It can be at first sight surprising that there is a connection between physics and computer science. However low-temperature statistical mechanics concerns precisely the behaviour of the low-lying configurations of an energy landscape, in other words the optimization of a cost function. Moreover the ensemble of random k-SAT instances exhibit phase transitions, a phenomenon mostly studied in physics (think for instance at the transition between liquid and gaseous water). Besides the introduction of general concepts of statistical mechanics and their translations in computer science language, the chapter presents results on the location of the satisfiability transition, the detailed picture of the satisfiable regime and the various phase transitions it undergoes, and algorithmic issues for random k-SAT instances.
{"title":"Connections to Statistical Physics","authors":"Fabrizio Altarelli, R. Monasson, G. Semerjian, F. Zamponi","doi":"10.3233/978-1-58603-929-5-569","DOIUrl":"https://doi.org/10.3233/978-1-58603-929-5-569","url":null,"abstract":"This chapter surveys a part of the intense research activity that has been devoted by theoretical physicists to the study of randomly generated k-SAT instances. It can be at first sight surprising that there is a connection between physics and computer science. However low-temperature statistical mechanics concerns precisely the behaviour of the low-lying configurations of an energy landscape, in other words the optimization of a cost function. Moreover the ensemble of random k-SAT instances exhibit phase transitions, a phenomenon mostly studied in physics (think for instance at the transition between liquid and gaseous water). Besides the introduction of general concepts of statistical mechanics and their translations in computer science language, the chapter presents results on the location of the satisfiability transition, the detailed picture of the satisfiable regime and the various phase transitions it undergoes, and algorithmic issues for random k-SAT instances.","PeriodicalId":250589,"journal":{"name":"Handbook of Satisfiability","volume":"46 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2021-02-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121383567","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 1900-01-01DOI: 10.3233/978-1-58603-929-5-3
J. Franco, J. Martin
A secure server in a secure distributed information system isolates interaction from terminals to specific personal vaults including and to only those personal vaults, creating a "virtual logon". The secure server includes a secure connection server coupled to the system and to a vault deposit server having personal vaults in which user specific vault processes execute on dedicated encrypted data, after authentication of the user by a vault supervisor. The supervisor forwards vault process results to the user through the browser.
{"title":"A History of Satisfiability","authors":"J. Franco, J. Martin","doi":"10.3233/978-1-58603-929-5-3","DOIUrl":"https://doi.org/10.3233/978-1-58603-929-5-3","url":null,"abstract":"A secure server in a secure distributed information system isolates interaction from terminals to specific personal vaults including and to only those personal vaults, creating a \"virtual logon\". The secure server includes a secure connection server coupled to the system and to a vault deposit server having personal vaults in which user specific vault processes execute on dedicated encrypted data, after authentication of the user by a vault supervisor. The supervisor forwards vault process results to the user through the browser.","PeriodicalId":250589,"journal":{"name":"Handbook of Satisfiability","volume":"46 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115943817","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 1900-01-01DOI: 10.3233/978-1-58603-929-5-403
E. Dantsin, E. Hirsch
There are many algorithms for testing satisfiability — how to evaluate and compare them? It is common (but still disputable) to identify the efficiency of an algorithm with its worst-case complexity. From this point of view, asymptotic upper bounds on the worst-case running time and space is a criterion for evaluation and comparison of algorithms. In this chapter we survey ideas and techniques behind satisfiability algorithms with the currently best upper bounds. We also discuss some related questions: “easy” and “hard” cases of SAT, reducibility between various restricted cases of SAT, the possibility of solving SAT in subexponential time, etc. In Section 12.1 we define terminology and notation used throughout the chapter. Section 12.2 addresses the question of which special cases of SAT are polynomial-time tractable and which ones remain NP-complete. The first nontrivial upper bounds for testing satisfiability were obtained for algorithms that solve k-SAT; such algorithms also form the core of general SAT algorithms. Section 12.3 surveys the currently fastest algorithms for k-SAT. Section 12.4 shows how to use bounds for k-SAT to obtain the currently best bounds for SAT. Section 12.5 addresses structural questions like “what else happens if k-SAT is solvable in time 〈. . .〉?”. Finally, Section 12.6 summarizes the currently best bounds for the main cases of the satisfiability problem.
{"title":"Worst-Case Upper Bounds","authors":"E. Dantsin, E. Hirsch","doi":"10.3233/978-1-58603-929-5-403","DOIUrl":"https://doi.org/10.3233/978-1-58603-929-5-403","url":null,"abstract":"There are many algorithms for testing satisfiability — how to evaluate and compare them? It is common (but still disputable) to identify the efficiency of an algorithm with its worst-case complexity. From this point of view, asymptotic upper bounds on the worst-case running time and space is a criterion for evaluation and comparison of algorithms. In this chapter we survey ideas and techniques behind satisfiability algorithms with the currently best upper bounds. We also discuss some related questions: “easy” and “hard” cases of SAT, reducibility between various restricted cases of SAT, the possibility of solving SAT in subexponential time, etc. In Section 12.1 we define terminology and notation used throughout the chapter. Section 12.2 addresses the question of which special cases of SAT are polynomial-time tractable and which ones remain NP-complete. The first nontrivial upper bounds for testing satisfiability were obtained for algorithms that solve k-SAT; such algorithms also form the core of general SAT algorithms. Section 12.3 surveys the currently fastest algorithms for k-SAT. Section 12.4 shows how to use bounds for k-SAT to obtain the currently best bounds for SAT. Section 12.5 addresses structural questions like “what else happens if k-SAT is solvable in time 〈. . .〉?”. Finally, Section 12.6 summarizes the currently best bounds for the main cases of the satisfiability problem.","PeriodicalId":250589,"journal":{"name":"Handbook of Satisfiability","volume":"4 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116430468","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 1900-01-01DOI: 10.3233/978-1-58603-929-5-505
Daniel Kroening
ion of the Concrete Semantics: Intuition Concrete Semantics 〈 (P(X→ R),⊆),F ,Q,qin,qout ,X,→, f , ı 〉 Galois connection (P(X→ R),⊆) −−→ ←−− α γ (L,v) L is a set of machine-representable “properties” of the variables. Example L = {x is even, y is odd or negative, x≥y ⇒ x = 2i} γ(ψ) is the meaning of an abstract “property” ψ. α(φ) encodes a sound approximation of φ, the most precise one. v corresponds to entailment between “properties”, and abstracts ⊆. Grégoire Sutre Software Verification Abstract Interpretation INF555’09 28 / 100 Abstraction of the Concrete Semantics: Intuition Concrete Semantics 〈 (P(X→ R),⊆),F ,Q,qin,qout ,X,→, f , ı 〉 Galois connection (P(X→ R),⊆) −−→ ←−− α γ (L,v) L is a set of machine-representable “properties” of the variables. Example L = {x is even, y is odd or negative, x≥y ⇒ x = 2i} γ(ψ) is the meaning of an abstract “property” ψ. α(φ) encodes a sound approximation of φ, the most precise one. v corresponds to entailment between “properties”, and abstracts ⊆. Grégoire Sutre Software Verification Abstract Interpretation INF555’09 28 / 100ion of the Concrete Semantics: Intuition Concrete Semantics 〈 (P(X→ R),⊆),F ,Q,qin,qout ,X,→, f , ı 〉 Galois connection (P(X→ R),⊆) −−→ ←−− α γ (L,v) L is a set of machine-representable “properties” of the variables. Example L = {x is even, y is odd or negative, x≥y ⇒ x = 2i} γ(ψ) is the meaning of an abstract “property” ψ. α(φ) encodes a sound approximation of φ, the most precise one. v corresponds to entailment between “properties”, and abstracts ⊆. Grégoire Sutre Software Verification Abstract Interpretation INF555’09 28 / 100 Abstract Semantics Induced by a Galois Connection Consider a data flow instance A = 〈 (L,v),F ,Q,qin,qout ,X,→, f , ı 〉 and a Galois connection (L,v) −−→ ←−− α γ (L,v). Definition The abstract data flow instance A induced by A and (L,v) −−→ ←−− α γ (L,v) is A = 〈 (L,v),F ,Q,qin,qout ,X,→, f , ı 〉 where: F = L mon −−→ L f = λop . f ] op ı = α(ı)Semantics Induced by a Galois Connection Consider a data flow instance A = 〈 (L,v),F ,Q,qin,qout ,X,→, f , ı 〉 and a Galois connection (L,v) −−→ ←−− α γ (L,v). Definition The abstract data flow instance A induced by A and (L,v) −−→ ←−− α γ (L,v) is A = 〈 (L,v),F ,Q,qin,qout ,X,→, f , ı 〉 where: F = L mon −−→ L f = λop . f ] op ı = α(ı) Recall that f ] op = α ◦ fop ◦ γ is the best abstraction of fop. Grégoire Sutre Software Verification Abstract Interpretation INF555’09 29 / 100 Correctness of Induced Abstract Data Flow Analysis Extension of Galois Connections to Functions For any set Q and Galois connection (L,v) −−→ ←−− α γ (L,v), we have (Q → L,v) −−→ ←−− α γ (Q → L,v) where: α(a) = λq . α(a(q)) γ(b) = λq . γ(b(q)) Theorem (Correctness of Induced Abstract Forward Analysis) For any data flow instance A and Galois connection (L,v) −−→ ←−− α γ (L,v), the induced abstract data flow instance A satisfies: −−→ MFP (A) v γ (−−→ MFP ( A )) α (−−→ MFP (A) ) v −−→ MFP ( A ) −−−→ MOP (A) v γ (−−−→ MOP ( A )) α (−−−→ MOP (A) ) v −−−→
{"title":"Software Verification","authors":"Daniel Kroening","doi":"10.3233/978-1-58603-929-5-505","DOIUrl":"https://doi.org/10.3233/978-1-58603-929-5-505","url":null,"abstract":"ion of the Concrete Semantics: Intuition Concrete Semantics 〈 (P(X→ R),⊆),F ,Q,qin,qout ,X,→, f , ı 〉 Galois connection (P(X→ R),⊆) −−→ ←−− α γ (L,v) L is a set of machine-representable “properties” of the variables. Example L = {x is even, y is odd or negative, x≥y ⇒ x = 2i} γ(ψ) is the meaning of an abstract “property” ψ. α(φ) encodes a sound approximation of φ, the most precise one. v corresponds to entailment between “properties”, and abstracts ⊆. Grégoire Sutre Software Verification Abstract Interpretation INF555’09 28 / 100 Abstraction of the Concrete Semantics: Intuition Concrete Semantics 〈 (P(X→ R),⊆),F ,Q,qin,qout ,X,→, f , ı 〉 Galois connection (P(X→ R),⊆) −−→ ←−− α γ (L,v) L is a set of machine-representable “properties” of the variables. Example L = {x is even, y is odd or negative, x≥y ⇒ x = 2i} γ(ψ) is the meaning of an abstract “property” ψ. α(φ) encodes a sound approximation of φ, the most precise one. v corresponds to entailment between “properties”, and abstracts ⊆. Grégoire Sutre Software Verification Abstract Interpretation INF555’09 28 / 100ion of the Concrete Semantics: Intuition Concrete Semantics 〈 (P(X→ R),⊆),F ,Q,qin,qout ,X,→, f , ı 〉 Galois connection (P(X→ R),⊆) −−→ ←−− α γ (L,v) L is a set of machine-representable “properties” of the variables. Example L = {x is even, y is odd or negative, x≥y ⇒ x = 2i} γ(ψ) is the meaning of an abstract “property” ψ. α(φ) encodes a sound approximation of φ, the most precise one. v corresponds to entailment between “properties”, and abstracts ⊆. Grégoire Sutre Software Verification Abstract Interpretation INF555’09 28 / 100 Abstract Semantics Induced by a Galois Connection Consider a data flow instance A = 〈 (L,v),F ,Q,qin,qout ,X,→, f , ı 〉 and a Galois connection (L,v) −−→ ←−− α γ (L,v). Definition The abstract data flow instance A induced by A and (L,v) −−→ ←−− α γ (L,v) is A = 〈 (L,v),F ,Q,qin,qout ,X,→, f , ı 〉 where: F = L mon −−→ L f = λop . f ] op ı = α(ı)Semantics Induced by a Galois Connection Consider a data flow instance A = 〈 (L,v),F ,Q,qin,qout ,X,→, f , ı 〉 and a Galois connection (L,v) −−→ ←−− α γ (L,v). Definition The abstract data flow instance A induced by A and (L,v) −−→ ←−− α γ (L,v) is A = 〈 (L,v),F ,Q,qin,qout ,X,→, f , ı 〉 where: F = L mon −−→ L f = λop . f ] op ı = α(ı) Recall that f ] op = α ◦ fop ◦ γ is the best abstraction of fop. Grégoire Sutre Software Verification Abstract Interpretation INF555’09 29 / 100 Correctness of Induced Abstract Data Flow Analysis Extension of Galois Connections to Functions For any set Q and Galois connection (L,v) −−→ ←−− α γ (L,v), we have (Q → L,v) −−→ ←−− α γ (Q → L,v) where: α(a) = λq . α(a(q)) γ(b) = λq . γ(b(q)) Theorem (Correctness of Induced Abstract Forward Analysis) For any data flow instance A and Galois connection (L,v) −−→ ←−− α γ (L,v), the induced abstract data flow instance A satisfies: −−→ MFP (A) v γ (−−→ MFP ( A )) α (−−→ MFP (A) ) v −−→ MFP ( A ) −−−→ MOP (A) v γ (−−−→ MOP ( A )) α (−−−→ MOP (A) ) v −−−→ ","PeriodicalId":250589,"journal":{"name":"Handbook of Satisfiability","volume":"68 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134581847","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 1900-01-01DOI: 10.3233/978-1-58603-929-5-245
D. Achlioptas
Satisfiability has received a great deal of study as the canonical NP-complete problem. In the last twenty years a significant amount of this effort has been devoted to the study of randomly generated satisfiability instances and the performance of different algorithms on them. Historically, the motivation for studying random instances has been the desire to understand the hardness of “typical” instances. In fact, some early results suggested that deciding satisfiability is “easy on average”. Unfortunately, while “easy” is easy to interpret, “on average” is not. One of the earliest and most often quoted results for satisfiability being easy on average is due to Goldberg [Gol79]. In [FP83], though, Franco and Paull pointed out that the distribution of instances used in the analysis of [Gol79] is so greatly dominated by “very satisfiable” formulas that if one tries truth assignments completely at random, the expected number of trials until finding a satisfying one is O(1). Alternatively, Franco and Paull pioneered the analysis of random instances of k-SAT, i.e., asking the satisfiability question for random kCNF formulas (defined precisely below). Among other things, they showed [FP83] that for all k ≥ 3 the DPLL algorithm needs an exponential number of steps to report all cylinders of solutions of such a formula, or that no solutions exist.
{"title":"Random Satisfiability","authors":"D. Achlioptas","doi":"10.3233/978-1-58603-929-5-245","DOIUrl":"https://doi.org/10.3233/978-1-58603-929-5-245","url":null,"abstract":"Satisfiability has received a great deal of study as the canonical NP-complete problem. In the last twenty years a significant amount of this effort has been devoted to the study of randomly generated satisfiability instances and the performance of different algorithms on them. Historically, the motivation for studying random instances has been the desire to understand the hardness of “typical” instances. In fact, some early results suggested that deciding satisfiability is “easy on average”. Unfortunately, while “easy” is easy to interpret, “on average” is not. One of the earliest and most often quoted results for satisfiability being easy on average is due to Goldberg [Gol79]. In [FP83], though, Franco and Paull pointed out that the distribution of instances used in the analysis of [Gol79] is so greatly dominated by “very satisfiable” formulas that if one tries truth assignments completely at random, the expected number of trials until finding a satisfying one is O(1). Alternatively, Franco and Paull pioneered the analysis of random instances of k-SAT, i.e., asking the satisfiability question for random kCNF formulas (defined precisely below). Among other things, they showed [FP83] that for all k ≥ 3 the DPLL algorithm needs an exponential number of steps to report all cylinders of solutions of such a formula, or that no solutions exist.","PeriodicalId":250589,"journal":{"name":"Handbook of Satisfiability","volume":"77 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131762603","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}