Djamal Mohamed Sami Cherif

Matthieu Habet

" Py

De

Mohamed Matthieu Sami Py

Djamal Cherif

" Habet

National Conferences

Keywords: Artificial Intelligence, SAT, Max-SAT, Inference, Reasoning Acronyms ACC Almost Common Clauses ACIDS Average Conflict-Index Decision AI Artificial Intelligence ASP

At the heart of computer science and artificial intelligence, logic is often used as a powerful language to model and solve complex problems that arise in academia and in real-world applications. A well-known formalism in this context is the Satisfiability (SAT) problem which simply checks whether a given propositional formula in the form of a set of constraints, called clauses, can be satisfied. A natural optimization extension of this problem is Maximum Satisfiability (Max-SAT) which consists in determining the maximum number of clausal constraints that can be satisfied within the formula. In our work, we are interested in studying the power and limits of inference and resoning in the context of (Maximum) Satisfiability. Our first contributions revolve around investigating inference in SAT and Max-SAT solving. First, we study statistical inference within a Multi-Armed Bandit (MAB) framework for online selection of branching heuristics in SAT and we show that it can further enhance the efficiency of modern clause-learning solvers. Moreover, we provide further insights on the power of inference in Branch and Bound algorithms for Max-SAT solving through the property of UP-resilience. Our contributions also extend to SAT and Max-SAT proof theory. We particularly attempt to theoretically bridge the gap between SAT and Max-SAT inference.

Résumé

Au coeur de l'informatique et de l'intelligence artificielle, la logique est souvent utilisée comme un langage pour modéliser et résoudre des problèmes complexes issus du milieu académique ou d'applications industrielles. Un formalisme bien connu dans ce contexte est le problème de Satisfiabilité (SAT) qui vérifie simplement si une formule propositionnelle donnée sous la forme d'un ensemble de contraintes, appelées clauses, peut être satisfaite. Une extension naturelle de SAT en problème d'optimisation est la Satisfiabilité Maximum (Max-SAT), qui consiste à déterminer le nombre maximal de contraintes clausales pouvant être satisfaites dans la formule. Dans nos travaux, on s'intéresse à l'étude du pouvoir et des limites de l'inférence et du raisonnement dans le contexte de ces deux paradigmes. Nos premières contributions tournent autour de l'étude de l'inférence dans le cadre des algorithmes de résolution pour SAT et Max-SAT. Tout d'abord, nous étudions l'inférence statistique dans le cadre des solveurs modernes pour SAT qui sont basés sur l'apprentissage de clauses. On introduit un formalisme bandit manchot pour la sélection adaptative d'heuristiques de branchement et on montre qu'un tel mécanisme permet d'améliorer l'efficacité des solveurs modernes. De plus, nous investiguons minutieusement la puissance de l'inférence dans le cadre des algorithmes de type séparation et évaluation pour Max-SAT grâce à la propriété de l'UP-résilience. Nos contributions s'étendent également à la théorie des preuves pour SAT et Max-SAT, l'un de nos objectifs majeurs étant de combler le fossé théorique entre l'inférence SAT et Max-SAT.

Mots clés : Intelligence Artificielle, SAT, Max-SAT, Inférence, Raisonnement

Acknowledgement

First and foremost, I wish to thank all the members of the COALA team of the LIS laboratory who have kindly welcomed and supported me for more than 5 years. My experience in the COALA team started with a short internship during the first year of my master degree. I never imagined at the time that, 5 years later, I would be completing my PhD in the same team. This pleasant journey would not have been possible without the help and guidance of Prof. Djamal Habet, my PhD supervisor and head of the COALA team and of the computer science and interactions department of Aix-Marseille university. Prof. Habet have been my supervisor not only during this thesis but also during two previous internships in the COALA team. My achievements would not have been possible without his precious assistance, his dedicated involvement in every step of the way throughout these last years and his constant support, nurturing and understanding. More than a supervisor, Prof. Habet has been a life mentor who provided me with advice when I most needed it and always encouraged me to strive for the best.

I would also like to thank my PhD co-supervisor, Assoc. Prof. Richard Ostrowski, and my monitoring committee members, Prof. Philippe Jégou and Prof. Chu-Min Li, for their availability and helpful assistance. My sincere thanks also go to Prof. Cyril Terrioux and Dr. Matthieu Py for their invaluable contribution and for all the meaningful discussions that we had. I would also like to express my deepest appreciation to Prof. Carlos Ansótegui, Prof. Gilles Audemard, Prof. Felip Manyà and Prof. Christine Solnon who have kindly accepted to be members of my defense committee.

In addition, I would like to extend my sincere thanks to all the teaching staff of Aix-Marseille university and especially all the professors that taught me during my master degree. In particular, the funding of this thesis would not have been possible without the decisive role played by Prof. Nadia Creignou, head of the computer science and mathematics doctoral school, and Yvon Berland, former president of Aix-Marseille university. My teaching experience within Aix-Marseille university these last three years have also been fulfilling and I am very grateful for all the help I got for my senior colleagues.

Finally, I cannot begin to express my thanks to my family, especially my father, my mother and my sister, for always believing in me and for the strength they give me each day to thrive and strive forward. My heartfelt thanks also go to Insaf Tanazefti, Ridha Kerkeni, Soumaya Lahbib and all my friends who supported me and made every single day of my life livelier and more meaningful.

List of Algorithms

Introduction

Since ancient times, humans have always sought to understand the laws of thought and to formalize reasoning on factual knowledge. The emergence of computer science as a full-fledged field helped to deepen our understanding of automating reasoning through effective computation. One of the main challenges in this field is to simulate the learning and inference process that the human brain can naturally and intuitively perform. This led to the advent of Artificial Intelligence (AI) as a modern discipline aiming to further investigate how machines can simulate human intelligence. In his work on the psychology of judgment and decision-making [START_REF] Kahneman | Thinking, Fast and Slow[END_REF], Kahneman describes two different modes of thought, one which is governed with rational, controlled, and factual reasoning while another relies on an automatic, quite instinctive approach to judgment and decision making. These systems intuitively correspond to the two main branches of AI. The first branch, i.e., symbolic AI, relies on formal and logical reasoning through the manipulation of symbols used to represent knowledge while the second branch, i.e., numeric AI, relies on statistical and probabilistic techniques to infer information from plainly represented data. Our work in this dissertation mainly falls within the first branch of AI relying on symbolism but it also partly relies on techniques and formalisms that originate from numeric AI. As human society is constantly evolving, it is often confronted with different problems that arise in academia and in real-world applications. To give an example, checking whether there exists a valid bus route that visits each specific location once within a city is a typical problem that can arise in transportation. Another related problem is computing the shortest route that the bus can take among all the possible valid ones. Note how these problems can be very complex, typically when we consider a large set of locations to be visited. They are also of different nature as the former is a decision problem whose solution is either affirmative or negative while the latter is an optimization problem which requires computing the optimal route with respect to distance among all the valid ones. To solve such problems in the literature, we rely on well-established generic formalisms that can be used to model and solve problems of similar nature. One of the most common and natural ways to represent knowledge in symbolic AI is through logic as a highly expressive language. In particular, propositional logic is a simple yet powerful tool that enables to represent and deal with knowledge in the form of propositions, connected through logical operators [START_REF] Boole | An investigation of the laws of thought: on which are founded the mathematical theories of logic and probabilities[END_REF].

A well-known formalism in this context is the Satisfiability (SAT) problem which simply checks whether a given propositional formula in the form of a set of constraints can be satisfied [START_REF] Biere | Handbook of Satisfiability: Second Edition[END_REF]. The formula is defined over a set of boolean variables which can only have values True or False while the constraints take the form of clauses which can contain variables or their negation. SAT is at the heart of symbolic AI and complexity theory as it is the first problem shown to be NP-complete [START_REF] Cook | The Complexity of Theorem-Proving Procedures[END_REF]. This problem also gained particular interest for its wide range of applications and its powerful solving methods. In particular, the introduction of the Conflict Driven Clause Learning (CDCL) algorithm [START_REF] Marques-Silva | Conflict-Driven Clause Learning SAT Solvers[END_REF], which incorporates extensive learning during the search process, led to the emergence of highly competitive modern solvers able to deal with large formula containing millions of variables and clauses. Another formalism closely related to SAT is Maximum Satisfiability (Max-SAT) [START_REF] Bacchus | Maximum Satisfiabiliy[END_REF]. This problem is a natural optimization extension of SAT which consists in determining the maximum number of clausal constraints that can be satisfied in the formula. Max-SAT has many solving paradigms including Branch and Bound (BnB) algorithms [START_REF] Chu | MaxSAT, Hard and Soft Constraints[END_REF], which perform an exhaustive search relying heavily on inference rules, and SAT-based algorithms [START_REF] Bacchus | Maximum Satisfiabiliy[END_REF] which take advantage of the power of modern SAT solvers as decision engines. Our contributions in this manuscript revolve around these two problems. In particular, we are interested in studying the power and limits of inference and reasoning in the context of (Maximum) Satisfiability, both in theory and in practical solving.

Our first contribution falls within the scope of improving the efficiency of modern SAT solvers through incorporating stochastic reasoning formalisms originating from numeric AI and, more specifically, Reinforcement Learning (RL) [START_REF] Sutton | Reinforcement learning -an introduction[END_REF]. This well-known paradigm of machine learning focuses on how an autonomous agent should learn from its prior actions and is often studied through the lens of the Multi-Armed Bandit (MAB) problem. We specifically focus on an important component in CDCL solvers which is the branching heuristic (used to pick the next variable to branch on in the search tree) and we study whether statistical inference within a MAB framework can be incorporated into such solvers to perform adaptive selection of branching heuristics. We perform an extensive evaluation of different strategies to combine the two dominant branching heuristics in the state-ofthe-art, namely VSIDS [START_REF] Moskewicz | Chaff: Engineering an Efficient SAT Solver[END_REF] and CHB [START_REF] Hui Liang | Exponential Recency Weighted Average Branching Heuristic for SAT Solvers[END_REF]. We show that our MAB framework is able to achieve considerable gain by relying on Upper Confidence Bound (UCB) strategies [ACF02; AB09] enabling to conduct efficient inference based on the mean reward of each heuristic.

Our second contribution focuses on understanding the power of inference and its limits in the context of BnB algorithms for Max-SAT. Such algorithms construct a search tree and compute, at each node, a Lower Bound (LB) estimation by counting the number of disjoint Inconsistent Subsets (ISs) of the formula. When an IS is found, it is either temporarily deleted or transformed to ensure that it will be counted only once in the LB estimation [LMP07; HLO08; Li+10a; AH14d; AH14b; Abr15]. However, learning transformations of ISs by memorizing them in the current subtree may negatively affect the quality of the LB estimation. Therefore, state-of-the-art solvers learn transformations selectively mainly in the form of inference patterns. Recently, André and Habet introduced a new property, called UP-resilience, to characterize the transformations of ISs in the context of Max-SAT BnB [START_REF] Abramé | Max-résolution et apprentissage pour la résolution du problème de satisfiabilité maximum[END_REF][START_REF] Abramé | On the Resiliency of Unit Propagation to Max-Resolution[END_REF]. Our work is focused on further investigating this property in order to provide a theoretical explanation for the efficiency of learning mechanisms used in BnB solvers in the last decade. In particular, we study the relation between UP-resilience and the Unit Clause Subset (UCS) patterns introduced in [AH14d; Abr15]. We assess the limits of such learning mechanisms and we provide insights to extend them through UP-resilience.

Our contributions also extend to proof theory for Max-SAT. One of the first proof systems for Max-SAT is based on the Max-SAT resolution inference rule [BLM07; LHG08], which is an extension of the resolution rule introduced in the context of SAT [START_REF] Alan | A Machine-Oriented Logic Based on the Resolution Principle[END_REF]. Max-SAT resolution is sound and complete for Max-SAT and has gained particular interest these last years [LR20a; LR20b; BL20; Fil+20]. However, we still lack understanding of many aspects related to Max-SAT resolution as an inference rule and as a proof system for Max-SAT. SAT and Max-SAT are strongly related and share many aspects. However, unlike SAT inference, Max-SAT resolution has unique features as it enforces a transfer of knowledge. Consequently, bridging the gap between SAT and Max-SAT inference remains one of the main challenges in the last decade. In this context, we contribute to the open question of whether it is possible to adapt SAT proofs into Max-SAT proofs without substantially increasing their size. We show that this is possible for certain refinements of resolution, both when Max-SAT resolution is augmented with other inference rules or when it is exclusively used in the resulting proofs. Our work in this regard led to the introduction of the first independent proof builder for Max-SAT, called MS-Builder. The proof builder relies on some of the adaptations that we introduced to compute certificates (i.e., proofs of the optimal solution) for Max-SAT instances through iterative calls to a SAT oracle. Our work also extends beyond the relative (refutational) power of proof systems for Max-SAT with their counterpart in SAT. More specifically, we introduce the notion of explainability in order to investigate the ability to deduce information within the Max-SAT paradigm and to further assess the inferential power of Max-SAT proof systems.

Our work has been published in different venues including international journals (AIJ, JAIR) [CHA20; PCH22d], international conferences (IJCAI, SAT, CP, ICTAI) [CHT20; PCH20; PCH21a; PCH21b; PCH21d; CHA21; CHT21a; CHP22b] and national conferences (JFPC) [CHT21c; CHT21d; PCH21c; PCH22a; PCH22b; PCH22c; CHP22a]. In particular, we mention that our contributions in Chapter 6 are based on joint work with Matthieu Py. Some known results are thus succinctly described in this chapter as full details can be found in [START_REF] Py | Inférence et certificats pour le problème de satisfiabilité maximum[END_REF]. Other publications include our solver and benchmark descriptions submitted to the SAT competitions [START_REF] Sami Cherif | Kissat_MAB: Combining VSIDS and CHB through Multi-Armed Bandit[END_REF][START_REF] Sami Cherif | Verifying Optimums of (Partial) Max-SAT Formulas[END_REF][START_REF] Sami Cherif | Kissat MAB: Upper Confidence Bound Strategies to Combine VSIDS and CHB[END_REF][START_REF] Sami Cherif | Verifying Optimums of Weighted (Partial) Max-SAT Formulas[END_REF]. Our solver Kissat_MAB won gold medals in the Main and Main SAT tracks of the 2021 SAT competition1 as well as silver and bronze medals respectively in the Anniversary SAT and Main UNSAT tracks of the 2022 SAT competition 2 .

This manuscript is organized into two parts. The first part, composed of the first three chapters, is dedicated to the necessary background on the problems we will be studying in our work. In Chapter 1, we recall preliminary definitions and notions related to computational problem solving and propositional logic. Chapters 2 and 3 include detailed overviews on SAT and Max-SAT. We provide the formal definition of both problems and we introduce their variants, their main solving methods and their main inference rules and proof systems. The second part of the manuscript is dedicated to our contributions and also includes three sections. In Chapter 4, we introduce and evaluate our MAB framework for adaptive SAT branching. We investigate the inference mechanisms employed in BnB solvers through the UP-resilience property in Chapter 5. In Chapter 6, we study the refutational and inferential power of proof systems for Max-SAT in an attempt to deepen our knowledge on Max-SAT reasoning and its relation to SAT inference. We also finish the manuscript with a general conclusion summarizing our results and discussing future research directions. In this Chapter, we present preliminary notions necessary for reading this manuscript. We define decision and optimization problems and we recall major notions in algorithmics, computability and complexity theory. We also introduce propositional logic and the Conjunctive Normal Form (CNF) which will be used in the problems that we will study in our work.

Background 1 Preliminaries

Computational Problems

In theoretical computer science, studying and efficiently solving academic and real-world problems requires their formalization into clearly established computational problems free of any superfluous information. An input to a computational problem is referred to as an instance of the problem. A computational problem can therefore be viewed as a set of instances corresponding each to a, possibly empty, set of solutions. Computational problems are divided into several categories, two of which we will focus on in our work namely decision and optimization problems. Note that we only consider problems of combinatorial nature, in which the set of instances is a discrete finite set of objects.

In a decision problem, the required output can be expressed in the form of a question whose answer is "yes" or "no". More formally, given a decision problem π, the set of instances of the problem I (π) can be divided into two disjoints sets I + (π) and I -(π) representing respectively the set of positive instances for which the answer is "yes" and the set of negative instances for which the answer is "no". We provide hereafter a formal definition as well as some examples of well-known decision problems.

1 Preliminaries -1.1 Computational Problems Definition 1.1 (Decision problem). Let π be a problem and I (π) be the set of instances of π. We say that π is a decision problem if it has the following form: Decision Problem π Input: x ∈ I (π) Question: x ∈ I + (π)?

Example 1.1 (Primality Testing). A natural number n is a prime number if it has exactly two distinct divisors: 1 and n. The following problem which consists in testing whether a natural number is prime is a well-known decision problem. Note that the set of instances of this problem corresponds to the set of natural numbers, i.e., I (Primality Testing) = N, while the set of positive instances corresponds to the set of natural prime numbers, i.e., I + (Primality Testing) = {n ∈ N | n is prime}. This problem has many applications mainly in cryptography [START_REF] Massimo | An Analysis of Primality Testing and Its Use in Cryptographic Applications[END_REF].

Primality Testing Problem

Input: n ∈ N Question: is n a prime number? Example 1.2 (Hamiltonian Path/Cycle). A graph G is traceable if there exists a Hamiltonian path in G, i.e., a path which visits each vertex exactly once. For instance, the graph G 1 represented on the left in Figure 1.1 is traceable since A -B -C -D is a Hamiltonian path in G 1 , while G 2 represented on the right does not allow such a path and therefore is not a traceable graph. The Hamiltonian path problem, defined below, is a well established decision problem which consists in checking whether a graph is traceable. Note that the set of instances of this problem corresponds to the set of graphs while the set of positive instances corresponds to the set of traceable graphs. A variant of this problem is the Hamiltonian cycle problem defined below. A Hamiltonian cycle is a path that starts and ends at the same vertex and includes every other vertex exactly once. A graph containing such a cycle is a Hamiltonian graph. These problems have several applications in vehicle route planning and biology among others [START_REF] Masliakova | Optimal routing and charging procedures for electric buses[END_REF][START_REF] Kyu | Path planning for automatic guided vehicle with multiple target points in known environment[END_REF][START_REF] Medvedev | What do Eulerian and Hamiltonian cycles have to do with genome assembly?[END_REF].

Hamiltonian Path Problem

Input: a graph G Question: is G traceable? 1 Preliminaries -1.1 Computational Problems Next, we introduce the second category of problems: optimization problems. The task in such problems consists in searching for the best evaluation of feasible solutions with respect to a given measure and goal. We provide below a formal definition as well as some known examples. Note that a feasible solution is optimal if it achieves the optimum value, i.e., the goal specified in the output, and such a solution is often provided alongside or instead of1 the optimum. Definition 1.2 (Optimization Problem). Let π be a problem and I (π) be the set of instances of π. We say that π = (I (π), f , m, g ) is an optimization problem if it is of the following form:

Hamiltonian Cycle Problem

Optimization Problem π Input: x ∈ I (π) Output: opt (x) = g {m(x, y) | y ∈ f (x)}
where:

• f maps each instance x ∈ I (π) to its set of feasible solutions f (x)

• m(x, y) denotes a measure of the feasible solution y ∈ f (x)

• g is the goal function, either min (minimize) or max (maximize).

Example 1.3 (Shortest Path). Given graph G(V, E

) where V and E respectively denote the set of vertices and the set of edges, the length of a path p from a vertex v 1 ∈ V to a vertex v 2 ∈ V in G, denoted l (G, p), is the number of its edges. The shortest path problem defined below, which consists in finding the length of the shortest path between two vertices in a given graph, is a well established problem. Note that the set of feasible solutions for a given graph G are the available paths from v 1 to v 2 in G. The used measure is the length of the paths and the goal is clearly minimization. This problem has many real-world applications including mapping, social network analysis and logistics among others [START_REF] Shu-Xi | The Improved Dijkstra's Shortest Path Algorithm and Its Application[END_REF][START_REF] Brodka | Shortest Path Discovery in the Multilayered Social Network[END_REF][START_REF] Hai-Xiao | Dijkstra algorithm in the shortest path of logistics transporting[END_REF].

Shortest Path Problem

Input: a graph G = (V, E ) and (v 1 , v 2 ) ∈ V2 Output: mi n{l (G, p) | p is a path from v 1 to v 2 in G} Example 1. 4 2 weight, where the weight of a path is simply the sum of the weights of its edges. This problem has many applications in scheduling 1 Preliminaries -1.2 Algorithmics and routing among others [START_REF] Punnen | The Traveling Salesman Problem: Applications, Formulations and Variations[END_REF].

(Traveling Salesman). The Traveling Salesman Problem (TSP) is a well-known optimization problem which, given a list of cities and the distances between them, consists in finding the shortest possible route that visits each city exactly once and returns to the origin city. As showcased below, this problem can be modeled as a weighted graph problem which consists in finding the minimum Hamiltonian cycle

Traveling Salesman Problem

Input: a graph G = (V, E ) and a weighting function w G : E -→ R + Output: mi n{w G (p) | p is a Hamiltonian cycle in G}

Algorithmics

Algorithmics is a broad field of study within computer science which delves into the fundamental question of designing a correct method for solving a given problem. Such a method will be referred to as an "algorithm". The term is derived from the name of the 9 t h century Persian mathematician Al-Khwārizmī3 who introduced systematic solutions for linear and quadratic equations [START_REF] Khwārizmī | The Algebra of Mohammed Ben Musa[END_REF]. Although, historically, the design and use of systematic procedures date further back to 2500 BC, when Babylonians used rigorous procedures for performing arithmetic operations [START_REF] Chabert | Algorithms for Arithmetic Operations[END_REF].

Definition 1.3 (Algorithm). An algorithm is a finite sequence of well-defined instructions used to solve a specific problem.

When designing an algorithm we are usually interested in the following properties:

• Termination: It consists in determining whether the algorithm halts for each input.

A mathematical proof is usually provided as a termination proof, often invoking the monotonic behaviour of certain bounded measures used in the algorithm as an argument.

• Correctness: It consists in determining whether the algorithm is correct, i.e., generates the correct output with respect to its input and specification. If this property is associated with termination, we are dealing with total correctness. A mathematical proof may be provided to prove correctness although complex algorithms/systems may require more adapted formal and rigorous reasoning methods such as Hoare logic [START_REF] Antony | An axiomatic basis for computer programming[END_REF][START_REF] Pierce | Software Foundations[END_REF].

• Efficiency: It relates to the consumption of resources by the algorithm, mainly time and memory, with respect to the input size. This property pertains more specifically to complexity theory which will be introduced in Section 1.4.

Example 1.5. A simple method for solving the Primality Testing Problem4 is described in Algorithm 1.1 5 . The algorithm is correct since all possible non-trivial divisors of the input n are tested. It also terminates since it loops on a finite set of numbers.

1 Preliminaries -1. if n mod i = 0 then 3:

return F al se 4: end for 5: return Tr ue

Computability

Computabiliy is a broad subject of study which is at the heart of computer science theory. Indeed, computability is the ability to solve a problem in an effective manner which is inextricably linked to the existence of an algorithm to solve it. The study of algorithms and of computability in a broader sense as a full-fledged field of study started in the 1930s when logicians tried to understand the limits of reasoning automation. At the time, several attempts to formalise the notion of computability were made by Gödel 6 (µ-recursive functions alongside Herbrand 7 and later Kleene 8 ) [Sie05; Kle37], Church 9 (λ-calculus) [START_REF] Church | An Unsolvable Problem of Elementary Number Theory[END_REF] and Turing 10 (Turing machines) [START_REF] Turing | On Computable Numbers, with an Application to the Entscheidungsproblem[END_REF]. These systems intuitively represent universal computational models which are able to perform any task that is achievable by a computer. More specifically, the intuitive notion of an algorithm corresponds to the effective calculation performed by a Turing machine. This last statement is referred to as the Church-Turing thesis or conjecture and is strongly corroborated by the fact that the three mentioned models are equivalent 11 [START_REF] Kleene | λ-Definability and Recursiveness[END_REF][START_REF] Turing | Computability and λ-Definability[END_REF].

Next, we give a brief overview 12 of Turing machines, introduced in 1936 13 . Turing informally describes his model in [START_REF] Turing | Intelligent machinery: a report[END_REF] as follows: "[...] an infinite memory capacity obtained in the form of an infinite tape marked out into squares, on each of which a symbol could be printed. At any moment there is one symbol in the machine; it is called the scanned symbol. The machine can alter the scanned symbol, and its behavior is in part determined by that symbol, but the symbols on the tape elsewhere do not affect the behavior of the machine. However, the tape can be moved back and forth through the machine, this being one of the elementary operations of the machine."

1 Preliminaries -1.3 Computability Such a machine, formally defined below, starts from the initial state q 0 , scanning the leftmost input symbol. At each computation step, it evolves with respect to its current state and the scanned symbol as specified by the transition function. The machine stops when it enters a final (accepting) state, in which case the input word is accepted. Note that the word is considered rejected if the machine halts14 on a non-final state or if it runs indefinitely (infinite loop). The set of words accepted by a Turing machine M is called the language of M , denoted L(M ).

Definition 1.4 (Turing Machine [Tur37b]). A Turing machine is a tuple (Q, Γ, Σ, q 0 , δ, F ) where:

• Q is a finite set of states • Γ is a finite set of alphabet symbols containing a blank symbol b ∈ Γ

• Σ ⊆ Γ \ {b} is a finite set of input symbols • q 0 ∈ Q is the initial state • δ : Q × Γ -→ Q × Γ × {←,
→} is the transition function where ← (resp. →) denotes a left (resp. right) shift

• F ⊆ Q is the set of final (or accepting) states

Example 1.6. We consider the Turing machine M = (Q, Γ, Σ, q 0 , δ, F ) where:

• Q = {q 0 , q 1 } and F = {q 1 }

• Σ = {0, 1} and Γ = {0, 1, }

• δ(q 0 , 0) = (q 0 , 0, R) and δ(q 0 , 1) = (q 1 , 1, R)

The machine M accepts the words that contain the symbol "1" at least once, Indeed, as soon as such a symbol is encountered, M transitions to the accepting state q 1 . Formally, we have L(M ) = Σ * \ {0} * . Note that the machine always halts (on finite inputs) since only right shifts are performed on the tape.

For a decision problem, the notion of computability corresponds to the notion of Turingdecidability. More specifically, a problem is decidable if there exists a corresponding Turing machine which halts on every input, either accepting or rejecting it. There exists many known undecidable problems such as the halting problem [Tur37b; Kle52] which, given a Turing machine and an input, consists in determining whether the machine will halt or loop forever.

Note that the Turing machine described in Definition 1.4 is deterministic as its transition function associates to each (state,symbol) pair, for which it is defined, a single unique (state,symbol,shift) triplet. On the other hand, the transition function in a nondeterministic Turing machine, defined below, associates each (state,symbol) pair to a set of 1 Preliminaries -1. 4 Complexity Theory (state,symbol,shift) triplets, enabling many choices at each computation step. Intuitively, such a machine is able to duplicate itself at each step thus creating different branches. Furthermore, an input word is accepted if one of the branches leads to an accepting state. Definition 1.5 (Non-Deterministic Turing Machine). A non-deterministic Turing machine is a Turing machine M = (Q, Γ, Σ, q 0 , δ, F ) with a non-deterministic transition function δ : Q × Γ -→ P (Q × Γ × {←, →}) 15 .

The execution time of a (deterministic or non-deterministic) Turing machine is measured in terms of the number of its transitions. Finally, it is important to note that the nondeterministic variant as well as many others such as multi-tape variants [START_REF] Papadimitriou | Computational Complexity[END_REF] remain equivalent to deterministic Turing machines in terms of computational power 16 , making Turing's model sturdy with respect to moderate changes and further corroborating the Church-Turing thesis.

Complexity Theory

Complexity Theory is a major sub-filed of theoretical computer science which focuses on studying and classifying decidable computational problems with respect to their resource usage. This involves studying and analyzing the complexity of algorithms designed to solve a specific problem in terms of resource consumption, mainly time and space required during their execution with respect to the size of the input. Note that this analysis may be performed in the best, average and worst cases. Hereafter, we will focus on the worst case time complexity 17 , i.e., the highest possible execution time of an algorithm with respect to all possible inputs.

One may argue that the highly increasing efficiency of computer processors may render the analysis and the optimization of algorithm complexity unimportant or outdated. On the contrary, this unceasing gain in machine performance and technological advancement generally entails dealing with inputs of much larger size which may thus lead to a substantially higher resource consumption as showcased in Table 1.1. Therefore, when analyzing the complexity of an algorithm, we are interested in its asymptotic behavior in terms of execution time, i.e., typically when dealing with inputs of large size. More specifically, we want to bound the number of elementary instructions 18 executed by the algorithm with respect to the size of its input. The Landau 19 notations, and particularly the big O notation defined below, are often used to this end. The main asymptotic complexities are reported in Table 1.2. It is important to note that the complexity of an algorithm should be established with respect to a reasonable machine encoding of the input as showcased in Example 1.7.

Definition 1.6 (Big O). Let f , g : N -→ R + be two functions. f is dominated by g , denoted f = O(g ), if ∃ c ∈ R * + and n 0 ∈ N s.t. ∀n ≥ n 0 , f (n) ≤ c * g (n).
15 Given a set S, P denotes the power set of S, i.e., the set of all subsets of S. [START_REF] Kleinberg | Algorithm Design[END_REF]. ∞ (resp. 0) denotes running times greater than 10 25 years (resp. less than 1 second).

Notation Name O(1) constant O(l og n) logarithmic O(n) linear O(n l og n) quasilinear O(n 2 ) quadratic O(n 3 ) cubic O(n c ) polynomial O(c n ) exponential O(n!) factorial Table 1.2:
Complexity of algorithms with respect to their asymptotic behavior Example 1.7. We consider Algorithm 1.1 for primality testing 20 . The algorithm performs at most n -2 iterations in the loop with a division test of constant time c > 0 in each iteration plus a single return instruction (either in or after the loop). Therefore, the number of iterations can be bound with respect to n as follows:

C (n) = c.n + 1 = O(n).
However, the complexity of this algorithm is not linear in this case. Indeed, a natural number n is usually represented in the machine by its digits and therefore its actual size is s = O(l og n) 21 . The complexity of Algorithm 1.1 is therefore exponential as C (s) = O(e s ).

Next, we focus on the complexity of computational problems which can be very difficult to establish as it pertains to all possible algorithms that could be used to solve a problem. More specifically, establishing the exact complexity of a problem usually requires proving upper and lower complexity bounds which coincide. While the former is easier to prove as it corresponds to the worst time complexity of a specific valid algorithm solving the problem, the latter usually involves a much stronger argument through mathematical reasoning over all possible algorithms that solve the problem. As few problems have known exact 1 Preliminaries -1.4 Complexity Theory complexities 22 , mainly due to the difficulty of establishing their lower bound complexity, it is more common to classify the problems with respect to their upper bound, i.e., the worst time complexity of the best know algorithm. Note that, in the rest of this section, we solely consider decision problems but complementary notions exist for optimization problems [START_REF] Bovet | Introduction to the Theory of Complexity[END_REF].

We introduce below three main complexity classes: P (Polynomial), NP (Non-deterministic Polynomial) and EXP (Exponential). Intuitively, the class P contains "easy" or feasibly computable problems, which can be solved in polynomial time. This correspondence between the informal notion of "easiness" or "feasibility" with the formal complexity class P was first asserted by Cobham [Cob65] and Edmonds [START_REF] Edmonds | Paths, Trees, and Flowers[END_REF] and is referred to as the Cobham-Edmonds thesis. On the other hand, the EXP class contains problems which are extremely difficult and can only be solved in exponential time. The NP class introduced by Cook 23 in [START_REF] Cook | The Complexity of Theorem-Proving Procedures[END_REF] is an intermediate class containing problems for which no polynomial algorithm is known and it further seems very difficult to prove that such algorithms do not exist. Intuitively, this class represents the problems which are polynomially verifiable, i.e., the validity of a solution certificate can be asserted in polynomial time as showcased in Example 1.9. These three classes thus form the hierarchy established in Proposition 1.1.

Definition 1.7 (P). The class P is the class of problems that can be solved in polynomial time by a deterministic Turing machine.

Definition 1.8 (NP [START_REF] Cook | The Complexity of Theorem-Proving Procedures[END_REF]). The class NP is the class of problems that can be solved in polynomial time by a non-deterministic Turing machine. Definition 1.9 (EXP). The class EXP is the class of problems that can be solved in exponential time by a deterministic Turing machine.

Example 1.8. There exists a polynomial-time algorithm solving the primality testing problem introduced in Example 1.1 and therefore it is in P [START_REF] Agrawal | PRIMES is in P[END_REF].

Example 1.9. There is no known polynomial algorithm for the Hamiltonian path problem introduced in Example 1.2. This problem is in N P . Indeed, if the input graph is traceable, exhibiting a Hamiltonian path is sufficient to certify its traceability. Note that the size of such a path is exactly the number of vertices in the input graph G and therefore its size is linear in the size of G. Furthermore, it is possible to check that the given path is a Hamiltonian path in polynomial time with respect to the size of G. To this end, we can simply verify that each consecutive pair of vertices in the path is linked by an edge and that all the vertices are distinct. The same arguments hold to establish that the Hamiltonian cycle problem is also in NP.

Proposition 1.1. P ⊆ N P ⊆ E X P . 22 Simple examples include finding the minimum value within a list (linear complexity) or performing a comparison sort (quasilinear complexity [START_REF] Thomas | Introduction to Algorithms[END_REF]). 23 Stephen Cook (born in 1939) 1 Preliminaries -1. 4

Complexity Theory

The notion of polynomial-time reduction, introduced by Karp24 [START_REF] Karp | Reducibility Among Combinatorial Problems[END_REF] and defined below, allows to transform the instances of a problem into the instances of another while preserving positive instances. Such reductions have also enabled to identify the hardest problems in NP, referred to as NP-complete problems and defined below. Many NPcomplete problems are known in the literature such as those in Example 1.10. Note that the NP-completeness of a problem π ∈ NP is usually established through Proposition 1.2, i.e., by proving that a known NP-complete problem can be polynomially reduced to π. Definition 1.10 (Polynomial-Time Reduction [START_REF] Karp | Reducibility Among Combinatorial Problems[END_REF]). Let π 1 and π 2 be two decision problems. A polynomial-time reduction from π 1 to π 2 is a function R : I (π 1 ) -→ I (π 2 ) computable in polynomial-time which preserves positive instances:

∀x ∈ I (π 1 ), x ∈ I + (π 1 ) ⇐⇒ R(x) ∈ I + (π 2 ) Notation 1.1. We denote π 1 ≤ p π 2 if

Propositional Logic

As the study of the laws of thought and of valid reasoning, logic has always been a subject of great interest which ancient and modern philosophers alike sought to investigate and formalize [START_REF] Kneale | The development of logic[END_REF]. Nowadays, this field of study is at the heart of several disciplines including philosophy, mathematics and computer science. In particular, propositional logic [START_REF] Boole | An investigation of the laws of thought: on which are founded the mathematical theories of logic and probabilities[END_REF], which deals with knowledge in the form of propositions connected through logical operators, is of great importance in theoretical computer science and it is innately linked to the classical problems which we will study in our work.

Propositional logic is defined on the following alphabet:

• Constants: (True or 1) and ⊥ (False or 0)

• Propositional/Boolean variables: variables that can only have the Boolean values True or False

• Logical connectives: ¬ or (negation), ∧ (conjunction), ∨ (disjunction), ⇒ (implication) and ⇔ (equivalence)

• Priority symbols: ( and )

We define propositional formulas below using this alphabet. An assignment maps each variable to a truth value, i.e., a Boolean value of either True or False. In the following sections, the term assignment is used to refer to either a complete or partial assignment unless otherwise specified. Definition 1.13 (Propositional formula). Let V be a set of propositional variables. A propositional formula on V is inductively defined as follows:

• , ⊥ and x ∈ V are propositional formulas

• if φ and ψ are propositional formulas then (φ), ¬φ, φ ∧ ψ, φ ∨ ψ, φ ⇒ ψ and φ ⇔ ψ are propositional formulas. Example 1.11. φ = ¬(x 1 ∧ x 2 ) ∧ (x 2 ⇔ x 3 ) is a propositional formula over the set of variables V = {x 1 , x 2 , x 3 }.
Definition 1.14 (Assignment). Let V be a set of propositional variables. An assignment of variables in V is a function α : V -→ {Tr ue, F al se}. If α assigns a Boolean value to all the variables in V , it is a complete assignment; otherwise it is a partial assignment.

Given an assignment α of the variables in V and using the truth tables of logical connectives reported in Table 1.3, the evaluation of a propositional formula φ with respect to α, denoted φ α or simply α(φ), can be inductively deduced as follows:

1 Preliminaries -1.

• x α = α(x) for x ∈ V • ¬φ α = ¬ φ α • φ * ψ α = φ α * ψ α for * ∈ {∧, ∨, →, ⇔} • (φ) α = φ α
Example 1.12. We consider the formula φ over V = {x 1 , x 2 , x 3 } in Example 1.11 and the assignment α which maps each variable in V to the value False (i.e., ∀x ∈ V, α(x) = F al se).

We have

φ α = ¬(α(x 1 ) ∧ α(x 2 )) ∧ (α(x 2 ) ⇔ α(x 3 )) = Tr ue.
If there exists an assignment α under which the evaluation of a propositional formula is True, we say that the formula is satisfiable and we refer to α as model of φ otherwise the formula is unsatisfiable. If any assignment of the variables is a model, the formula is referred to as a tautology. In addition, two formulas are logically equivalent if they are evaluated to the same truth value under any assignment of the variables. Definition 1.15 (Model). Let φ be a propositional formula over the set of variables V . A model of φ is an assignment α s.t. φ α = Tr ue.

Definition 1.16 (Tautology). A propositional formula φ is a tautology if any assignment of its variables is a model of φ.

Definition 1.17 (Equivalence). Two propositional formulas φ and ψ are equivalent if φ ⇔ ψ is a tautology. Notation 1.2. we denote φ ≡ ψ if φ and ψ are two equivalent propositional formulas.

Example 1.13. Let φ, ψ and γ be three propositional formulas. We have the following established classical equivalences:

• Double negation law: ¬(¬φ) ≡ φ • De Morgan laws: ¬(φ ∧ ψ) ≡ ¬φ ∨ ¬ψ and ¬(φ ∨ ψ) ≡ ¬φ ∧ ¬ψ • Distributivity laws: φ ∨ (ψ ∧ γ) ≡ (φ ∨ ψ) ∧ (φ ∨ γ) and φ ∧ (ψ ∨ γ) ≡ (φ ∧ ψ) ∨ (φ ∧ γ) 1 Preliminaries -1.5 Propositional Logic • (bi)conditional laws: φ ⇒ ψ ≡ ¬φ ∨ ψ and φ ⇔ ψ ≡ (φ ⇒ ψ) ∧ (ψ ⇒ φ)
Next, we introduce a classic subset of Boolean formulas which can be expressed through a specific, easier to handle, syntactic form. To this end, given a set of variables V , we start by defining below the basic forms that can be found in such formulas: literals and clauses. Definition 1.18 (Literal). A literal is either a variable x ∈ V or its negation x.

Definition 1.19 (Polarity).

A literal l is a positive literal if it has a positive polarity, i.e. l is a variable. Otherwise, l has a negative polarity and is a negative literal.

Definition 1.20 (Clause). A clause is a disjunction of literals.

Notation 1.3. Given a literal l , a clause C and a propositional formula φ, we denote v ar (l ), v ar (C ) and v ar (φ) respectively the variables in l , C and φ.

Example 1.14. C = x 1 ∨ x 2 is a clause containing the negative literal x 1 and the positive literal x 2 . Furthermore, we have v ar (C ) = {x 1 , x 2 }.

Note that an assignment α of the variables in V can be represented as a set of literals. More specifically,

α = {x ∈ V | α(x) = Tr ue} ∪ {x | x ∈ V and α(x) = F al se}. A clause C = l 1 ∧ ... ∧ l n
can also be represented as set of literals C = {l 1 , ..., l n }. The evaluation of literals and clauses under assignments is very simple. Indeed, a literal l is satisfied (resp. falsified) by an assignment α if l ∈ α (resp. l ∈ α). A clause C is satisfied by an assignment α if at least one of its literals is satisfied by α, i.e., ∃l ∈ C s.t. l ∈ α; otherwise it is falsified by α. Note that some interesting relations can occur between two clauses, mainly subsumption and opposition defined below. Furthermore, specific clauses include:

• the empty clause, denoted , which contains zero literals and is always falsified • unit (resp. binary) clauses which contain exactly one literal (resp. two literals)

• tautological clauses, which contain a literal and its negation and are always satisfied

Definition 1.21 (Subsumption). A clause C subsumes a clause C if C ⊆ C . Definition 1.22 (Opposition). A clause C opposes a clause C if ∃l ∈ C s.t. l ∈ C . Example 1.15. We consider the clauses C 1 = x 1 , C 2 = x 1 ∨x 2 and C 3 = x 1 ∨x 2 . The unit clause C 1 clearly subsumes the binary clause C 2 as every literal in C 1 is also in C 2 . C 1 also opposes the binary clause C 3 as x 1 ∈ C 1 and x 1 ∈ C 2 .
Finally, we introduce the Conjunctive Normal Form (CNF), in which formulas are simply conjunctions of clauses. A CNF formula φ can also be represented as a set of clauses and is satisfied by an assignment α if all its clauses are satisfied by α. The empty formula φ = contains zero clauses and is always satisfied. It is important to note that every propositional formula can be transformed into an equivalent CNF formula using truth tables or the classical equivalences in Example 1.13. However, A transformation with guaranteed efficiency may warrant the addition of new variables while only preserving satisfiability instead of equivalence [START_REF] Tseitin | On the Complexity of Derivation in Propositional Calculus[END_REF][START_REF] Plaisted | A Structure-Preserving Clause Form Translation[END_REF].

1 Preliminaries -1.6 Conclusion

Definition 1.23 (Conjunctive Normal Form). A propositional formula in Conjunctive Normal Form (CNF) is a conjunction of clauses.

Notation 1.4. Let φ be a CNF formula and l be a literal. We denote φ| l the simplification of φ by the literal l . Formally, we have:

φ| l = {C \ {l } |C ∈ φ
φ| α = {C \ {l ∈ C | l ∈ α} | C ∈ φ and C ∩ α = } Example 1.16. The formula ψ = (x 1 ∨ x 2 ) ∧ (x 2 ∨ x 3 ) ∧ (x 2 ∨ x 3
) is a satisfiable formula in CNF form. Indeed, the assignment α which maps each variable in V to the value False clearly satisfies each clause in φ and therefore is a model of φ. Note that this formula is equivalent to the formula φ in Example 1.11.

Conclusion

In this chapter, we introduced some preliminary notions which form the necessary generic background for reading this manuscript. We started with the nature of computational problems and we particularly focused on decision and optimization problems. We also recalled some notions related to algorithmics and computability. Then, we recalled the main complexity classes and some major results in complexity theory. Finally, we introduced propositional logic alongside the Conjunctive Normal Form (CNF) which we will consider in the rest of the manuscript. In the following chapter, we introduce the Satisfiability (SAT) problem which is a well-known decision formalism at the heart of AI and complexity theory.

2 Satisfiability -2.1 Definition and Variants on the resolution rule as a proof system for SAT and we introduce some of its well-known refinements. Finally, we define the Multi-Armed Bandit (MAB) problem and we review its use in the context of Satisfiability and beyond.

Definition and Variants

The Satisfiability (SAT) problem1 defined below is at the heart of theoretical computer science. It is the first problem that was proven NP-complete [START_REF] Cook | The Complexity of Theorem-Proving Procedures[END_REF] and many other classical problems in the literature were later shown NP-complete by reduction from SAT [START_REF] Karp | Reducibility Among Combinatorial Problems[END_REF].

There is no known polynomial algorithm for the SAT problem and finding such an algorithm entails P=NP, thus solving the P vs NP problem. However, it is widely believed that no such algorithm exists which is equivalent to the claim P =NP, although no valid mathematical proof has been exhibited to support this claim.

Definition 2.1 (Satisfiability). The satisfiability (SAT) problem is defined as follows:

SAT Input: a CNF formula φ Question: is φ satisfiable? Theorem 2.1 (Cook's Theorem [START_REF] Cook | The Complexity of Theorem-Proving Procedures[END_REF]). The SAT problem is NP-complete.

There are many known variants of the SAT problem, two of which are defined below: k-SAT and Horn-SAT. These two variants take specific formulas as input. While k-SAT restricts the size of the clauses in the input CNF formula to at most k-literals, Horn-SAT considers formulas where each clause contains at most one positive literal. Interestingly, 2-SAT and Horn-SAT are in P [Kro67 The SAT problem also has many known extensions such as Quantified Satisfiability (QSAT) 2 , Satisfiability Modulo Theories (SMT) 3 and Sharp Satisfiability (#SAT) 4 among others. The reader can refer to the Handbook of Satisfiability [START_REF] Biere | Handbook of Satisfiability: Second Edition[END_REF] for further details on these classical problems as they are out of the scope of this thesis. A particular extension we will be studying however is Maximum Satisfiability (Max-SAT), the natural optimization extension of SAT which will be introduced in Section 3.

Satisfiability is a powerful formalism that can be used to model and solve many realworld and crafted problems making it of great academic and industrial interest. It has a wide range of applications in various fields which include, but are not limited to, bounded model checking [START_REF] Biere | Bounded Model Checking[END_REF], hardware and software verification [GGW06; Kro21], electronic design automation [START_REF] João | Boolean Satisfiability in Electronic Design Automation[END_REF], planning [START_REF] Rintanen | Planning and SAT[END_REF], data mining [START_REF] Boudane | SAT-Based Data Mining[END_REF], combinatorial design theory [START_REF] Zhang | Combinatorial Designs by SAT Solvers[END_REF], cryptography [SNC09b; LJH14], statistical physics [START_REF] Fabrizio Altarelli | Connections to Statistical Physics[END_REF], and bioinformatics [START_REF] Lynce | SAT in Bioinformatics: Making the Case with Haplotype Inference[END_REF][START_REF] Manolios | Checking Pedigree Consistency with PCS[END_REF]. The extensions of SAT mentioned above allow further flexibility and expressiveness thus enabling to model a larger set of problems.

A major event is held annually since 2002 5 to keep up the driving force in improving SAT solving. SAT competitions 6 have become traditional venues to present, evaluate and compare the latest SAT solving technologies [START_REF] Järvisalo | The international SAT solver competitions[END_REF]. In the main track7 , solvers are evaluated on a benchmark set with varied real-word and crafted instances and are required to conform to the DIMACS format8 and to output certificates of unsatisfiability9 .

Algorithms

In this section, we present major methods for SAT solving in the literature which can be divided into two main categories: complete and incomplete algorithms. Unlike complete methods for SAT which are guaranteed to terminate and to return a correct solution stating whether the given instance is satisfiable or unsatisfiable, incomplete methods are tailored for satisfiable instances only and are not guaranteed to find a solution. Hereafter, we overview the main complete and incomplete algorithms for SAT as well as the techniques and heuristics used in modern SAT solvers. 2 extends SAT in the context of quantified propositional logic where each variable can be bound through existential or universal quantifiers 3 extends SAT in the context of first-order logic with respect to a variety of theories, i.e., variables are replaced by predicates in the underlying theory which can be bound using quantifiers 4 natural extension of SAT as a counting problem which consists in determining the number of models of the input formula 5 24 events have been held including three earlier SAT competitions in 1992, 1993and 1996. 15 SAT competitions, 5 SAT races (2006, 2008, 2010, 2015, 2019) and one SAT Challenge (2012) have been held after 2000.

Complete Methods

In this section, we present the major complete algorithms for solving the SAT problem. These algorithms explore the search space through an exhaustive branching over the variables in the formula. One particular algorithm which is at the core of every modern SAT solver is Conflict Driven Clause Learning (CDCL) [START_REF] Marques-Silva | Conflict-Driven Clause Learning SAT Solvers[END_REF]. We start by introducing its ancestor, DPLL [START_REF] Davis | A Machine Program for Theorem-Proving[END_REF], which is a simple backtracking algorithm relying mainly on the propagation of literals within unit clauses to prune the search space. Then, we present the CDCL framework which relies on two powerful mechanisms: clause learning and non-chronological backtracking. Furthermore, we overview additional techniques and heuristics which are incorporated within modern solvers to enhance their performance. Finally, we briefly introduce other complete solving methods for SAT.

DPLL Algorithm

The Davis-Putnam-Logemann-Loveland (DPLL) Algorithm10 [DP60; DLL62] is a complete procedure for SAT solving, which paved the way for modern complete algorithms. A recursive version of this procedure is given in Algorithm 2.1. DPLL performs a systematic search by enumerating all possible assignments of the variables. To this end, a search tree where each node corresponds to a branching over a variable in the formula is constructed (lines 7-8). If all variables are assigned without falsifying a clause, then the formula is clearly satisfiable and the algorithm outputs the value Tr ue (lines 3-4). In order to prune the search space, DPLL uses two simple yet powerful simplification rules (lines 5-6) which we present below.

Unit Propagation (UP)

If there is a unit clause C = l in the formula, it can only be satisfied by propagating the literal l , i.e., assigning l to Tr ue which is equivalent to adding it to current assignment. In DPLL, this rule is enforced through simplifying the current formula by the literal l . In practice, this often leads to cascades of unit clauses being generated and to many literals being propagated, thus pruning a large part of the search space.

Pure Literals (PL) When a literal l appears with the same polarity (either positively or negatively) in the formula, then it can also be propagated. Simplifying the formula by l entails deleting the clauses containing l and therefore pruning the search space.

The above rules are performed in each node of the search tree. Furthermore, when an assignment leads to the falsification of a clause in the formula, i.e., a clause becomes empty, the current assignment cannot satisfy the formula (lines 1-2) and the algorithm backtracks to the last assigned literal in order to branch on its negation (line 8). Note that the decisions, i.e., branching on the variables, can be done simply in lexicographic or random order of the variables [START_REF] Davis | A Machine Program for Theorem-Proving[END_REF]. However, more efficient branching heuristics are used in practice and will be presented in Section 2.2.1.3.2. We provide below an example to illustrate the execution of the DPLL algorithm. return DP LL(φ| l )

7: l ←-Branching_Heuristic(φ) 8: return DP LL(φ ∧ l ) or DP LL(φ ∧ l ) Example 2.1. We consider the formula φ = C 1 ∧ C 2 ∧ C 3 ∧ C 4 ∧ C 5 where C 1 = x 1 ∨ x 2 , C 2 = x 2 ∨x 3 , C 3 = x 3 ∨x 4 , C 4 = x 3 ∨x 4 and C 5 = x 1 ∨x 2 ∨x 3 . A search tree depicting the execution of the DPLL algorithm on φ with lexicographic branching (i.e., x 1 < x 2 < x 3 < x 4 ) is showcased in Figure 2.1. c 4 = c 4 = c 4 = φ = x 1 x 1 x 2 x 3 @C 2 x 4 @C 3 x 2
x 3 @C 5

x 4 @C 3 In CDCL, we say that a conflict occurs when propagating a literal falsifies a clause in the formula. When such a case is encountered during the search, CDCL learns information in the form of a new clause, called learnt clause, to catch the cause of the failure and avoid repeating it again [START_REF] Marques-Silva | Search algorithms for satisfiability problems in combinational switching circuits[END_REF][START_REF] João | GRASP -a new search algorithm for satisfiability[END_REF]. To this end, the algorithm retraces and analyzes its actions done prior to the conflict. Formally, an implication graph, defined below, is used to represent the assignments made by the algorithm either through decisions or propagations. Decision levels of the literals are also usually reported in the implication graph. Each time a literal l is branched on, a new decision level δ(l ) ∈ {1, . . . , |v ar (φ)|} is associated to l . On the other hand, the decision level of a propagated literal l corresponds to the level of the last literal assigned by branching before the propagation of l or 0 if l was propagated through a unit clause in the formula. Formally, if l is propagated through the clause C then we have • The conflict is represented by the vertex κ ∈ V having incoming arcs labeled by the clause C from the literals forcing it to be falsified.

x 2 @C 1 x 3 x 4 @C 3 x 3 x 4

CDCL Algorithm

δ(l ) = max({0} ∪ {δ(l ) | l ∈ C \ {l }}).
x 1 @1 Using the implication graph G = (V, A), we can identify the reason(s) of the conflict which take the form of a partial assignment α that generated it. More specifically, α can be obtained by identifying a bipartition (also called cut) of the implication graph such that one partition has all the decision nodes (reason side) and the other contains the conflict node κ (conflict side). The set α of vertices on the reason side that have at least one edge to the conflict side constitute a possible reason for the conflict. Since assigning the literals of α generates the same conflict, the clause C = {l | l ∈ α} can be added to the formula to avoid reaching it again. Formally, the clause C can be deduced by the resolution rule defined below 17 . Given two opposed clauses, this well-known inference rule for SAT deduces a new clause, called resolvent, which can be added to the formula. A proof of the validity of the learnt clause can be provided by iteratively applying resolution on the clauses between the conflict node κ and the literals in α in the reverse order of propagation. [START_REF] Alan | A Machine-Oriented Logic Based on the Resolution Principle[END_REF]). Given two opposed clauses C 1 and C 2 , the resolution rule is defined as follows:

x 2 @2 x 3 @2 x 4 @2 κ λ 1 λ 3 λ 2 C 2 C 3 C 4 C 4

Definition 2.7 (Resolution

C 1 = x ∨ A C 2 = x ∨ B C 3 = A ∨ B Example 2.
3. We consider the implication graph in Example 2.2. The cuts λ 1 , λ 2 and λ 3 correspond to possible conflict reasons α 1 = {x 3 , x 4 }, α 2 = {x 3 } and α 3 = {x 2 }. While α 1 represents the clause C 4 , α 2 and α 3 represent respectively the clauses C α 2 = x 3 and C α 3 = x 2 which can be learned in the formula. In Figure 2.3, we showcase how these clauses can be deduced using the resolution rule.

2 Satisfiability -2.2 Algorithms Since there can be many possible reasons to the same conflict corresponding to different cuts of the implication graph, CDCL solvers mainly use the First Unique Implication Point (FUIP) scheme to deduce and learn a new clause [START_REF] Zhang | Efficient Conflict Driven Learning in a Boolean Satisfiability Solver[END_REF]. More specifically, this scheme consists in resolving the clauses from the conflict node until the First UIP node which is the UIP closest to κ in the implication graph. It was shown that this scheme is quite robust and effective and can provide smaller reasons for the conflicts [START_REF] Zhang | Efficient Conflict Driven Learning in a Boolean Satisfiability Solver[END_REF].

c α 1 = C 4 = x 3 ∨ x 4 C 3 = x 3 ∨ x 4 C α 2 = x 3 C 2 = x 2 ∨ x 3 C α 3 = x 2

Definition 2.8 (Unique Implication Point [Mar95; SS96]). Let G be an implication graph. A Unique Implication Point (UIP) is any node in G such that any path from the decision nodes the conflict node κ must pass through it.

Example 2.4. The nodes x 2 and x 3 are both UIPs of the implication graph represented in Figure 2.2. Since x 3 is closest to the conflict node, it is the First UIP (FUIP) and, therefore, the clause C α 2 = x 3 will be learned in the formula.

After determining the new clause C which is added to the formula, CDCL backtracks to the second largest decision level in C [START_REF] Zhang | Efficient Conflict Driven Learning in a Boolean Satisfiability Solver[END_REF]. Formally, given the current decision level δ in which the conflict is detected, the backtrack level is obtained as follows:

β = max({0} ∪ {δ(l ) | l ∈ C and δ(l ) < δ})
It is worth noting that when β < δ -1 the algorithm backtracks over several levels, in which case we say that CDCL backjumps to β. Non-chronological backtracking is a major feature of CDCL alongside clause learning as both enable to avoid wasting a significant amount of resources while exploring dead-end regions of the search space. This is clearly showcased in the following example.

Example 2.5. We consider the same formula

φ = C 1 ∧C 2 ∧C 3 ∧C 4 ∧C 5 in Example 2.1 where C 1 = x 1 ∨ x 2 , C 2 = x 2 ∨ x 3 , C 3 = x 3 ∨ x 4 , C 4 = x 3 ∨ x 4 and C 5 = x 1 ∨ x 2 ∨ x 3 .
The search tree corresponding to the execution of the CDCL algorithm on φ is represented in Figure 2.4. The algorithm performs the same steps as in DPLL until the first conflict is detected by falsifying the clause C 4 . As shown in Example 2.4, the clause C 7 = {x 3 } is learned and the algorithm backtracks to the level δ = 0. A sequence of unit propagations follows and a branching on literal x 4 leads to the satisfying assignment α = {x 1 , x 2 , x 3 , x 4 }. Note how the CDCL framework helped to avoid dead-end parts of the search space thus reaching a satisfying assignment more efficiently compared to the search performed by DPLL in Figure 2.1.

C 4 = l ear n C 6 =x 3 φ = x 1
x 3 @C 6

x 2

x 3 @C 2

x 4 @C 3

x 2 @C 2

x 1 @C 5 The basic CDCL procedure is given in Algorithm 2.2 where:

• α and δ represent respectively the current assignment and current decision level.

• Unit_Propagation(φ, α) applies UP on the formula φ and adds the propagated literals to α. It returns Tr ue if a conflict is detected, i.e., a clause becomes empty, and F al se otherwise.

• Analyse_conflict(α) analyzes the implication graph to deduce and return a clause C to be learned and a backtrack level β .

• Backtrack(φ, α, β) undoes all the assignments made within and after the backtrack level β by doing the necessary updates on φ and α.

• Branching_Heuristic(φ, α) chooses the literal (corresponding to a variable and its truth value) to branch on in the search.

Note that in practice, CDCL solvers use an assignment trail in the form of a list of literals associated each to a decision level and, if propagated, to an antecedent clause. This trail is sufficient to perform conflict analysis without maintaining an actual graph structure. Modern solvers also rely on a variety of powerful techniques and heuristics which we present in the next section.

Modern Solvers

Modern SAT solver are able to casually solve instances with millions of variables and/or clauses. This outstanding performance is not only due to the advent of the CDCL framework but also to the variety of techniques and heuristics incorporated in these solvers. Indeed, modern solvers rely on efficient data structures which are tailored for the CDCL algorithm, powerful branching heuristics which cleverly explore the search space, cost-effective handling of the learnt-clauses database to avoid exponential blow-up in the number of clauses, restart mechanisms to deal with heavy-tailed behaviors and enhanced inference techniques to further prune the search space. In this section we present these different techniques with a particular focus on branching heuristics and restarts which are necessary components for our contributions in Chapter 4.

Lazy Data Structures

One of the major ingredients in the success of modern CDCL solvers is the use of efficient data structures. Indeed, formulas with a high number of clauses, which is constantly evolving through the learning process, warrant the design of suitable data structures to maintain a reasonable cost for recurring CDCL operations such as UP, conflict analysis and backtracking. Traditional data structures for CDCL solvers take the form of adjacency lists [DLL62; SS96; BS97; LA97a]. The clauses are represented as lists of literals and each literal l is associated to its adjacent clauses, i.e., the clauses that contain l . The adjacency lists of l and l enable to access the clauses that are impacted by the assignment of l and, therefore, the number of clauses that need to be checked is significantly reduced. Furthermore, different approaches can be used to identify satisfied, unsatisfied or unit clauses such as simply hiding assigned literals by keeping them in separate lists or by using counters for the number of satisfied/unsatisfied literals to keep track of the status of a clause without having to check all its literals as proposed in the GRASP solver [START_REF] Marques-Silva | Search algorithms for satisfiability problems in combinational switching circuits[END_REF][START_REF] João | GRASP -a new search algorithm for satisfiability[END_REF]. Note that adjacency lists are "accurate" data structures as they enable to know exactly the value of each literal in the clause and have the common drawback of associating each literal to a potentially large number of clauses, which often increases as the search proceeds.

Modern data structures opt for a more lazy approach, in which it is not necessary to know the actual state of each literal in the clauses, hence their name. A key feature of these structures is that they mainly need to capture the state of each clause when it is unit to perform UP or when it is unsatisfied to perform conflict analysis. To this end, it is sufficient to track only two literals in each clause as in the Head/Tail (HT) structure introduced in the SATO solver [START_REF] Zhang | SATO: An efficient propositional prover[END_REF]. More specifically, this lazy data structure keeps track of two references in each clause pointing to the head (H ) and the tail (T ) literal. Initially, H points to the first literal and T to the last literal in the clause. When a literal l pointed by H (resp. T ) is assigned, it is replaced by the next unassigned literal on the right (resp. on the left) in the clause. As such, H and T always move towards the middle of the clause. In case the other reference is reached and no unassigned literal can be identified, the clause is declared unit, unsatisfied or satisfied. When the algorithm backtracks, H and T are placed at their previous positions. The behaviour of this data structure is illustrated on the right in Figure 2.5.

The Watched Literals (WL) structure introduced in the Chaff solver [START_REF] Moskewicz | Chaff: Engineering an Efficient SAT Solver[END_REF], at the heart of modern CDCL solvers, was inspired by its predecessor HT and aimed to remedy its major drawback of updating references during backtrack. To this end, WL does not impose any order relation between the two maintained references. The lack of order between the two watched literals entails that no literal references need to be updated when backtracking. As such, it is also not necessary to keep additional references to save previous positions of watched literals as showcased on the right of Figure 2.5. Many variations of this structure have been introduced in the literature such as Watched Literals (WL) with literal sifting [START_REF] Lynce | Efficient Data Structures for Backtrack Search SAT Solvers[END_REF], Watched List with Conflicts' Counter (WLCC) [START_REF] Nadel | Backtrack search algorithms for propositional logic satisfiability: Review and innovations[END_REF] as well as other optimizations [Gel02; Bie08b; Gen13]. . Vertical solid and dashed arrows respectively represent current and saved references. @i denotes that the corresponding literal was the i t h assigned literal in the clause.

Branching Heuristics

Branching heuristics play an important role in modern solvers. Indeed, a good heuristic can highly impact a solver's performance as shown in Example 2.6. There are many heuristics that were designed through the years since the emergence of DPLL and later the CDCL framework. It is important to note that variable branching heuristics and phase branching heuristics, which choose a truth value for the selected variable, can be distinguished. In general, branching heuristics focus on choosing a "good" variable to branch on in the search and can be seen as a scoring function scor e : V -→ R + on the set of variables V = v ar (φ) in the formula, although some exceptions on the nature of this function are possible. The branching is therefore usually done by choosing the variable x with a maximal score, i.e., x = ar g max v∈V scor e(v). Phase heuristics are less common as they were usually integrated with variable branching in the early heuristics whereas practically all modern solvers implement phase saving [START_REF] Pipatsrisawat | A Lightweight Component Caching Scheme for Satisfiability Solvers[END_REF], which forces a variable to be reassigned to its last truth value. As such, we will mainly focus in this section on variable branching heuristics.

Example 2.6. We consider the same formula φ = C 1 ∧C 2 ∧C 3 ∧C 4 ∧C 5 where C 1 = x 1 ∨x 2 , C 2 = x 2 ∨x 3 , C 3 = x 3 ∨x 4 , C 4 = x 3 ∨x 4 and C 5 = x 1 ∨x 2 ∨x 3 as in Example 2.1. Note how branching on x 3 would have led to the propagation of x 2 and x 1 respectively through the clauses C 2 and C 5 . Then, branching on literal x 4 would lead to a satisfying assignment without encountering any conflict unlike the search trees with lexicographic branching in Figures 2.1 and 2.4.

Early heuristics for SAT solving were mainly of syntactic (i.e., lexicographic) nature and tended to favor the variables that appeared in clauses of small size. They were also greedy as they made decisions that satisfied immediate goals expected to simplify the problem. Note that these heuristics can be static or dynamic depending on whether they are computed with respect to the input formula or the formula simplified by the current assignment. Hereafter, we present some of the best known traditional syntactic heuristics which were popular in the 90s.

Jeroslow-Wang (JW) [JW90]

This heuristics associates to each variable v ∈ V the following score:

scor e(v) = o(h(v), h(v))
where:

• o ∈ {max, sum}. If o = max, we are dealing with the one-sided variant of JW, otherwise we are dealing with the two sided variant.

• h(l ) = C ∈φ s.t. l ∈C 2 -|C | and can be used to choose the truth value of the selected variable by comparing h(v) and h(v).

Böhm's Heuristic [BB92]

This heuristic considers a different scoring function scor e : V -→ R n + whose output, given a variable v, is a vector (H 1 (v), . . . , H n (v)) such that for i ∈ {1, . . . , n} we have:

H i (v) = α * max(h i (v), h i (v)) + β * min(h i (v), h i (v))
where:

• h i (l ) denotes the number of clauses of size i where the literal l appears.

• α and β are two parameters fixed empirically 18 .

The heuristic chooses the variable v with maximal vector scor e(v) under the lexicographic order. Furthermore, v is affected to Tr ue if 1≤i ≤n h i (v) ≥ 1≤i ≤n h i (v), and to F al se otherwise.

Maximum Occurrences on Minimum Sized Clauses (MOMS) [ZM88; Dub+93;

Pre93] This heuristics associates to each variable v ∈ V the following score:

scor e(v) = h(v) + h(v) + α * mi n(h(v), h(v))
where:

• h(l ) denotes the number of occurrences of literal l in the shortest clauses.

• α is a parameters fixed empirically 19 .

Literal Count Heuristics [Sil99]

These heuristics implemented in the GRASP solver [Mar95; SS96] associate to each variable v ∈ V a score as in JW where:

• o ∈ {max, sum}. If o = max, we are dealing with the Dynamic Largest Individual Sum (DLIS), otherwise we are dealing with Dynamic Largest Combined Sum (DLCS).

• h(l ) denotes the number of unresolved clauses in which l appears and can be used to choose the truth value of the selected variable by comparing h(v) and h(v).

Note that literal count heuristics were also augmented by a random component to decrease their greediness in [START_REF] João | The Impact of Branching Heuristics in Propositional Satisfiability Algorithms[END_REF].

Many following heuristics were strongly inspired by those above. Such heuristics were look-ahead by design as they mainly aimed to assess the impact of branching on the search. Although these heuristics may lead to accurate choices, they usually require high resources in term of computation time and storage space. Furthermore, these heuristics mainly targeted random instances, on which they were evaluated. Hereafter, we present the main look-ahead heuristics in the literature.

Look-Ahead MOMS Variations [Fre95; CA96; LA97b]

There are several variants of the MOMS heuristic that opted for a more look-ahead approach aiming to evaluate the number of propagations that would be caused by a branching choice. These variations used UP extensively [START_REF] William | Improvements to propositional satisfiability search algorithms[END_REF][START_REF] Crawford | Experimental results on the crossover point in random 3-SAT[END_REF] or relied on composite approaches [START_REF] Chu | Heuristics Based on Unit Propagation for Satisfiability Problems[END_REF] to evaluate the variables. A slightly different scoring function was introduced in [START_REF] William | Improvements to propositional satisfiability search algorithms[END_REF] where, given a natural number k20 , a variable v ∈ V is scored as follows:

scor e(v) = h(v) + h(v) + 2 k * h(v) * h(v)
Backbone Heuristics [DD01; DD04] These heuristics aimed to branch on variables which are likely to be in the backbone21 . To this end, the heuristic in [START_REF] Dubois | A Backbone-Search Heuristic for Efficient Solving of Hard 3-SAT Formulae[END_REF] for 3-SAT scored each variable v ∈ V as follows:

scor e(v) = h(v) * h(v) s.t . h(l ) = (l 1 ∨l 2 )∈I (v) (2p 1 (l 1 ) + p 2 (l 1 )) * (2p 1 (l 2 ) + p 2 (l 2 ))
where:

• I (v) is the set of all binary clauses derived from ternary22 clauses of the current formula such that each of these binary clauses assigned to False implies v either directly or by virtue of certain unit clauses having the value False.

• For a given literal t , p 1 (t ) and p 2 (t ) denote respectively the number of unit and binary clauses in φ | t where φ is the current formula.

Note that the above estimation is computed on a single level but can be done on multiple levels as specified in [START_REF] Dubois | A Backbone-Search Heuristic for Efficient Solving of Hard 3-SAT Formulae[END_REF]. This heuristic was also extended for k-SAT with k ≥ 3 in [START_REF] Dequen | kcnfs: An Efficient Solver for Random k-SAT Formulae[END_REF].

Recursive Weight Heuristic [MDH10; AF10]

This heuristic originally intended for 3-SAT in [START_REF] Mijnders | Symbiosis of search and heuristics for random 3-SAT[END_REF] and extended to k-SAT in [START_REF] Athanasiou | Recursive weight heuristic for random k-sat[END_REF] computes the scores (or weights) of the variables by updating them recursively in each iteration. Given a variable v ∈ V and an iteration i , the score is defined as follows:

scor e(v) = max(h i (v), h i (v)) s.t . h i +1 (l ) = (l ∨l 1 ∨l 2 )∈φ h i (l 1 ) * h i (l 2 ) µ i + γ l ∨l 1 h i (l 1 ) µ i
where:

• For a literal l , h i (l ) is initialized to 1 (when i=0) and can be used to chose a truth value for the best variable by comparing h(v) and h(v).

• µ = 1 2n x∈v ar (φ) (h i (x) + h i (x))
is the average value used to scale the h i (l ) values at each step.

• γ is an empirically-fixed parameter expressing the relative importance of binary clauses 23 .

It is worth noting that this heuristic can be considered as a generalization of the heuristics in [LA97b; Li99; DD01].

The advent of CDCL and the emerging of Artificial Intelligence (AI) in the 2000s led to ever increasing demands in terms of robust and effective heuristics. Furthermore, since choosing the optimal literal to branch on was shown NP-difficult in [START_REF] Liberatore | On the complexity of choosing the branching literal in DPLL[END_REF] and solvers were required to deal with larger formulas, modern heuristics were designed in cohesion with the CDCL framework while opting for a look-back approach in which the variables are evaluated through the information accumulated during previous search with minimal consumption of resources. Such heuristics also follow the fail-first principle which states that "to succeed, try first where you are most likely to fail" [START_REF] Haralick | Increasing tree search efficiency for constraint satisfaction problems[END_REF].

One particular heuristic which reshaped the SAT heuristics landscape is the Variable State Independent Decaying Sum (VSIDS) which was implemented in the Chaff solver [START_REF] Moskewicz | Chaff: Engineering an Efficient SAT Solver[END_REF]. After more than two decades since its introduction, VSIDS is still the dominant heuristic used in reference solvers (e.g., MiniSat [START_REF] Eén | An Extensible SAT-solver[END_REF], Glucose [START_REF] Audemard | Predicting Learnt Clauses Quality in Modern SAT Solvers[END_REF] and Cadical [START_REF] Biere | Treengeling, YalSAT Entering the SAT Competition 2017[END_REF]) and competitive solvers (e.g., MapleCOMSPS [START_REF] Hui Liang | MapleCOMSPS, MapleCOMSPS_LRB, Maple-COMSPS_ CHB[END_REF], Maple_LCM [START_REF] Xiao | A branching heuristic for SAT solvers based on complete implication graphs[END_REF], Cadical [START_REF] Biere | Treengeling, YalSAT Entering the SAT Competition 2017[END_REF] and Kissat [START_REF] Biere | CaDiCaL, Kissat, Paracooba, Plingeling and Treengeling Entering the SAT Competition 2020[END_REF]) alike, although with some variations. It is worth noting that VSIDS was introduced alongside the Watched Literals (WL) lazy data structure described in Section 2.2.1.3.1, and was therefore adapted to the lack of knowledge on the accurate dynamic size of a clause during the search which renders most of the heuristics described above unusable. Another recent heuristic which seems competitive with VSIDS is the Conflict History-Based (CHB) branching heuristic [START_REF] Hui Liang | Exponential Recency Weighted Average Branching Heuristic for SAT Solvers[END_REF]. We introduce below these two major heuristics and their variants as well as some other heuristics in the literature. Note that modern solvers maintain a priority queue24 in which unassigned variables are sorted with respect to their scores.

Variable State Independent Decaying Sum (VSIDS) [Mos+01]

This heuristic introduced in the Chaff solver maintains a score, also called activity, for each variable which is initialized to 0 at the beginning of the search and is used to chose the next branching variable. Two operations are periodically performed on the activity score:

• Bump: after each conflict, the score of the variables in the learned clause is incremented, typically by 1

• Decay: all the scores are multiplied by a decay factor 0 < f < 1 periodically, i.e., after m conflicts25

Another variant of VSIDS, more commonly used in modern solvers, is the version introduced in MiniSat [START_REF] Eén | An Extensible SAT-solver[END_REF] in which the scores of the variables in all the clauses involved in conflict analysis (i.e., clauses which were resolved including the conflicting clause) are bumped 26 . Furthermore, in this variant, the score decay is performed at each conflict27 .

Another implementation feature of VSIDS decay in MiniSat is bumping the variable scores with larger numbers until they reach a certain limit28 after which they are scaled down. The Normalised VSIDS (NVIDS) variant, introduced in [START_REF] Biere | Adaptive Restart Strategies for Conflict Driven SAT Solvers[END_REF] and implemented in the Lingeling solver [START_REF] Biere | Lingeling, plingeling, picosat and precosat at sat race 2010[END_REF], represents an exponential moving average on how often a variable occurred in antecedents of learned clauses. To this end, given the decay factor f , the score of all the variables are decayed after each conflict including the variables involved in the conflict whose scores are bumped (and decayed) as follows:

scor e(v) = f * scor e(v) + (1 -f )
The Exponential VSIDS (EVSIDS) variant was also introduced in [START_REF] Biere | Adaptive Restart Strategies for Conflict Driven SAT Solvers[END_REF] and aimed to offset the NVSIDS disadvantage of updating all the variable scores at each conflict. Inspired by MiniSAT's sclaing, EVSIDS maintains an exponential increasing score increment g i (v) where g = 1/ f and i (v) denotes the conflict index of variable v, i.e., the number of conflicts when a variable was last bumped. Variable scores and the score increment can also be rescored occasionally. As such, only scores of variables that are involved in the conflict need to be updated as follows:

scor e(v) = scor e(v) + g i (v)
Finally, the Average Conflict-Index Decision (ACIDS) variant introduced in [START_REF] Biere | Evaluating CDCL Variable Scoring Schemes[END_REF] ensures that the influence of earlier conflicts decreases exponentially with respect to the bumping steps. Given a variable v ∈ V , the score is updated as follows:

scor e(v) = (scor e(v) + i (v))/2
Berkmin's Heuristic [GN02; GN07] This heuristic introduced in the Berkmin solver branches on the unassigned variable in the most recently learned clause that is not yet satisfied by the current assignment. VSIDS is used as an auxiliary heuristic to pick a variable when no such clause exists or to choose one among unassigned variables otherwise. Berkmin introduced the following variation to VSIDS: the scores of all the variables involved in the conflict are bumped with respect to their occurrence in the resolved clauses including the conflicting clause.

Variable Move-To-Front (VMFT) [START_REF] Ryan | Efficient algorithms for clause-learning SAT solvers[END_REF] This heuristic implemented in the Siege solver 29 simply moves a subset of the variables in each learned clause to the front of the decision queue. The size of this subset is a small constant m30 and the variables are positioned arbitrarily at the front of the queue. This heuristic does not necessarily require associating scores to variable. However an efficient implementation is described in [START_REF] Biere | Evaluating CDCL Variable Scoring Schemes[END_REF] where variables are simply scored by their conflict index. the MapleCOMSPS solver [START_REF] Hui Liang | MapleCOMSPS, MapleCOMSPS_LRB, Maple-COMSPS_ CHB[END_REF], is based on the Exponential Recency Weighted Average (ERWA)31 [START_REF] Sutton | Reinforcement learning -an introduction[END_REF] and favors the variables involved in recent conflicts as in VSIDS. CHB maintains a score (or activity) for each variable v ∈ V , initially set to 0. The score is updated when a variable is branched on, propagated, or asserted using ERWA as follows:

scor e(v) = (1 -α) × scor e(v) + α × r (v)
The parameter 0 < α < 1 is the step-size, initially set to 0.4 and decayed by 10 -6 after every conflict to a minimum of 0.06. r (v) is the reward value for variable v which can decrease or increase the likelihood of picking v. Higher rewards are given to variables involved in recent conflicts according to the following formula:

r (v) = mul t i pl i er C on f l i c t s -l astC on f l i c t (v) + 1
where C on f l i c t s denotes the number of conflicts that occurred since the beginning of the search and l astC on f l i c t (v) is updated to the current value of C on f l i c t s whenever v is present in the clauses involved in conflict analysis. mul t i pl i er is set to 1.0 when branching, propagating or asserting the variable that triggered the score update lead to a conflict, otherwise it is set to 0.9. The idea is to give extra rewards for variables producing a conflict.

A recent variant of CHB called the Learning Rate Branching (LRB) heuristic was introduced in [START_REF] Hui Liang | Learning Rate Based Branching Heuristic for SAT Solvers[END_REF]. This variant uses a more refined reward function which favors the variables that contributed the most in recent conflicts. Whenever a variable is unassigned through backtracking its score is updated using ERWA as in CHB but using a different reward function defined as follows:

r (v) = nbC on f l i c t s(v) ag e(v)
where:

• ag e(v) denotes the number of conflicts encountered in the period between the assignment of a value to v and its unassignment during backtrack.

• nbC on f l i c t s(v) denotes the number of conflicts in which the variable v is involved during the same period.

This variant also included a decay component where the scores of unsigned variables are decayed by a factor 0 < f < 1 after each conflict 32 . The intuition behind the LRB heuristic is 2 Satisfiability -2.2 Algorithms that a free variable contributing to most conflicts during the period in which it was assigned a value is likely to help derive new conflicts quickly if it is assigned again.

Distance Heuristic [START_REF] Xiao | A branching heuristic for SAT solvers based on complete implication graphs[END_REF] This heuristic used in the Maple_LCM solver [START_REF] Xiao | A branching heuristic for SAT solvers based on complete implication graphs[END_REF] relies on the longest distance between a variable and the conflict in the implication graph to update the score, rather than its simple presence. The score of each variable v in the implication graph, initially set to 0, is updated after each conflict as follows:

scor e(v) = scor e(v) + i nc Di st (v) where:

• i nc is initialized to 1 and decayed after each conflict using a decay factor 0 < f < 133 .

• Di st (v) denotes the number of vertices in the longest path from a node containing v to the conflict node.

Since this heuristic requires more computations to calculate the distances, it is intended to be used at the beginning of the search process when there are very few conflicts34 .

LBD-Based Heuristics [CWX17; CXC19; CMY19] These heuristics use the Literal

Block Distance (LBD) measure35 of the learnt clauses to score the variables. For instance, the heuristic in [START_REF] Chang | A New Rewarding Mechanism for Branching Heuristic in SAT Solvers[END_REF] updates the scores of the variables involved in the conflict as follows:

scor e(v) = scor e(v) + 1

LB D + 1
BT L where:

• LB D denotes the literal block distance of the learnt clause.

• BT L denotes the backtrack level.

We finish this section by referring the reader to different studies evaluating and comparing modern branching heuristics [JN08; Lia+15; BF15; Lia+18a].

Managing Learnt-Clauses Database

Learning all the clauses produced by conflict analysis in CDCL can be impractical as it can lead to an exponential growth of the number of recorded clauses, therefore exhausting all the available memory space. To maintain a learnt-clauses database of reasonable size, modern solvers employ reduction and deletion strategies based on different measures to estimate the quality of learnt clauses. The clauses that are deemed irrelevant with respect to those measures are deleted from the learnt-clauses database.

One of the first measures used to evaluate learnt clauses is their size, as in the Grasp solver [START_REF] Marques-Silva | Search algorithms for satisfiability problems in combinational switching circuits[END_REF][START_REF] João | GRASP -a new search algorithm for satisfiability[END_REF]. More specifically, GRASP keeps the clauses whose size is less than a given threshold k while discarding larger clauses as soon as the number of unassigned literals in them is greater than one. A different measure, called activity and inspired by the VSIDS branching heuristic in Chaff [START_REF] Moskewicz | Chaff: Engineering an Efficient SAT Solver[END_REF], was introduced in the Berkmin solver [START_REF] Goldberg | A Fast and Robust Sat-Solver, 2002 Design[END_REF] and later used in MiniSat [START_REF] Eén | An Extensible SAT-solver[END_REF]. A weight, referred to as activity, is associated with each learnt clause and is bumped and decayed similarly to variables at each conflict. In [START_REF] Audemard | Predicting Learnt Clauses Quality in Modern SAT Solvers[END_REF], the authors introduce the Literal Block Distance (LBD) Measure in the Glucose solver, which is defined as the number of distinct decision levels within a learnt clause. In particular, the clauses whose LBD is 2, called glue clauses, contain one variable of the last decision level and are always kept permanently in the database. In recent modern solvers, clauses whose LBD is below a given threshold are usually kept longer or permanently in the learnt-clauses database [START_REF] Oh | Improving SAT solvers by exploiting empirical characteristics of CDCL[END_REF]. Note that the LBD measure can be dynamically updated during the search whenever a learnt clause is used in UP [START_REF] Audemard | Predicting Learnt Clauses Quality in Modern SAT Solvers[END_REF][START_REF] Sonobe | Looking Inside Literal Blocks: Towards Mining More Promising Learnt Clauses in SAT Solving[END_REF]. Other less commonly used measures were also introduced in [Jab+14; Guo+14; Ans+15a].

The general scheme used in most modern CDCL solver to reduce the learnt-clauses database size is to sort the set of learned clauses with respect to a given measure 36 and then delete half of the learned clauses. It is important to note that the efficiency of most database-management strategies heavily depends on the reduction frequency and on the amount of deleted clauses. Very few other database reduction schemes were designed for CDCL solvers such as the one in [START_REF] Lonlac | Towards Learned Clauses Database Reduction Strategies Based on Dominance Relationship[END_REF] which attempts to circumvent the problem of choosing a specific amount of clauses to delete at each step. Finally, other minimisation techniques, aiming to reduce the size of learnt clauses, are also extensively used in modern solvers [BKS04; SB09; HJS10b; Luo+17b].

Restarts

The restart mechanism is an important component of modern CDCL solvers which was introduced to deal with the heavy-tailed phenomena in SAT [START_REF] Gomes | Heavy-tailed phenomena in satisfiability and constraint satisfaction problems[END_REF]. This phenomena is characterized by the non-negligible probability of an exponential increase in solving time when encountering a difficult problem in a specific part of the search space [GSC97; GSK98]. To deal with this phenomena, we can frequently restart the search somewhere else in the search space and thus avoid heavy-tailed behaviors of SAT solvers. At each restart, the solver would undo all the assignments and restart the search anew at the root of the search tree. Note however that some acquired information is usually maintained after a restart such as the learnt clauses and the variable scores. Furthermore, the restarts are performed when a specific cutoff value is reached, usually represented by the number of allowed conflicts per restart. The restart mechanism used in the earlier CDCL solvers was usually coupled with randomization applied to branching heuristics therefore ensuring that different parts of the search space were visited with high probability in each restart [SS96; GSK98; Mos+01; GN02]. Such simple mechanisms yielded considerable improvements on random and real-world instances, including unsatisfiable ones [GSK98; BM00].

To ensure completeness, the cutoff value would be iteratively increased in each restart originally in the form of an arithmetic sequence. However, other strategies are more commonly used in recent modern solvers. One of these well-known strategies is geometric restarts where a geometric sequence is used to increase the base cutoff [START_REF] Walsh | Search in a Small World[END_REF]. Another strategy relies on a different sequence called the Luby sequence [START_REF] Luby | Optimal speedup of Las Vegas algorithms[END_REF]. As defined below, the Luby sequence generates the following terms 1, 1, 2, 1, 1, 2, 4, 1, 1, 2, 1, 1, 2, 4, 8, . . . which are multiplied by the base cutoff value. Since the cutoff value is usually small37 , using the Luby sequence entails more frequent restarts compared to a geometric one. Most recent modern solvers use Luby restarts as it was shown that it is the best standalone restart policy in [START_REF] Huang | The Effect of Restarts on the Efficiency of Clause Learning[END_REF][START_REF] Haim | Towards Ultra Rapid Restarts[END_REF]. Other strategies rely on the LBD values of the learnt clauses [START_REF] Audemard | Refining Restarts Strategies for SAT and UNSAT[END_REF][START_REF] Hui Liang | Machine Learning-Based Restart Policy for CDCL SAT Solvers[END_REF]. For instance, the strategy in [START_REF] Audemard | Refining Restarts Strategies for SAT and UNSAT[END_REF] used in the Glucose solver triggers a restart when the recently produced clauses have high LBDs and is most effective on unsatisfiable instances. More specifically, a restart is performed when the average LBD value in the last X conflicts multiplied by a factor f ∈]0, 1[ is higher then the LBD average of all the deduced learnt clauses. Definition 2.9 (Luby Sequence [START_REF] Luby | Optimal speedup of Las Vegas algorithms[END_REF]). Given a natural number k, the Luby sequence is defined as follows:

t i = 2 k-1 if i = 2 k -1 t i -2 k-1 +1 if 2 k-1 ≤ i < 2 k -1
The study in [START_REF] Li | Towards a Complexity-Theoretic Understanding of Restarts in SAT Solvers[END_REF] investigates the theoretical power of restarts and proves that CDCL augmented with this mechanism can be exponentially faster on a particular class of satisfiable instances. Additional techniques involving the restart mechanism include phase saving [START_REF] Pipatsrisawat | A Lightweight Component Caching Scheme for Satisfiability Solvers[END_REF] and target phases [START_REF] Biere | Chasing target phases[END_REF]. The former simply saves and reassigns the same truth values to variables after restarts while the latter is an extension aiming to increase the likelihood of generating models by saving promising assignments derived by the solver. In [AS12; Oh15; BF19], it was shown that modern solvers could have different behaviors on satisfiable and unsatisfiable instances depending on the chosen restart policy. This observation could be exploited to enhance a solver's performance on either satisfiable or unsatisfiable instances or on both types of instances by using a hybrid strategy. For example, Glucose's restart policy combines LBD-based restarts while blocking fast (Luby) restarts when approaching complete assignments [START_REF] Audemard | Refining Restarts Strategies for SAT and UNSAT[END_REF]. The solvers Cadical and Kissat also implement a hybrid strategy in which they alternate between a focused mode with Glucose-style fast restarts targeting unsatisfiable instances and a stable mode with fewer restarts targeting satisfiable instances [START_REF] Biere | Chasing target phases[END_REF]. Both solvers also use a hybrid branching scheme in which VMTF [START_REF] Ryan | Efficient algorithms for clause-learning SAT solvers[END_REF] and EVSIDS [START_REF] Biere | Adaptive Restart Strategies for Conflict Driven SAT Solvers[END_REF] are respectively used in focused and stable modes, in the spirit of the MIRA solver [START_REF] Matthew | Speedup Techniques Utilized in Modern SAT Solvers[END_REF]. The solver MapleCOMSPS [START_REF] Hui Liang | MapleCOMSPS, MapleCOMSPS_LRB, Maple-COMSPS_ CHB[END_REF] similarly uses a hybrid branching scheme by blocking the restart-cutoff increases to alternate CHB [START_REF] Hui Liang | Exponential Recency Weighted Average Branching Heuristic for SAT Solvers[END_REF] (or LRB [START_REF] Hui Liang | Learning Rate Based Branching Heuristic for SAT Solvers[END_REF]) phases and VSIDS phases in a round-robin fashion.

Enhanced Inference and Processing

Modern SAT solvers use powerful techniques aiming to infer information from the formula or to simplify it by reducing the number of clauses, literals or variables [START_REF] Biere | Preprocessing and Inprocessing Techniques in SAT[END_REF][START_REF] Wotzlaw | Effectiveness of pre-and inprocessing for CDCL-based SAT solving[END_REF]. Unit propagation (UP), Pure Literals (PL) and clause learning introduced in Sections 2.2.1.1 and 2.2.1.2 are major examples showing how such techniques can dramatically enhance the efficiency of SAT solvers. Similarly, many other techniques, attempting to balance the trade-off between the amount of achieved inference/simplification and the resources invested in them, were introduced in the literature. These techniques can be categorized into preprocessing and inprocessing techniques, applied respectively before and during the search, although many would fall into both categories. In addition, the inference entailed by these different mechanisms should be sound for SAT by ensuring equivalence 38 or a less constrained form of soundness defined below, called equisatisfiability. It is worth noting that using such techniques became popular with the success of the SatELite preprocessor 39 [EB05] which would later be integrated into MiniSat 2. Following MiniSat's footsteps, recent modern solvers also integrate a variety of techniques to optimize their performance. Definition 2.10 (Equisatisfiability). Let φ and φ be two formulas. φ is equisatisfiable to φ if we have: φ satisfiable if and only if φ satisfiable.

A well-known generic simplification technique is the elimination of redundant clauses [START_REF] Fourdrinoy | Eliminating Redundant Clauses in SAT Instances[END_REF][START_REF] Han | On-the-Fly Clause Improvement[END_REF]. Intuitively, a redundant clause represents information that can be derived from the rest of the formula. Eliminating such clauses therefore produces a smaller size equivalent formula. In its simpler form, this technique would consist in deleting duplicated, tautological, or subsumed clauses. However, more complex forms exist such as self-subsuming resolution [START_REF] Eén | Effective Preprocessing in SAT Through Variable and Clause Elimination[END_REF] which eliminates clauses subsumed by resolvents obtained through the application of the resolution rule 40 [START_REF] Alan | A Machine-Oriented Logic Based on the Resolution Principle[END_REF][START_REF] Heule | Clause Elimination Procedures for CNF Formulas[END_REF].

Another redundancy-based technique is the elimination of blocked clauses [JBH10; Bal+14; Kie+18]. Informally, a clause C is blocked if it contains a literal l such that all possible resolvents derived from C with another clause in the formula by resolution on v ar (l ) are tautologies [START_REF] Kullmann | On a generalization of extended resolution[END_REF]. This technique generalizes failed-literal probing [Fre95; Le 01] which is extensively used in SAT solvers as it can enhance the power of UP in inferring literals that must be satisfied in the current formula. More specifically, when UP is not applicable, we can check if assigning a literal l leads to a conflict, in which case the literal l should be satisfied and can be propagated in the current formula. Other extensions of this technique include clause vivification [PHS08; Li+20a] and distillation [START_REF] Jin | An Incremental Algorithm to Check Satisfiability for Bounded Model Checking[END_REF][START_REF] Han | Alembic: An Efficient Algorithm for CNF Preprocessing[END_REF].

Bounded variable elimination [EB05; SP05; RH21] uses the original Davis-Putnam (DP) procedure in [START_REF] Davis | A Computing Procedure for Quantification Theory[END_REF] to remove variables from the formula. This technique consists in simply applying the resolution rule on all the clauses opposed on a given variable v to derive all the non-tautological resolvents while deleting all the clauses containing v. To prevent exponential blow-up in the number of clauses, variables are only eliminated if the number of derived clauses is less than the number of deleted clauses. Finally, to be 38 refer to Definition 1.17 exhaustive, we mention some other techniques related with variable elimination such as the detection of functional dependencies between variables [Ost+02; Gré+05; OP09; Ise20] or the elimination of hidden literals (i.e., implying other literals in the same clause) [START_REF] Marijn | Efficient CNF Simplification Based on Binary Implication Graphs[END_REF].

Other methods

In this section, we overview other complete algorithms for SAT solving. One particular family of algorithms in the literature relies on parallel solving [START_REF] Balyo | Parallel Satisfiability[END_REF]. Parallel solvers for SAT can be divided into two main categories: portfolio and divide-and-conquer algorithms. The underlying idea behind the portfolio approach is to rely on multiple CDCL-based SAT solvers equipped with different strategies and settings to solve an instance. Indeed, a standalone solver (or solver instance with a specific setting) might perform well on a given set of instances while struggling or even drastically failing on another. Since it is difficult to predict a solver's performance on a specific instance, launching many competitive solvers in parallel on different processors to deal with the same instance may lead to more efficient solving. Once a solver terminates, its result is reported and all other solvers are terminated. State-of-the-art solvers based on this approach include ManySAT [HJS10a], Glucose-Syrup [START_REF] Audemard | Lazy Clause Exchange Policy for Parallel SAT Solvers[END_REF], HordeSAT [START_REF] Balyo | HordeSat: A Massively Parallel Portfolio SAT Solver[END_REF] and Plingeling [Bie10a; Bie+20] among others.

The second category of algorithms, i.e., divide-and-conquer, splits the search space into partitions which are solved in parallel. Such methods have been applied in the 1990s on the DPLL framework [START_REF] Böhm | A fast parallel SAT-solver -efficient workload balancing[END_REF][START_REF] Zhang | PSATO: A Distributed Propositional Prover and Its Application to Quasigroup Problems[END_REF]. A recent known variant paradigm of divide-andconquer, which can be applied on CDCL, is the cube-and-conquer algorithm [START_REF] Marijn | Cube and Conquer: Guiding CDCL SAT Solvers by Lookaheads[END_REF]. The problem is divided into many sections called cubes through a look-ahead solver. Intuitively, cubes are conjunctions of subsets of variables of the original formula that can be solved independently by CDCL solvers. The problem is then tackled using the cubes to guide the search. Solvers that fall within the divide-and-conquer category include Treengeling [START_REF] Biere | Lingeling and friends entering the SAT Challenge 2012[END_REF], MapleAmpharos [START_REF] Nejati | A Propagation Rate Based Splitting Heuristic for Divide-and-Conquer Solvers[END_REF] and P-CLONE-FLIPS [Le +19], which is based on the Painless framework [Le +17]. Finally, it is worth noting that state-of-the-art solvers in both concurrent categories rely on different clause-sharing techniques [Guo+10; Laz+12; HJS12; AS14; Val+20; PSM21].

Other complete methods for SAT solving include hybrid algorithms which boost DPLL/CDCL solvers through incomplete local search methods which will be presented in the following section. For example, the DPLL framework is augmented with a call to a local search algorithm at each node in [START_REF] Mazure | Boosting Complete Techniques Thanks to Local Search Methods[END_REF][START_REF] Habet | A Hybrid Approach for SAT[END_REF]. A local search solver is also called to incrementally identify subformulas which are solved by CDCL in [START_REF] Letombe | Improvements to Hybrid Incremental SAT Algorithms[END_REF]. More recently, the solvers CaDiCaL and Kissat call a local search solver to produce a promising assignment used for target phases [START_REF] Biere | Chasing target phases[END_REF]. A deeper cooperation between CDCL and local search is proposed in [START_REF] Cai | Deep Cooperation of CDCL and Local Search for SAT[END_REF][START_REF] Cai | Better Decision Heuristics in CDCL through Local Search and Target Phases[END_REF] to improve target phases, rephasing and branching. Finally, other solving paradigms can be used to solve SAT although this is not common as satisfiability is a powerful formalism with highly efficient dedicated solvers. Nevertheless, one can exploit more generic formalisms with more powerful expressiveness and inference such as the recent work in [START_REF] Ansótegui | Reducing SAT to Max2SAT[END_REF] which relies on reduction from SAT to Max-2-SAT41 .

Incomplete Methods

Unlike complete solvers which are based on exhaustive branching and backtracking search, incomplete methods are mainly based on Stochastic Local Search (SLS) [START_REF] Gu | Efficient Local Search for Very Large-Scale Satisfiability Problems[END_REF]. For some problems and specifically for randomly generated satisfiable instances, incomplete methods for SAT can significantly outperform DPLL-based methods. In this section, we first introduce the general outline of an SLS algorithm for SAT. Then, we present the two major SLS architectures in the literature, namely GSAT [START_REF] Selman | A New Method for Solving Hard Satisfiability Problems[END_REF] and WalkSAT [START_REF] Selman | Noise Strategies for Improving Local Search[END_REF]. Furthermore, we introduce the main metaheuristics used to enhance the performance of modern local search SAT solvers. Finally, to be exhaustive, we briefly overview other less common incomplete methods.

Stochastic Local Search

Stochastic Local Search (SLS) methods for SAT [Gu92; SLM92], whose outline is described in Algorithm 2.3, seek to improve an initial random assignment of the formula with respect to a cost function through a sequence of simple steps, called flips, which aim to locally repair the current assignment. The cost (or objective/evaluation function), defined below, is used to evaluate each assignment α and is usually set to the number of clauses falsified by α. As such, SLS algorithms for SAT aim to optimize the cost of an assignment α until it reaches a global optimum, defined below. Clearly, in case the global optimum cost α (φ) = 0 is achieved, then α is a satisfying assignment of the formula φ and is returned by the algorithm (lines 4-5).

Definition 2.11 (Cost).

Let φ be a CNF formula and α be an assignment of φ. The cost of α is defined as follows:

cost α (φ) = |{C ∈ φ |C | α = }|
Definition 2.12 (Global Optimum). Let φ be a CNF formula, A be the set of all possible complete assignments of φ and α be an assignment in A . cost α (φ) is a global optimum of the cost function if we have:

∀α ∈ A , cost α (φ) ≤ cost α (φ)
To optimize the current assignment, SLS goes through an intensification phase in which only neighboring assignments can be visited in each step. The set of neighbors of an assignment, defined below, consists of the assignments that differ in exactly one literal. The assignment to be visited in this neighborhood is determined through the choice of a variable, whose truth value is flipped to obtain the new assignment (lines 7-8). Definition 2.13 (Assignment Neighborhood). Let φ be a CNF formula and A be the set of all possible complete assignments of φ. The neighborhood of an assignment α ∈ A is defined as follows: x ←-C hoose_V ar i abl e(φ, α)

N (α) = {α ∈ A | |α ∩ α | = |α| -1} Algorithm
8:
α ←-α with truth value of x flipped 9:

end for 10: end for 11: return UNKNOWN Definition 2.14 (Flip). Let φ be a CNF formula, α be an assignment of φ and v be a variable of φ. A flip step on v produces the assignment α ∈ N (α) defined as follows:

α = (α \ {l }) ∪ {l } where l is the literal in α s.t. v ar (l ) = v.
Note that the intensification phase could lead to a local optimum. Informally, a local optimum corresponds to an optimal cost within a restricted region of the search space such that visiting neighboring assignments can only degrade the cost function. To avoid getting stuck in local optima, SLS goes through a diversification phase by restarting the search to visit other parts of the search space (lines 1-2) or by diversifying variable choices. Ensuring a good trade-off between intensification and diversification is necessary in devising efficient SLS algorithms. It is worth mentioning that random restarts in SLS inspired the restart mechanism used in modern complete solvers introduced in Section 2.2.1.3.4.

Definition 2.15 (Local Optimum). Let φ be a CNF and α be an assignment of φ. cost α (φ) is a local optimum of the cost function if we have:

∀α ∈ N (α), cost α (φ) ≤ cost α (φ)
SLS algorithms mainly differ in the way they choose variables to be flipped. In the next sections, we present the two main SLS architectures for SAT then we overview some well-known metaheuristics that are incorporated into SLS algorithms.

SLS Architectures

Two major SLS architectures were introduced for SAT, namely GSAT and WalkSAT. These architectures are in fact basic SLS algorithms which are at the heart of every SLS solver. The GSAT algorithm [START_REF] Selman | A New Method for Solving Hard Satisfiability Problems[END_REF], introduced earlier in 1992, tries to minimise the number of unsatisfied clauses by a greedy descent in the space of variable assignments. Variable selection in GSAT is based on the score of a variable v under the current assignment α, which is defined as follows:

scor e(v) = br eak(v) -make(v)
where br eak(v) and make(v) denote the number of clauses unsatisfied respectively by α and the assignment obtained by flipping v in α. In each local search step, one of the variables with maximal score is flipped. Random selection with uniform distribution is used when there are several variables with maximal score. The key to efficiently implementing GSAT is to evaluate the complete set of scores only once at the beginning of each try, and then after each flip to update only the scores of the variables which were possibly affected by the flipped variable. A well-known variant of this algorithm with more pronounced diversification in variable selection aiming to avoid getting stuck in local minima is GSAT with random walk (GWSAT) [START_REF] Selman | Noise Strategies for Improving Local Search[END_REF]. As its name suggests, GWSAT augments the variable selection heuristic in GSAT with a random walk step. In such a step, a currently unsatisfied clause C is first randomly selected. Then, one of the variables appearing in C is flipped, thus effectively forcing C to become satisfied. The basic idea of GWSAT is to decide at each local search step with a fixed probability w p, called walk probability or noise setting, whether to perform a standard GSAT step or a random walk step. Many SLS algorithms and/or solvers for SAT are based on the GSAT architecture such as

H(W)SAT [GW93; GWH95], G(W)SAT with Tabu search [MSG97; SSS97], Sparrow [BF10], G 2 SAT [LH05b],
TNM [START_REF] Chu | Exploiting Historical Relationships of Clauses and Variables in Local Search for Satisfiability[END_REF], sattime [START_REF] Chu | Satisfying versus Falsifying in Local Search for Satisfiability -(Poster Presentation)[END_REF], gNovelty+ [START_REF] Duc | Combining adaptive and dynamic local search for satisfiability[END_REF] as well as the configuration-checkingbased algorithms [CS11; LSC12; CS12; CS13b; Luo+14; CLS15a].

The WalkSAT architecture [START_REF] Selman | Noise Strategies for Improving Local Search[END_REF] is based on a two-stage variable-selection process which randomly chooses a currently unsatisfied clause C then selects one of its variables, as in the the random walk step of GWSAT. However, WalkSAT has two major differences. Firstly, the scoring function used by WalkSAT considers only the break values, i.e., the score of a variable v is simply br eak(v). Secondly, if there exists a variable v in C such that br eak(v) = 0, it is immediately selected. Indeed, flipping this variable would satisfy the clause C without falsifying another clause thus leading to a zero-damage flip. If no such variable exists, WalkSAT selects the variable having minimal score value with a probability w p similarly to GWSAT. Furthermore, in the remaining cases, a random walk flip is performed in which a variable in C is randomly chosen to be flipped. Major algorithms/solvers based on WalkSAT include Novelty and its variants [MSK97; Hoo99; LH05b; Ngh+08; AHT17] WalkSATlm [START_REF] Cai | Improving WalkSAT for Random k-Satisfiability Problem with k > 3[END_REF][START_REF] Cai | Improving WalkSAT By Effective Tie-Breaking and Efficient Implementation[END_REF] and ProbSAT [START_REF] Balint | Choosing Probability Distributions for Stochastic Local Search and the Role of Make versus Break[END_REF] among others. Finally, we refer the reader to the study in [START_REF] Holger | Local Search Algorithms for SAT: An Empirical Evaluation[END_REF] which includes an empirical evaluation of the standard algorithms mentioned above.

Metaheuristics

Like complete solvers, modern local search solvers for SAT incorporate a variety of techniques to enhance their performance. In this section, dedicated to these different techniques, we start by presenting some well-known metaheuristics relying on information acquired through the search. Then, we present clause weighting schemes employed in dynamic local search algorithms for SAT. Finally, we describe some search mechanisms used to adaptively set different parameters in SLS solvers.

History-Based Local Search

Recent SLS algorithms often include techniques that rely on information acquired through the search. One particular information that is used in a variety of algorithms is variable age, i.e., the number of steps since a variable has been flipped. For example, the Tabu mechanism [START_REF] Glover | Tabu Search-Part I[END_REF] which was combined with both GSAT and WalkSAT in [MSG97; SSS97; MSK97] uses this information to forbid reversing the effect of a flip move. More specifically, a variable cannot be flipped if its age is less than a given parameter, called Tabu tenure. In WalkSAT, if all the variables in the chosen unsatisfied clause are tabooed, another clause is chosen. If no such clause exists, the Tabu mechanism is temporarily ignored. The underlying idea behind this mechanism is to avoid the cycling problem in local search where candidate assignments which have been explored recently are constantly revisited again.

The HSAT algorithm [START_REF] Gent | Towards an Understanding of Hill-Climbing Procedures for SAT[END_REF], based on GSAT, uses variable age to break ties. When several variables with maximal score are identified, HSAT selects the oldest flipped variable. The intuition behind this algorithm is that some relevant variables which are often eligible to be chosen may not get flipped thus causing the search to stagnate. Breaking ties with respect to age also helps to alleviate the cycling problem. HSAT was also extended with GWSAT's random walk mechanism in [START_REF] Philip Gent | Unsatisfied Variables in Local Search[END_REF].

The Novelty algorithm [START_REF] Mcallester | Evidence for Invariants in Local Search[END_REF], a well-known variant of WalkSAT, also keeps track of the age of all flipped variables. After randomly choosing an unsatisfied clause as in WalkSAT, Novelty selects the best variable with respect to the break score only if it does not have minimum age. Otherwise, the second best variable is chosen with probability w p. Similarly to the Tabu mechanism, the intuition behind Novelty is to avoid repeatedly flipping the same variable back and forth. Many variations were introduced to Novelty. For example, the R-Novelty algorithm [START_REF] Mcallester | Evidence for Invariants in Local Search[END_REF] takes into account the difference in scores between the best and second best variables to choose a relevant one. Other variants include Novelty+ [START_REF] Holger | On the Run-Time Behaviour of Stochastic Local Search Algorithms for SAT[END_REF] and Novelty++ [START_REF] Chu | Diversification and Determinism in Local Search for Satisfiability[END_REF] among others [START_REF] Duc | Combining adaptive and dynamic local search for satisfiability[END_REF][START_REF] Abramé | Improving configuration checking for satisfiable random k-SAT instances[END_REF]. Given a randomly selected unsatisfiable clause C , Novelty+ simply picks a random variable in C with probability w p while Novelty++ picks the variable with minimal age in C and both use basic Novelty as a sub-procedure with probability 1w p otherwise.

Configuration Checking (CC), initially introduced in [CS11], is a powerful technique where a variable is tabooed with respect to the age of its neighboring variables. The neighborhood N (v) of a given variable v consists of all the variables which occur in at least one of the clauses containing v. The notion of configuration, formally defined below, is thus introduced for a variable by considering the restriction of an assignment α under its neighbors. The underlying idea of CC is to forbid flipping variables whose configurations has not been changed since their last flip. Intuitively, a variable can only be flipped if its age is higher than at least one of its neighbors'.

Definition 2.16 (Variable Neighborhood in CC [CS11]

). Let φ be a CNF formula, and v be a variable in φ. The neighborhood of v is defined as follows:

N (v) = {v ∈ v ar (φ) \ {v} | ∃c ∈ φ s.t. v, v

occur in c}

Definition 2.17 (Variable Configuration in CC [START_REF] Cai | Local Search with Configuration Checking for SAT[END_REF]). Let φ be a CNF formula, α be a complete assignment of φ and v be a variable in v ar (φ). The configuration of v is a vector CC v ∈ {0, 1} |N (v)| consisting of the truth values of all variables in N (v) under assignment α.

Many variations and extensions were introduced for the CC mechanism [LSC12; CS12; CS13b; Luo+14; CLS15a; AHT17]. The work in [START_REF] Luo | Improving Local Search for Random 3-SAT Using Quantitative Configuration Checking[END_REF] introduces Quantitative Configuration Checking (QCC) with variations on the notions of neighborhood and configuration. As defined below, the configuration is based on the state of the clauses (satisfied or not) with respect to an assignment. The same work also uses the quantity of variations within the configuration, i.e., the number of times the configuration changes smoothed over time, to break ties when choosing a variable. Definition 2.18 (Variable Neighborhood in QCC [START_REF] Luo | Improving Local Search for Random 3-SAT Using Quantitative Configuration Checking[END_REF]). Let φ be a CNF formula, and v be a variable in φ. The neighborhood of v is defined as follows:

N (v) = {C ∈ φ | v occurs in C } Definition 2.19 (Variable Configuration in QCC [LSC12]
). Let φ be a CNF formula, α be a complete assignment of φ and v be a variable in φ. The configuration of v is a vector CC v ∈ {0, 1} N (v) consisting of the states (satisfied or falsified) of all the clauses in N (v) under assignment α.

The Configuration Checking with Aspiration (CCA) algorithm described in [START_REF] Cai | Configuration Checking with Aspiration in Local Search for SAT[END_REF] extends CC with a greedy aspiration mechanism where variables whose flips can bring a considerable benefit have a chance to be selected even if they do not satisfy the CC criterion. In [START_REF] Cai | Local search for Boolean Satisfiability with configuration checking and subscore[END_REF], CCA is extended with a subscore property used to break ties on variable scores and mainly targeting k-CNF formulas with k > 3. The Double Configuration Checking with Aspiration (DCCA) strategy introduced in [Luo+14] employs a double CC scheme combining the two different notions of configuration introduced above based on variable and clause neighborhoods. The CC strategy was also incorporated within the Novelty framework in [START_REF] Abramé | Improving configuration checking for satisfiable random k-SAT instances[END_REF]. Finally, most recent state-of-the-art SLS solvers implement the CC strategy such as Swcc and its variants [CS11; LSC12; CS12], (D)CCASat [CS13b; Luo+14], Cscore-SAT [CS13a; CLS14] , CCAnr [START_REF] Cai | CCAnr: A Configuration Checking Based Local Search Solver for Non-random Satisfiability[END_REF] and Ncca+ [HTA13; AHT17]. In particular, the solver CCAnr42 based on the CCA strategy augmented with the preprocessor43 CP3 [START_REF] Manthey | Coprocessor 2.0 -A Flexible CNF Simplifier[END_REF] shows better performance on structured instances compared to other SLS solvers.

Dynamic Local Search

Dynamic Local Search (DLS) schemes for SAT, also called clause weighting schemes, associate a weight (or penalty) to each clause in the formula. Intuitively, the weight represents the difficulty of a clause as a constraint in the formula. Clause weights have a fixed initial weight, typically 1, and are dynamically adjusted during the search so as to penalize clauses which are difficult to satisfy within local minima. Unlike previously discussed algorithms and techniques which mainly rely on break and/or make scores of variables, clause weights are used to guide the search in DLS. More specifically, the variable which produces the greatest reduction in the sum of weights of unsatisfied clauses is flipped as first specified in [START_REF] Morris | The Breakout Method for Escaping from Local Minima[END_REF]. DLS algorithms differ primarily in the schemes used to adjust the clause weights. Two major schemes have emerged in the literature: additive and multiplicative weighting.

The first clause weighting methods [Mor93; SK93] relied on a purely additive scheme where the weights of unsatisfied clauses are incremented whenever the search encounters a local minimum, i.e., the objective function cannot be improved, or simply at the end of each try. Such methods allowed unrestricted weight growth during the search. In subsequent work, the Discrete Lagrangian Method (DLM) [START_REF] Wu | An Efficient Global-Search Strategy in Discrete Lagrangian Methods for Solving Hard Satisfiability Problems[END_REF] additionally decremented clause weights after a fixed number of increases while allowing zero-damage flips (called flat moves in [START_REF] Wu | An Efficient Global-Search Strategy in Discrete Lagrangian Methods for Solving Hard Satisfiability Problems[END_REF]). One of the best DLS schemes is the Pure Additive Weighting Scheme (PAWS) [START_REF] Thornton | Additive versus Multiplicative Clause Weighting for SAT[END_REF][START_REF] Thornton | Clause Weighting Local Search for SAT[END_REF] used in current state-of-the-art solvers. The major feature of PAWS is the use of a smoothing probability sp to decrement the clause weights during the search, otherwise the weights are incremented as in DLM.

Multiplicative weighting emerged with the Smoothed Descent and Flood (SDF) method for breaking ties between zero-damage flips. In the case where no improving flips are possible, SDF increases weights of unsatisfied clauses and then smooths clause weights so that the greatest cost difference between any two flips remains constant. Other works include the exponentiated subgradient algorithm in [START_REF] Schuurmans | The Exponentiated Subgradient Algorithm for Heuristic Boolean Programming[END_REF] which inspired the well-known Scaling And Probabilistic Smoothing (SAPS) scheme [START_REF] Hutter | Scaling and Probabilistic Smoothing: Efficient Dynamic Local Search for SAT[END_REF]. The additional characteristics of SAPS compared to the work in [START_REF] Schuurmans | The Exponentiated Subgradient Algorithm for Heuristic Boolean Programming[END_REF] are the periodic smoothing of weights with respect to a smoothing probability, which was later applied in PAWS, and their increase only for unsatisfied clauses within local minima.

The study in [START_REF] Thornton | Clause Weighting Local Search for SAT[END_REF] provides a more detailed overview of clause weighting schemes. It is worth noting that clause weighting, mainly in the form of the PAWS scheme, has been combined with state-of-the-art techniques including Configuration Checking (CC) within recent SLS solvers such as CCAsat [START_REF] Cai | Local search for Boolean Satisfiability with configuration checking and subscore[END_REF], CCAnr [START_REF] Cai | CCAnr: A Configuration Checking Based Local Search Solver for Non-random Satisfiability[END_REF] or Ncca+ [START_REF] Abramé | Improving configuration checking for satisfiable random k-SAT instances[END_REF]. Other works related to DLS also include switching between non-weighting, clause weighting, and variable weighting schemes as described in [START_REF] Wei | Switching among Non-Weighting, Clause Weighting, and Variable Weighting in Local Search for SAT[END_REF] or efficiently handling tie-breaking situations encountered in the landscapes of additive weighting [START_REF] Ferreira | Tie Breaking in Clause Weighting Local Search for SAT[END_REF].

Adaptive Local Search

State-of-the-art SLS solvers often rely on different parameters which can critically impact their performance [START_REF] Mcallester | Evidence for Invariants in Local Search[END_REF][START_REF] Holger | An Adaptive Noise Mechanism for WalkSAT[END_REF]. Although such parameters are usually fixed empirically, many studies introduced and investigated schemes in which their values are adaptively set during the search. For example, an adaptive noise mechanism for WalkSAT was introduced in [START_REF] Holger | An Adaptive Noise Mechanism for WalkSAT[END_REF]. Through this mechanism, the walk probability is increased during intensification phases to further guide the search with more greedy steps whereas it is decreased when there is stagnation in the cost function for a set period of search steps, thus further diversifying the search to escape local minima. This mechanism can be easily applied to other algorithms with a similar parameter such as the noise setting in GWSAT and can be combined with other metaheuristics such as Dynamic Local Search (DLS) as in [START_REF] Duc | Combining adaptive and dynamic local search for satisfiability[END_REF]. In particular, in the context of DLS and particularly the Scaling and Probabilistic Smoothing (SAPS) multiplicative scheme [START_REF] Hutter | Scaling and Probabilistic Smoothing: Efficient Dynamic Local Search for SAT[END_REF], the authors propose to adaptively tune the smoothing probability parameter during the search similarly to [START_REF] Holger | An Adaptive Noise Mechanism for WalkSAT[END_REF]. Such a mechanism can also be applied to the PAWS scheme as showcased in [START_REF] Thornton | Clause Weighting Local Search for SAT[END_REF].

Other Methods

One of the major challenges in terms of incomplete methods for SAT is to devise algorithms which are efficient on industrial instances. Indeed, SLS solvers in the literature lag far behind competitive CDCL-based SAT solvers in this regard, including the configuration-checkingbased local search solver CCAnr [START_REF] Cai | CCAnr: A Configuration Checking Based Local Search Solver for Non-random Satisfiability[END_REF] which is tailor-made for real-world instances. One research area that may circumvent this problem is devising hybrid algorithms which take advantage of the power of local search and CDCL. Note that many studies have incorporated techniques used in complete solvers into SLS. For instance, Unit Propagation (UP) was used to simplify the formula before the search in [START_REF] Chu | Satisfying versus Falsifying in Local Search for Satisfiability -(Poster Presentation)[END_REF][START_REF] Cai | CCAnr: A Configuration Checking Based Local Search Solver for Non-random Satisfiability[END_REF] or to generate a relevant initial assignment at the beginning of each try in [START_REF] Cai | Improving Local Search for Structured SAT Formulas via Unit Propagation Based Construct and Cut Initialization[END_REF]. UP was also used during search steps [LSB04; HK05] and within local minima [START_REF] Gableske | EagleUP: Solving Random 3-SAT Using SLS with Unit Propagation[END_REF]. Many attempts to devise efficient fully hybrid incomplete solvers were made in the literature. Examples of such solvers include hybridGM [START_REF] Balint | A Novel Approach to Combine a SLSand a DPLL-Solver for the Satisfiability Problem[END_REF] and SATHYS [START_REF] Audemard | Boosting Local Search Thanks to cdcl[END_REF] which call a CDCL solver in local minima. Other incomplete methods for SAT also include parallel local search [Rol02; AH11; BS18], simulated annealing [Spe93; Bee+94] and evolutionary algorithms [GV98; Lov15; Fu+18].

Behind the Success of SAT Solving

The theoretical difficulty of SAT has been established since the 70s as it was the first problem to be proven NP-complete in [START_REF] Cook | The Complexity of Theorem-Proving Procedures[END_REF]. Indeed, no polynomial algorithm has been devised for the SAT problem and it is highly plausible that no such algorithm exists. However, modern solvers are extremely efficient and manage to outstandingly solve formulas with millions of variables and clauses. Many studies have attempted to investigate this conflicting gap between the theoretical difficulty of SAT and the remarkable practical performance of modern solvers [START_REF] Nasser Alyahya | On the Structure of the Boolean Satisfiability Problem: A Survey[END_REF].

One of the first research directions aiming to shed the light on instance hardness is phase transitions [MSL92; LT92; GW94a; FB+99; XL99; ZPV10; BH22]. These transitions are distinguished by a sharp satisfiability threshold r k for random k-SAT formulas where k ≥ 2. This critical value represents a ratio of the number of clauses to the number of variables which characterizes an easy-hard-easy pattern in the median difficulty of the problems, with the hardest problems being close to r k . It was shown in [AM02; CP16] that for large values of k, the asymptotic order of the phase transitions threshold is r k ∼ (l n 2).2 k . Note that phase transitions are mainly studied on purely-random formulas although a recent study [START_REF] Ansótegui | Phase Transition in Realistic Random SAT Models 1[END_REF] investigated this feature for random formulas based on realistic models [START_REF] Ansótegui | Towards Industrial-like Random SAT Instances[END_REF][START_REF] Giráldez | Locality in Random SAT Instances[END_REF].

A second promising research area in this context is identifying traceable classes for the SAT problem such as 2-SAT [START_REF] Krom | The Decision Problem for a Class of First-Order Formulas in Which all Disjunctions are Binary[END_REF] and Horn-SAT [START_REF] Dowling | Linear-time algorithms for testing the satisfiability of propositional horn formulae[END_REF] 44 among many others [Lew78; CH91; BHS94; Sch+95]. The notion of Backdoor introduced in [WGS03] generalizes this concept with the underlying motivation that assigning a certain subset of the variables in the formula may produce a simplified formula within a tractable class and therefore which is easy to solve. Formally, a strong45 backdoor of a SAT instance is the set of variables which, however they are assigned, give a simplified formula which can be solved in polynomial time. Note that the polynomial sub-solver can be defined algorithmically, e.g., Unit Propagation (UP), or syntactically using an established tractable class. The size of strong backdoors is highly related to the hardness of SAT instances [START_REF] Lynce | Hidden Structure in Unsatisfiable Random 3-SAT: an Empirical Study[END_REF][START_REF] Kilby | Backbones and Backdoors in Satisfiability[END_REF]. The notion of backdoor was extended in the context of clause learning in [START_REF] Dilkina | Backdoors in the Context of Learning[END_REF], and it was shown that the smallest backdoors which take into account learning and branching can be exponentially smaller than traditional backdoors thus giving some insights on the additional power of clause learning in CDCL. Other extensions include deletion [START_REF] Nishimura | Solving #SAT Using Vertex Covers[END_REF], pseudo [08], recursive [START_REF] Mählmann | Recursive Backdoors for SAT[END_REF] and probabilistic [START_REF] Semenov | On Probabilistic Generalization of Backdoors in Boolean Satisfiability[END_REF] backdoors. Note that, under the assumption P = NP, identifying backdoors is NP-hard [START_REF] Dilkina | Tradeoffs in the Complexity of Backdoor Detection[END_REF]. Nevertheless, many attempts were made to efficiently identify (small) backdoors in the literature [Kil+05; Ost+06; KKS08; LB11; GK22] including Fixed-Parameter Tractable (FPT) algorithms46 [NRS04; GS12a; GS12b; LPR22].

Another hidden structure which is often associated with backdoors is the notion of backbones [Mon+99; WGS03; Kil+05]. Formally, the backbone of a satisfiable formula is the set of variables which have the same truth value in every model. Many methods were devised to compute backbones in the literature [MJL10; Zhu+11; JLM15; Zha+18] although it is established as an NP-hard problem [START_REF] Monasson | Determining computational complexity from characteristic 'phase transitions[END_REF][START_REF] Kilby | Backbones and Backdoors in Satisfiability[END_REF]. The study in [START_REF] Kilby | Backbones and Backdoors in Satisfiability[END_REF] highlights the correlation between the size of backbones (and strong backdoors) and problem hardness while the empirical evaluations carried out in [START_REF] Marques-Silva | On Computing Backbones of Propositional Theories[END_REF][START_REF] Janota | Algorithms for computing backbones of propositional formulae[END_REF] show that real-world instances harbor large backbone sets. Many studies also rely on this notion to boost SAT solving both for complete and incomplete algorithms [DD01; DD04; Zha04; AMM22b]. The notion of variable entropy introduced in [CS18] can be seen as a generalization of backbones. Intuitively, this property approximates the freedom of assigning variables in satisfiable formulas and have shown promising results in predicting problem hardness.

A different structural feature, broadly investigated in the literature, is the potential functional dependencies between variables which are usually recovered and exploited for preprocessing [Ost+02; Gré+05; OP09]. Intuitively, a dependency takes the form of a gate where an output variable v is semantically linked to a set of input variables {v 1 , v 2 , . . . , v n } in the formula through connectors. Formally, the gate can be expressed in the form of an equation v = f (v 1 , v 2 , . . . , v n ) where f ∈ {∧, ∨, ⇔}, although more generic definitions of f as 2 Satisfiability -2.2 Algorithms a boolean function are possible [START_REF] Iser | Recognition and Exploitation of Gate Structure in SAT Solving[END_REF]. Gate structure is mainly a result of explicit structural encodings [Tse83; PG86] but gates can be more implicitly nested within formulas [START_REF] Iser | Recognition of Nested Gates in CNF Formulas[END_REF][START_REF] Iser | Recognition and Exploitation of Gate Structure in SAT Solving[END_REF].

Structural properties of graphical representations of SAT formulas have also been widely studied in the literature. This trend started with the study in [START_REF] Walsh | Search in a Small World[END_REF] where the graphs associated with different combinatorial problem were shown to have small-world topology inducing heavy-tailed distribution, i.e., nodes are highly clustered with small path length between them. Subsequent studies for SAT focused on analyzing the structural properties of the Variable Incidence Graph (VIG) 47 and/or the Clause-Variable Incidence Graph (CVIG), defined below. In [START_REF] Ansótegui | On the Structure of Industrial SAT Instances[END_REF], the authors show that, in contrast to random formulas, the CVIGs of industrial instances seem to exhibit scale-free structure where the arity of nodes follow a power-law distribution P (a) ∼ a -γ (with γ around 3). The same authors relied on this structure to generate random instances with more realistic (i.e., industrial-like) features [ABL09c; ABL22].

Definition 2.20 (Primal Graph).

Let φ be a CNF formula. The primal graph G = (V, E ) is defined as follows:

• V = v ar (φ) • (v 1 , v 2 ) ∈ E iff ∃C ∈ φ s.t. v 1 and v 2 occur in C Definition 2.21 (Clause-Variable Incidence Graph). Let φ be a CNF formula. The Clause- Variable Incidence Graph (CVIG) is a bipartite graph G = (V ∪ Γ, E ) defined as follows: • V = v ar (φ) and Γ = φ • (v,C ) ∈ E iff v ∈ v ar (φ) occurs in C ∈ φ
Another property which gained particular interest in recent years is the modularity of SAT instances [AL11; AGL12; Ans+19; Li+21b]. More specifically, a modular graph exhibits independent partitions of its vertices, called communities, which are highly constrained as they internally harbor many edges. On the other hand, the communities are externally linked through very few edges. It is established that the VIG and CVIG graphs48 of industrial formulas are highly modular in contrast to random formulas, as showcased in Figure 2.6. Modularity is shown to be correlated to the runtime of CDCL solvers in [New+14; New+15] but the study in [START_REF] Mull | On the Hardness of SAT with Community Structure[END_REF] indicates that industrial instances may have some other relevant structure not captured by this model. Community structure was also used to detect relevant learnt clauses in [START_REF] Ansótegui | Using Community Structure to Detect Relevant Learnt Clauses[END_REF]

Proofs and Certificates for SAT

In this section, we are interested in certificates and proof systems for the SAT problem. We start by defining some necessary notions and overviewing proof systems for SAT. Then, we focus on resolution [Rob65] as a proof system for SAT, which is one of the first and most studied refutation systems in the literature. Finally, we present some known classes of resolution which will be used in our contributions in Chapter 6.

Proof Systems for SAT

A SAT solver tasked to solve a given formula can easily provide a short certificate if the formula is satisfiable. Indeed, this certificate of satisfiability can simply take the form of a satisfying assignment α. Such a certificate not only has a reasonable size with respect to the size of the input formula but can also be easily verified by checking that all the clauses in the formula are satisfied by α. In the context of decision problems and particularly the SAT problem, the need of certifying the solution can arise both for positive and negative instances. When a formula is unsatisfiable, a certificate is mainly provided through the lens of proof systems. Intuitively, if a contradiction can be inferred from the formula using sound inference steps for SAT, then the formula can never be satisfied and the sequence of deductions form a proof that can be used as certificate of unsatisfiability.

Formally, a proof system for SAT is a set of inference rules. An inference rule is defined by its antecedents and conclusions, both usually expressed in the form of a set of clauses (although other forms are possible), such that the conclusions can be added if the antecedent clauses are within the formula. An example of a simple inference rule for SAT, called weakening, is given below. We denote φ S φ (resp. φ S C ) if the formula φ (resp. the clause C ) can be derived from φ in the system S. To guarantee correctness of inference induced by the different rules, their soundness must be ensured. More specifically, an inference rule is sound for SAT if it preserves SAT equivalence, defined below. Definition 2.22 (Weakening). Given two clauses C 1 and C 2 , the weakening rule is defined as follows:

C 1 C 1 ∨C 2
Definition 2.23 (SAT Equivalence52 ). Let φ and φ be two formulas. φ and φ are equivalent (for SAT), denoted φ ≡ φ , if for any assignment α of φ, α is a model of φ iff α is a model of φ . Definition 2.24 (Soundness). A proof system S is sound if, for any formulas φ and φ , φ S φ implies φ ≡ φ .

Example 2.7. Weakening is clearly sound for SAT since each assignment satisfying C 1 also satisfies (C 1 ) ∧ (C 1 ∨C 2 ) and vice-versa.

Another property which is often associated with proof systems is completeness. Intuitively, a proof system is complete if it is able to derive any logically sound information. This elegant property, also referred to as inferential completeness, is very powerful and thus usually restricted to deriving inconsistencies. This restricted form, called refutational completeness, intuitively represents the ability of a system to derive an inconsistency (usually in the form of an empty clause) from any unsatisfiable formula, which is sufficient to generate certificates of unsatisfiability for SAT, referred to as a refutations. Note that (inferential) completeness clearly entails refutational completeness while the opposite statement on any given proof system is not always true.

Definition 2.25 (Completeness).

A proof system S is (inferentially) complete if, for any formulas φ and φ , φ ≡ φ implies φ S φ .

Definition 2.26 (Refutational Completeness). A proof system S for SAT is refutationally complete if, for any unsatisfiable formula φ, φ S .

Example 2.8. Let S be the proof system consisting solely of the weakening rule. S is not (refutationally and inferrentially) complete for SAT since, given a variable x, it cannot derive from x ∧ x.

Many proof systems that can be used in the context of satisfiability were introduced in the literature. One of the first and most studied systems is resolution [START_REF] Alan | A Machine-Oriented Logic Based on the Resolution Principle[END_REF], which we will overview in the following sections. Other known systems include Frege [Hei13; Bus15], natural deduction [Gen64; Pra65], cutting-plane [Chv85; CCT87; Juk12], algebraic [START_REF] Beame | Lower Bounds on Hilbert's Nullstellensatz and Propositional Proofs[END_REF][START_REF] Clegg | Using the Groebner Basis Algorithm to Find Proofs of Unsatisfiability[END_REF], analytic tableau [DAg99; Häh01] and circular proof [START_REF] Atserias | Circular (Yet Sound) Proofs[END_REF] systems. In proof theory, the relative strengths of proof systems is usually compared in terms of the size of their refutations, using the notion of simulation. We provide a common definition of simulation below [START_REF] Buresh | The Complexity of Resolution Refinements[END_REF] however we may abuse the term as other variations are used in the literature [START_REF] Pitassi | Effectively Polynomial Simulations[END_REF][START_REF] Buss | Proof Complexity and SAT Solving[END_REF]. To give some examples, it is known that Frege and natural deduction systems are p-equivalent [START_REF] Cook | The relative efficiency of propositional proof systems[END_REF] and both p-simulate resolution and the cutting-plane proof systems [START_REF] Goerdt | Cutting plane versus frege proof systems[END_REF]. The reader can refer to the surveys in [BP01; Seg07; Bus12; BN21a] for more details on major results in proof theory.

Definition 2.27 (Polynomial Simulation). Let S and S be two proof systems. S polynomially simulates (p-simulates) S if there exists a polynomially-computable function f such that for any refutation π of formula φ in S , f (π) is a refutation of π in S. S and S are p-equivalent if S p-simulates S and S p-simulates S.

Resolution Proofs for SAT

A well-known proof and refutation system for SAT is based on the resolution rule (Res) whose definition we recall below. Given two opposed clauses, this sound and complete rule for SAT deduces a resolvent clause which can be added to the formula. Resolution plays an important role in the context of SAT theory and solving. The original Davis-Putnam (DP) procedure introduced in [DP60] relies extensively on resolution to delete literals from the formula but with a worst-case exponential blow-up in its size. It was not until 1965 that resolution was established as an independent proof system in [START_REF] Alan | A Machine-Oriented Logic Based on the Resolution Principle[END_REF]. Later, resolution was efficiently integrated in the context of Conflict Driven Clause Learning (CDCL) 53 thus paving the way for modern SAT solvers [START_REF] Marques-Silva | Conflict-Driven Clause Learning SAT Solvers[END_REF]. The relationship between the resolution proof system and the CDCL framework was investigated in the literature. In [START_REF] Hertel | Clause Learning Can Effectively P-Simulate General Propositional Resolution[END_REF], Hertel et al. showed that clause learning can effectively p-simulate54 resolution. This result was extended to traditional simulation, in the sense of Definition 2.27, by Pipatsrisawat and Darwiche including for CDCL augmented with the restart mechanism [START_REF] Pipatsrisawat | On the power of clause-learning SAT solvers as resolution engines[END_REF]. Definition 2.28 (Resolution [START_REF] Alan | A Machine-Oriented Logic Based on the Resolution Principle[END_REF]). Given two opposed clauses C 1 and C 2 , the resolution rule is defined as follows:

C 1 = x ∨ A C 2 = x ∨ B C 3 = A ∨ B Theorem 2.

([Rob65]). Resolution is sound and refutationally complete for SAT.

A resolution proof or derivation of a clause C from a formula φ is a finite sequence of resolutions starting from the clauses of φ and deriving C , usually represented as a finite sequence of clauses. If C is the empty clause , the proof is referred to as a (resolution) refutation of φ. A resolution proof can also be represented in the form of a Directed Acyclic Graph (DAG) G = (V, A) whose nodes are clauses in the proof either having two or zero incoming arcs, respectively when they are resolvents or clauses of the initial formula. Note that in the latter case, we refer to these clauses as leafs. We will use two typical measures to establish our results in Chapter 6: size and width. The size (or length) of a resolution derivation π, denoted s(π) (or simply |π|), is the number of resolution steps (or resolvent clauses) in π whereas its width, denoted w(π), is the maximum size of all its clauses. Example 2.9. We consider the unsatisfiable CNF formula φ = (x 1 )∧(x 1 ∨x 3 )∧(x 1 ∨x 2 )∧(x 2 ∨ x 3 ). A resolution refutation π of φ, with s(π) = 4 and w(π) = 2, is represented in Figure 2.7.

x 1 ∨ x 3 x 1 x 1 ∨ x 2 x 2 ∨ x 3 x 3 x 2
x 3

Figure 2.7: Resolution refutation as a certificate of unsatisfiability

In practice, resolution refutations can be provided as a certificate of unsatisfiability. For instance, the Booleforce solver 55 is able to generate such proofs and is also equipped with the tool TraceCheck 56 to test the validity of the generated certificate. However, memory may become a bottleneck for very large plain refutation proofs. Therefore, modern solvers usually provide clausal proofs in more adapted formats such as DRUP 57 [START_REF] Heule | Trimming while checking clausal proofs[END_REF] or DRAT 58 [HHW13; WHH14], with more reasonable memory usage and faster proof checking which relies on Unit Propagation (UP).

Resolution Classes

Many restricted classes of resolution refutations have been studied in the literature namely read-once resolution [START_REF] Iwama | Intractability of Read-Once Resolution[END_REF], regular resolution [START_REF] Tseitin | On the Complexity of Derivation in Propositional Calculus[END_REF], tree (or tree-like) resolution refutations [START_REF] Kundu | Tree resolution and generalized semantic tree[END_REF] and linear resolution [START_REF] Loveland | A linear format for resolution[END_REF] among many others[BP07b; HU09; BJ16]. In this section, we define the classes mentioned above which are necessary to establish our results in Section 6.

We start by defining read-once resolution which is a fragment encompassing resolution proofs where all the clauses are read-once, i.e., used at most once in the derivations. It was shown in [START_REF] Iwama | Intractability of Read-Once Resolution[END_REF] that there exists unsatisfiable CNF formulas which cannot be refuted using read-once resolution. This particular class is also of particular interest in the context of maximum satisfiability, as will be showcased in Section 3.3. Example 2.10. We consider the same unsatisfiable CNF formula φ in Example 2.9. The resolution refutation π of φ represented in Figure 2.7 is not read-once since the clause C = x 1 is used twice in the proof.

Next, we present another well-known class called tree (or tree-like) resolution. This class, defined below, consists of the proofs in which it is possible to have non-read-once clauses but only if they are within the original formula, having zero incoming arcs in the DAG representation. Clearly, every read-once proof is also tree-like. This particular fragment was highly investigated in the literature. In particular, tree resolution and DPLL are p-equivalent [START_REF] Segerlind | The Complexity of Propositional Proofs[END_REF]. Furthermore, a separation between general (or DAG) resolution and tree resolution was established in [Bon+98; BIW04], meaning that the latter cannot p-simulate the former.

Definition 2.30 (Tree Resolution [Kun86]). A resolution proof is tree-like if each derived resolvent is used at most once in the proof.

Example 2.11. We consider the same unsatisfiable CNF formula φ in Example 2.9. The resolution refutation π of φ represented in Figure 2.7 is tree-like since the non-read-once clause C = x 1 is in φ.

The third fragment of resolution, called regular resolution, contains proofs in which variables are resolved on at most once in each branch of the DAG, i.e., path from a clause of the initial formula to the last derived clause. A separation between general resolution and this class was also established in [Ale+02; Urq11; Vin+20]. In the context of refutations, minimal-size tree proofs are regular. This result was first stated in [START_REF] Tseitin | On the Complexity of Derivation in Propositional Calculus[END_REF] and later formally proved in [START_REF] Urquhart | The Complexity of Propositional Proofs[END_REF]. The proof relies on a transformation which consists in iteratively fixing irregularities through pruning. An irregularity is a sequence of clauses in the proof such that the first clause and the last one contain a literal l but at least one of the intermediate clauses does not contain this literal. The first resolution step in each irregurality is discarded and the rest of the proof is updated accordingly, potentially discarding other resolution steps which are no longer necessary, to generate a smaller-size tree-like regular refutation.

Definition 2.31 (Regular Resolution [Tse83]). A resolution proof π of clause C from a CNF formula φ is regular if no variable is resolved twice in every path from an initial clause in φ to C .

Example 2.12. We consider the same unsatisfiable CNF formula φ in Example 2.9. The resolution refutation π of φ represented in Figure 2.7 is regular since in each branch of the DAG, all variables are resolved at most once. Lemma 2.1 (cf. Lemma 5.1 in [START_REF] Urquhart | The Complexity of Propositional Proofs[END_REF]). A tree-like resolution refutation of minimal size is regular.

Example 2.13. We consider the formula φ = (x 1 ) ∧ (x 3 ) ∧ (x 1 ∨ x 2 ) ∧ (x 1 ∨ x 2 ) ∧ (x 1 ∨ x 3 ). The tree-like resolution refutation of φ represented on the left in Figure 2.8 is not regular since x 1 is resolved on two times in the same branch. As shown on the right in the same figure, this refutation can be made regular by discarding the first resolution step on variable x 1 and updating the rest of the proof accordingly. Notice how after the transformation, the irregularity in the branch of clause x 1 ∨ x 2 is fixed and a refutation of smaller size is produced where the clauses x 1 ∨ x 3 and x 3 are no longer used.

x 1 ∨ x 2 x 1 ∨ x 3 x 2 ∨ x 3 x 3 x 2 x 1 ∨ x 2 x 1 x 1 x 1 ∨ x 2 x 1 ∨ x 2 x 1 x 1 Figure 2
.8: From a tree resolution refutation (left) to a regular tree resolution refutation (right)

Finally, we introduce linear resolution, formally defined below, which lies between treelike and general resolution in terms of proof complexity [START_REF] Buresh | The Complexity of Resolution Refinements[END_REF][START_REF] Buss | On Linear Resolution[END_REF]. In this fragment, the proofs are linear in the sense that each deduced clause is used as a premise in the next resolution step. Note that, when the first condition of (c) holds in the following definition, the clause D i is called the input parent clause of C i +1 . Definition 2.32 (Linear Resolution [START_REF] Loveland | A linear format for resolution[END_REF]). A linear resolution proof of clause C from a CNF formula φ is a sequence of clauses C 1 , ...,C m such that:

1. C 1 is a clause in φ 2. C m is the clause C 3. For every i < m, C i +1 is the resolvent of C i either

Bandits for Satisfiability and Beyond

In this section, we focus on the Multi-Armed Bandit (MAB) problem which is used to study the exploration-exploitation dilemma in the context of Reinforcement Learning (RL) [SB98; WGG11; LS20]. We start by defining this well-known problem then we present the major strategies used to solve it. Furthermore, we review the use of MAB in the context of satisfiability and beyond. MAB will be used as a framework to establish our contributions in Chapter 4.

Multi-Armed Bandit Problem

Reinforcement Learning (RL) [START_REF] Sutton | Reinforcement learning -an introduction[END_REF] is a well-known paradigm of machine learning 59 focusing on studying the way in which an autonomous agent learns from its actions. More specifically, RL investigates how intelligent agents should interact with a specific environment by exploring and exploiting certain actions, called arms or levers, while aiming to maximize the cumulative payoff. The exploration-exploitation dilemma in RL is often studied through the lens of the Multi-Armed Bandit (MAB) problem 60 [WGG11; LS20]. Formally, MAB consists of an agent and a set of candidate arms from which the agent has to choose while maximizing the expected gain. The agent relies on information in the form of rewards given to each arm and collected through a sequence of trials. MAB clearly expresses a dilemma in the tradeoff between exploitation and exploration as the agent needs to explore underused arms often enough to have a robust feedback while also exploiting good candidates which have the best rewards. The term itself is derived from gambling slot machines, which are also referred to as one-armed bandits. The first MAB model, stochastic MAB, was introduced in [START_REF] Leung | Asymptotically efficient adaptive allocation rules[END_REF]. In this setting, a stochastic environment is considered where each arm is associated with an unknown probability distribution. Another well-known model is adversarial MAB, typically with a non-stationary environment where rewards can be generated without any specific probabilistic assumption on their nature [START_REF] Auer | Gambling in a rigged casino: The adversarial multi-armed bandit problem[END_REF]. Hereafter, we mainly consider the stochastic MAB framework. We start by presenting some necessary notations then we provide in Algorithm 2.4 an abstract description of the MAB framework.

Notation 2.1. We use the following notations for the MAB framework:

• A denotes the set of arms where |A| = K ≥ 2

• T denotes the total number of trials, referred to as horizon • r t (a) denotes the reward of arm a ∈ A in the trial t ∈ {1, . . . , T } • n t (a) denotes the number of times the arm a is selected during the t -1 previous runs, 59 Detailed reviews on other paradigms such as supervised and unsupervised learning can be found in the following textbooks [MM97; Has+09; RN20]. 60 specifically when the RL environment has a single state, in contrast to multi-state environments which are mainly stated in the form of a Markov decision processes [START_REF] Sutton | Reinforcement learning -an introduction[END_REF] • r t (a) denotes the empirical mean of the rewards of arm a over its number of selections n t (a) in the t -1 previous runs, i.e., r t (a) = Agent selects arm a ∈ A with respect to a specific strategy 3:

Environment selects a reward r t (a)

4:

Agent observes reward 5: end for Note that the strategies used by MAB to choose relevant arms are theoretically evaluated through the notion of regret61 [START_REF] Lattimore | Bandit algorithms[END_REF]. This notion, defined below, considers the difference between the expected cumulative value of the reward of the best action and its expected cumulative value for all the arms chosen by the agent through the trials. Since the objective of the agent is to find an optimal arm which maximizes the cumulative reward through the trials, each time a sub-optimal arm is chosen, the reward difference with the optimal arm is wasted. A relevant policy should thus minimize the regret throughout the trials.

Definition 2.33 (Regret [ACF02]

). Let µ 1 , . . . , µ K be the distributions associated with the arms in A in stochastic MAB. The regret R T is defined as follows:

R T = max a∈A E T t =1 r t (a) - T t =1 r t (a t ) = T µ * -E T t =1 r t (a t )
where:

• a t denotes the arm chosen in the trial t ∈ {1, . . . , T } • µ * is the optimal arm mean, i.e., µ * = max 1≤i ≤K µ i

Strategies for MAB

In this section, we present different strategies for MAB, specifically those relevant within a stochastic context. Recall that these strategies must find a good tradeoff between exploration of underused arms and exploitation of the best ones. We can categorize the strategies into two major families: randomized and deterministic strategies. The first category contains policies which perform random exploration and, thus, which may produce different results even for a fixed setting and environment. The second category consists of strategies which are deterministic, mainly relying on smart exploration with preference to uncertainty. We start first by describing some well known randomized strategies for MAB.

-Greedy [START_REF] Sutton | Reinforcement learning -an introduction[END_REF] This simple policy for stochastic MAB, which falls within the first category of randomized policies, is described in Algorithm 2.5. It relies on a probability parameter , usually of small value in [0, 1], to randomly explore uncharted territory. At each trial, -Greedy selects a random arm a ∈ A with the probability , otherwise it performs greedy exploitation by selecting the arm maximizing the mean reward through the previous trials. This strategy has linear regret in T . However, in [START_REF] Auer | Finite-time Analysis of the Multiarmed Bandit Problem[END_REF]

a t ←-random arm a ∈ A 3: else 4:
a t ←ar g max a∈A r t (a) 5: return a t Thompson Sampling (TS) [START_REF] William | On the likelihood that one unknown probability exceeds another in view of the evidence of two samples[END_REF] This method was introduced in one of the earlier works on reinforcement learning and relies on the simple idea of assuming a prior distribution for every arm, mainly a beta distribution [START_REF] Arjun | Beta Distribution[END_REF][START_REF] Palin | Frequency curves and correlation[END_REF]. As described in Algorithm 2.6, TS maintains a beta distribution for each arm a ∈ A defined by its two shape parameters α(a) and β(a) which are initially set to 1 (lines 2-5). After each trial, the α and β values of the used arm are updated with respect to its reward (lines 7-9). TS then selects an arm maximizing the beta distribution probabilities at trial t (returned by function B et a(α, β) in line 10), which represent the likelihood of being the optimal arm. This strategy was shown to have a regret bound of O( T.K .l n(K )) in [START_REF] Agrawal | Near-Optimal Regret Bounds for Thompson Sampling[END_REF].

Exponential-Weight Algorithm for Exploration and Exploitation (EXP3) [Aue+02]

This strategy, originally introduced in the context of adversarial MAB, maintains a probability distribution (p(a)) a∈A on the set of arms. As described in Algorithm 2.7, the probabilities are updated through weights assigned to each arm, initially set to 1 (lines 2-4) and multiplicatively updated (lines 6-7) so as to ensure a mixture of uniform and exponential probabilities in the estimated cumulative rewards of each arm (lines 8-11). EXP3 thus selects an arm according to the computed distribution in each trial (line 12) while ensuring a regret bounded by O( T.K .l n(K )) [START_REF] Audibert | Minimax Policies for Adversarial and Stochastic Bandits[END_REF].

Algorithm 2.6: Thompson Sampling

Input: set of arms A, trial number t ∈ {1, . . . , T } Output: an arm a t ∈ A to use in the trial t

1: if t = 1 then Initialize 2:
for a ∈ A do 3:

α(a) ←-1 4: β(a) ←-1 5:
end for 6: else Update 7: Next, we present a family of well-known policies of deterministic nature. One of the simplest strategies in this case is a pure exploitation strategy where no random exploration is performed. The arms can be chosen with respect to their mean reward as in the specific case of -greedy where = 0. Clearly, such a naive strategy has a major flaw as it does none of the exploration required to generate relevant information for estimating the optimal arm. To circumvent this drawback, policies performing smart exploration while ensuring a certain confidence in terms of regret bounds were introduced in the literature. This family of strategies is referred to as Upper Confidence Bound (UCB) and includes two major strategies which we present hereafter.

a t -1 ←-arm selected in trial t -1 8: α(a t -1 ) = α(a t -1 ) + r t -1 (a t -1 ) 9: β(a t -1 ) = β(a t -1 ) + 1 -r t -1 (a t -

UCB1 Strategy [ACF02]

This strategy, introduced by Auer et al. in 2002 and inspired by the work of Argwal in [START_REF] Agrawal | Sample Mean Based Index Policies with O(log n) Regret for the Multi-Armed Bandit Problem[END_REF], is described in Algorithm 2.8. UCB1 selects the arm a ∈ A which maximizes UC B 1(a) defined as follows (line 4):

UC B 1(a) = r t (a) + 4l n(t ) n t (a)
where the left side term, i.e., the reward mean, aims to put emphasis on arms that received the highest rewards and, conversely, the right-side term ensures the exploration of underused arms. UCB1 tests all the arms once (lines 1-2) to initialize the rewards and ensure that n t (a) = 0 for all a ∈ A before selecting the arms with respect to UC B 1(a [START_REF] Lazaar | Cooperation control in Parallel SAT Solving: a Multi-armed Bandit Approach[END_REF] where a new approach, called Bandit Ensemble for parallel SAT Solving (BESS), was devised for parallel SAT solvers to control the clause-sharing cooperation topology, i.e., pairs of units able to exchange clauses. BESS relies on a MAB formalization of the cooperation choices and uses the UCB1 policy to pick arms at each trial. In contrast, MAB frameworks were extensively used in the context of Constraint Programming (CP) and specifically the Constraint Satisfaction Problem (CSP) 62 . In particular, MAB frameworks were used to select the consistency level of propagation [START_REF] Balafrej | Multi-Armed Bandits for Adaptive Constraint Propagation[END_REF] or a restart strategy [START_REF] Gagliolo | Learning Restart Strategies[END_REF] for CSP solving. In terms of heuristics, CHB was also implemented in the context of CSP [START_REF] Schulte | Programming branchers[END_REF] and was further adapted to this problem in the form of a new heuristic, called Conflict-History Search (CHS), which similarly adopts a constraint weighting scheme on the basis of ERWA [START_REF] Habet | Conflict history based heuristic for constraint satisfaction problem solving[END_REF]. Rewards updated through ERWA were also used to adaptively select a backtracking strategy in [START_REF] Bachiri | RLBS: An Adaptive Backtracking Strategy Based on Reinforcement Learning for Combinatorial Optimization[END_REF]. Furthermore, MAB frameworks were used to select a search heuristic among a set of candidate ones at each node of the search tree in [START_REF] Xia | Learning Robust Search Strategies Using a Bandit-Based Approach[END_REF] or at each restart in [START_REF] Wattez | Learning Variable Ordering Heuristics with Multi-Armed Bandits and Restarts[END_REF][START_REF] Koriche | Best Heuristic Identification for Constraint Satisfaction[END_REF]. Simple bandit-driven perturbation strategies to incorporate random choices in constraint solving with restarts were also introduced and evaluated in [START_REF] Paparrizou | Perturbing Branching Heuristics in Constraint Solving[END_REF]. Finally, it is worth noting that upper confidence bound strategies have been used in most of these works and were shown to achieve good 2 Satisfiability -2.5 Conclusion performance results.

Conclusion

In this chapter, we focused on the well-known satisfiability formalism. We defined the SAT problem and some of its known variants. Furthermore, we presented the main complete and incomplete methods to solve this problem. In particular, we introduced Conflict Driven Clause Learning (CDCL), which is a complete algorithm for SAT incorporating extensive inference during the search. We also described the major mechanisms used in modern solvers, based on CDCL, including branching heuristics and restarts among others. Then, we focused on SAT proof theory, for which we recalled the main notions. We specifically presented resolution as a proof system for SAT and we introduced some of its well-known classes. Finally, we focused on the Multi-Armed Bandit (MAB) problem, which is used to study the exploration-exploitation dilemma in the context of reinforcement learning, and we reviewed its dedicated strategies in the literature as well as its marginal use in the context of SAT. Our results in Chapter 4 revolve around SAT as we devise a MAB framework for adaptive branching by taking advantage of the restart mechanism in modern solvers. Our contributions also extend to Maximum Satisfiability (Max-SAT), the natural optimization extension of SAT which we will present in the following chapter. We particularly attempt to theoretically bridge the gap between SAT and Max-SAT inference in Chapter 6. In this chapter, we define the Maximum Satisfiability (Max-SAT) problem and its variants. We also review the major complete and incomplete methods for Max-SAT solving. We particularly present Branch and Bound (BnB) algorithms for Max-SAT which perform exhaustive search relying on extensive inference. We also introduce the main notions in proof theory for Max-SAT and we specifically focus on the Max-SAT resolution rule as a proof system for Max-SAT.

Maximum Satisfiability

Definition and Variants

The Maximum Satisfiability (Max-SAT) problem is a natural optimization extension of SAT which simply consists in determining the maximum number of clauses satisfied by an assignment of a given CNF formula 1 . A more common definition in the literature is determining the optimum value of a given CNF formula φ defined below in the form of the minimum number of clauses that each assignment of φ must falsify 2 . Note that in the case where a CNF formula φ is satisfiable, we have opt (φ) = 0, otherwise opt (φ) ≥ 1 since at least one clause is falsified by each assignment of φ. Furthermore, it is common to return an assignment which achieves the optimum value in Max-SAT, called optimal assignment. This problem is NP-hard as solving it can easily lead to a solution for the SAT problem, and therefore it does not admit a polynomial-time algorithm unless P=NP [START_REF] Papadimitriou | Computational Complexity[END_REF].

Definition 3.1 (Optimum). Let φ be a CNF formula. The optimum of φ is defined as follows 3 :

opt (φ) = min I assignment of φ cost α (φ)
.

Definition 3.2 (Maximum Satisfiability). The Maximum Satisfiability (Max-SAT) problem is defined as follows:

Max-SAT Problem Input: a CNF formula φ Output: opt (φ)

Theorem 3.1 ([Pap94]). The Max-SAT problem is NP-hard. Example 3.1. We consider the formula φ = (x 1 )∧(x 2 )∧(x 2 )∧(x 1 ∨x 3 )∧(x 1 ∨x 2 )∧(x 2 ∨x 3 ) and the assignments α = {x 1 , x 2 , x 3 } and α * = {x 1 , x 2 , x 3 }. We have cost α (φ) = 3 > cost α * (φ) = 2.
Since no other assignment of φ achieves a smaller cost, α * is an optimal assignment and we have opt

(φ) = 2.
A simple variant of Max-SAT is Max-k-SAT which is a natural optimization extension of k-SAT, taking a k-CNF formula as input 4 . Moreover, there are many extensions of Max-SAT each providing a more generic abstraction to deal with broader constraints. In the following definitions, we present a first variant called Partial Max-SAT in which partial formulas are considered. Such formulas contain a set of hard clauses that must be satisfied and a set of soft clauses to be optimized similarly to plain Max-SAT. Clearly, every plain Max-SAT instance can be represented as a partial Max-SAT formula where all clauses are soft.

Definition 3.3 (Partial Formula).

A partial CNF formula is a bipartite set of clauses φ = H ∪S where H is the set of hard clauses that must be satisfied and S is the set of soft clauses as in plain Max-SAT.

Definition 3.4 (Partial Max-SAT). The Partial Maximum Satisfiability (Partial Max-SAT) problem is a variant of Max-SAT defined as follows:

Partial Max-SAT Problem Input: Partial CNF formula φ = H ∪ S Output: opt (S) s.t. all the clauses in H are satisfied, "no solution" otherwise Another variant of Max-SAT is the Weighted Maximum Satisfiability (Weighted Max-SAT) problem, defined below, where positive finite weights are associated with each clause in the formula to represent the penalty of falsifying it. Weighted Max-SAT consists in determining the maximal sum of weights of clauses falsified by an assignment of the variables. Note that this problem can be combined with the partial version defined above by authorizing infinite weights. This most generic variant, called Partial Weighted Max-SAT, considers weighted formulas where hard clauses have infinite weight and must be satisfied, otherwise the returned optimum value would also be infinite. Note that in the following sections we mainly consider the plain Max-SAT problem but we may provide further comments on its variants when necessary 5 .

Definition 3.5 (Weighted Formula).

A weighted CNF formula is a set of tuples (C , w) where C is a clause and w ∈ N * is its associated weight, denoted w(C ). Definition 3.6 (Weighted Cost). Let φ be a weighted CNF formula and α be an assignment of φ. The (weighted) cost of α is defined as follows:

cost α (φ) = (C ,w)∈φ s.t. C | α = w Definition 3.

(Weighted Max-SAT). The Weighted Maximum Satisfiability (Weighted Max-SAT) problem is a variant of Max-SAT defined as follows:

Partial Max-SAT Problem Input: a weighted CNF formula φ Output: opt (φ)

It is important to note that Max-SAT soundness notions on formula transformations differ from SAT [START_REF] Ansótegui | SAT-based MaxSAT algorithms[END_REF]. In particular, Max-SAT equivalence preservers the cost of each assignment as defined below. Another notion, most commonly used in the context of Max-SAT solving, is Max-SAT reducibility which allows to performs sound encodings as long as the original cost of each assignment is maintained. A third weaker notion is equioptimality which simply preserves the optimum value and can be seen as the extension of equisatisfiability 6 for Max-SAT. Hereafter, we provide a formal definition of these three notions.

Definition 3.8 (Equivalence). Let φ and φ be two CNF formulas. φ is equivalent (in the sense of Max-SAT) to φ , denoted φ ≡ φ , if for any assignment α : v ar (φ) ∪ v ar (φ ) -→ {Tr ue, F al se}, we have cost α (φ) = cost α (φ ). Definition 3.9 (Reducibility). Let φ and φ be two CNF formulas. φ is Max-SAT reducible to φ if for any assignment α : v ar (φ) -→ {Tr ue, F al se}, we have cost α (φ) = cost α (φ ). Definition 3.10 (Equioptimality). Let φ and φ be two CNF formulas. φ is equioptimal to φ if opt (φ) = opt (φ ).

Maximum Satisfiability -3.2 Algorithms

The Max-SAT problem and its variants are powerful formalisms which can be used to represent and solve many real-world and crafted problems making it of great academic and industrial interest7 . In particular, Max-SAT can be used to encode and solve several well-known academic problems such as Minimum Satisfiability ( . The expressiveness of Max-SAT, its close association with SAT and its various applications explain the importance of studying this problem in terms of theory and solving. This importance is also attested by the Max-SAT evaluation events8 which are organized each year since 2006 to evaluate current state-ofthe-art Max-SAT solvers and to incite further improvement in their empirical performance.

Algorithms

In this section, we present the major complete algorithms for solving the Max-SAT problem. We first review Branch and Bound (BnB) algorithms for Max-SAT which explore the search space through an exhaustive branching over the variables in the formula. Then, we focus on SAT-based approaches which take advantage of the power of SAT solvers as decision engines. We also briefly present other complete methods for Max-SAT including direct encodings to other optimization problems as well as sequential portfolio algorithms. Finally, to be exhaustive, we briefly review incomplete methods for Max-SAT.

Branch and Bound

Branch and Bound (BnB) is one of the oldest methods introduced for solving optimization problems in the literature [START_REF] Land | An Automatic Method of Solving Discrete Programming Problems[END_REF]. Its name was first suggested by Little et al. in [START_REF] John Dc Little | An algorithm for the traveling salesman problem[END_REF] were it was used to solve the Traveling Salesman Problem (TSP) 9 . Later, BnB became a common tool for solving various optimization problems including Max-SAT [BT83; CZ12; LM21]. In the subsequent sections, we first start by presenting the outline of a BnB algorithm for Max-SAT. We present the inference mechanisms used in such algorithms. Then, we focus on the lower bound estimation component and the different learning schemes used in the literature. Finally, we recall a recently introduced property aiming to explain the results achieved by BnB Max-SAT solvers in the last decade and which will be used to establish our contributions in Chapter 5.

Outline

A Branch and Bound (BnB) algorithm for Max-SAT explores the search space by constructing a search tree while maintaining two values: the Upper Bound (UB) and the Lower Bound (LB) which correspond respectively to the best computed solution so far and to the estimation of the best accessible solution. In each node of the search tree, the current assignment is extended, if possible, using different inference rules. Then, the value of LB is computed and compared to UB. If it is greater, finding a better solution in the current subtree is not possible and, thus, a cut is performed by forcing the algorithm to backtrack. A simple estimation of LB in the current node is the number of falsified clauses by the current assignment. If a complete assignment is reached, the UB value and the optimal assignment are updated and a backtrack is performed. Otherwise, an unassigned variable is chosen using a specific branching heuristic. These steps are repeated until the whole search space is explored. As the efficiency of a BnB algorithm depends on the quality of UB and LB, BnB solvers rely on a variety of techniques and heuristics mainly dedicated to generate more cuts in the search tree. Major BnB solvers in the literature include MiniMaxSat [HLO07; HLO08], MaxSatz [LMP07; Li+08; Li+09; Li+10a], Akmaxsat [START_REF] Küegel | Improved Exact Solver for the Weighted MAX-SAT Problem[END_REF], Ahmaxsat [AH15a; Abr15] and the recent MaxCDCL solver [START_REF] Li | Combining Clause Learning and Branch and Bound for MaxSAT[END_REF][START_REF] Li | Boosting branch-and-bound MaxSAT solvers with clause learning[END_REF]. The outline of a BnB algorithm for Max-SAT is presented in Algorithm 3.1 where:

• U B contains the current upper bound value which is updated each time a complete assignment is visited. When the search space has been fully explored, U B would contain the optimum value of the input formula which is to be returned by the algorithm. Note that an initial value for UB can be set by considering the number of clauses in the input formula or by computing the cost of a random assignment. Another more commonly used method is to launch a local search algorithm dedicated to Max-SAT10 , to rapidly generate a good initial UB value, as suggested first in [START_REF] Borchers | A two-phase exact algorithm for MAX-SAT and weighted MAX-SAT problems[END_REF].

• α represents the current assignment, updated when branching, backtracking or when a semantic inference rule, used to assign further literals, is applied.

• LB contains the estimation of the lower bound in the current node which is computed through the function Compute_LB(φ, α). In its simplest form, this function returns the number of clauses in φ falsified by the current assignment α. However better LB estimations can be computed as will be explained in Section 3.2.1.3. A good LB estimation helps to prune the search tree by performing cuts whenever LB ≥ U B .

• Inference_Apply(φ, α) denotes the application of syntactic or semantic rules with respect to the current formula, i.e., φ| α , which is updated alongside the current assignment when necessary.

• Backtrack(φ, α) undoes all the assignments made within and after the backtrack level β by doing the necessary updates on φ and α.

• Branching_Heuristic(φ, α) picks a promising literal to branch on in the search tree.

= C 1 ∧ C 2 ∧ C 3 ∧ C 4 ∧ C 5 ∧ C 6 where C 1 = x 1 , C 2 = x 2 , C 3 = x 2 , C 4 = x 1 ∨ x 3 , C 5 = x 1 ∨ x 2 and C 6 = x 2 ∨ x 3 .
A search tree depicting the execution of the BnB algorithm on φ with lexicographic branching (i.e., x 1 < x 2 < x 3 ) is showcased in Figure 2.1. The initial upper bound value is U B = |φ| = 6. Assigning literal x 1 does not falsify any clause in φ and therefore we have LB = 0. Next, the algorithms assigns the literals x 2 and x 3 leading to the falsification of the clauses C 3 and C 6 and thus to the respective LB values 1 and 2. Since all the variables are assigned, the UB value is updated and becomes 2. When assigning x 3 we have LB = 2 ≥ U B and thus a cut is performed. The algorithm continues to explore the search space while performing cuts when necessary until all possible assignments have been visited or discarded. Finally, the last U B value corresponds to the optimum of φ, i.e., opt (φ) = 2, achieved by the assignment α = {x 1 , x 2 , x 3 }.

Complete solvers for SAT and BnB solvers for Max-SAT share many aspects. Indeed, practically all branching heuristics for (weighted) Max-SAT BnB are similar, based on, or inspired by those devised for SAT. In particular, the first solvers dedicated for Max-SAT used the traditional Jeroslow-Wang (JW) [START_REF] Jeroslow | Solving propositional satisfiability problems[END_REF] and MOMS [ZM88; Fre95] heuristics11 , sometimes with very small variations [BF98; AMP03; Pla03; XZ05; AMP05; LMP05]. More recent solvers introduced more variations to further adapt these heuristics to (weighted) Max-SAT. The aim is to focus on generating shorter clauses and specifically unit clauses, which enables a better estimation of the lower bound, and also to balance the search by considering opposed literal polarities for each variable. In particular, MaxSatz and Ahmaxsat use a heuristic based on MOMS, taking into account the presence of literals in unit, binary and ternary12 clauses. Akamaxsat [LMP07; Li+10a] uses a similar heuristic while additionally considering the presence of literals within inconsistent subsets of the formula during lower bound estimation, which will be explained in Section 3.2.1.3. MiniMaxSat [HLO07; HLO08] uses a hybrid heuristic scheme in the context of weighted partial Max-SAT where VSIDS is used only on hard clauses and a weighted version of Jerslow-Wang is used otherwise. MaxCDCL [START_REF] Li | Combining Clause Learning and Branch and Bound for MaxSAT[END_REF][START_REF] Li | Boosting branch-and-bound MaxSAT solvers with clause learning[END_REF] is also based on a hybrid scheme, similar to the one used in the MapleCOMSPS SAT solver [START_REF] Hui Liang | MapleCOMSPS, MapleCOMSPS_LRB, Maple-COMSPS_ CHB[END_REF], which alternates alternates LRB phases and VSIDS phases while using Luby restarts for the former and glucose-style restarts for the for latter. Other SAT mechanisms incorporated into Max-SAT BnB include lazy data structures first used in [AMP04; AMP05; AM06] and later in MiniMaxSat and MaxCDCL. SAT inference rules which are sound for Max-SAT can also be used in BnB as will be showcased in the following section.

LB = 0 LB = 1 LB = 2 U B = LB LB = 2 LB ≥ U B LB = 2 LB ≥ U B LB = 1 LB = 2 LB ≥ U B LB = 2 LB ≥ U B x 1 x 1 x 2 x 3 x 3 x 2 x 2 x 2

Inference

In each node of the search tree, BnB algorithms use a variety of inference rules to simplify the formula, extend the current assignment or efficiently compute a better lower bound estimation. Syntactic rules apply a sound transformation on the formula, usually by maintaining Max-SAT equivalence13 , and are used for simplification to reduce the size of the clauses or the formula. Semantic inference rules enable to assign further literals while maintaining equioptimality and thus help to prune the search space. It is important to note that rules applicable for SAT are not necessarily sound for Max-SAT.

Pure Literals (PL) [DP60; DLL62]

This rule originally used in the context of SAT solving14 is also valid for Max-SAT. Indeed, assigning a literal with a unique polarity can be used to extend the current assignment as it maintains equioptimality [START_REF] Niedermeier | New Upper Bounds for Maximum Satisfiability[END_REF].

Hard Unit Propagation (HUP) [BF98]

This rule consists in assigning literal l when LB = U B -1 and a unit clause C = l is in the current formula. Indeed, assigning l cannot lead to a better assignment as it already achieves a previously established UB value. In the weighted case, this rule is applied if we have:

C =l w(C ) ≥ U B -LB .

Dominant Unit Clause (DUC) [NR00]

This rule consists in assigning literal l if the number of unit clauses containing l is greater or equal to the number of clauses where l appears. The sum of weights of the clauses can be used in the context of weighted Max-SAT.

In terms of Syntactic inference rules, BnB algorithms for Max-SAT mainly rely on the Max-SAT resolution rule [LH05a; BLM06; BLM07; LHG08], defined below. This sound and complete rule for Max-SAT15 can be considered as extension of the resolution rule used in the context of SAT [START_REF] Alan | A Machine-Oriented Logic Based on the Resolution Principle[END_REF]. One major difference between resolution and Max-SAT resolution is that the former adds the conclusions without deleting the premises whereas the latter replaces the premises in by the conclusions. Furthermore, Max-SAT resolution produces many clauses including a resolvent clause and a set of compensation clauses. As their name suggests, these clauses are necessary to preserve equivalence in the sense of Max-SAT. Note that tautological clauses generated by Max-SAT resolution can be discarded.

C 1 = x ∨ A C 2 = x ∨ B C r = A ∨ B CC 1 = x ∨ A ∨ b 1 CC 2 = x ∨ A ∨ b 1 ∨ b 2 . . . CC t = x ∨ A ∨ b 1 ∨ ... ∨ b t -1 ∨ b t CC t +1 = x ∨ B ∨ a 1 CC t +2 = x ∨ B ∨ a 1 ∨ a 2 . . . CC t +s = x ∨ B ∨ a 1 ∨ ... ∨ a s-1 ∨ a s
where C r is the resolvent clause and CC 1 , ...,CC t +s are compensation clauses.

Example 3.3. The application of the Max-SAT resolution rule on clauses C

1 = x 1 ∨ x 2 and C 2 = x 1 ∨ x 3 generates the resolvent clause C r = x 2 ∨ x 3 and the compensation clauses CC 1 = x 1 ∨ x 3 and CC 2 = x 1 ∨ x 1
In practice, specific cases of Max-SAT resolution or hyper Max-SAT resolution patterns, i.e., patterns involving a sequence of Max-SAT resolution applications, are used to simplify the formula or to detect and transform inconsistent subsets of the formula in order to enhance the lower bound estimation process as will be explained in the following section. Hereafter we present some of the generic syntactic rules used by BnB Max-SAT solvers in the literature.

Almost Common Clauses (ACC) [BR99]

This rule also known as symmetric cut or neighborhood resolution [START_REF] Larrosa | Resolution in Max-SAT and its relation to local consistency in weighted CSPs[END_REF] is a specific case of Max-SAT resolution, formally defined below, where A is equal to B in Definition 3.11. Definition 3.12 (Symmetric cut [START_REF] Bansal | Upper Bounds for MaxSat: Further Improved[END_REF]). Given two clauses C 1 = x ∨ A and C 2 = x ∨ A where A is a disjunction of literals, the symmetric cut rule is defined as follows:

C 1 = x ∨ A C 2 = x ∨ A A

Chain Resolution [LMP07; LHG08]

This rule is a hyper resolution pattern deducing the empty clause without increasing the size of the clauses and the formula. It is mainly used in the context of lower bound estimation. Given k ≥ 1, it has the following form:

l 1 , l 1 ∨ l 2 , l 2 ∨ l 3 , . . . , l k-1 ∨ l k , l k , l 1 ∨ l 2 , l 2 ∨ l 3 , . . . , l k-1 ∨ l k

Cycle Resolution [LHG08]

This rule is also a hyper resolution pattern used in lower bound estimation which, given k ≥ 2, has the following form:

l 1 ∨ l 2 , l 2 ∨ l 3 , . . . , l k-1 ∨ l k , l k ∨ l 1 l 1 , (l 1 ∨ l i ∨ l i +1 ) 2≤i <k , (l 1 ∨ l i ∨ l i +1 ) 2≤i <k
Note that in the context of weighted Max-SAT, the weighted version of the Max-SAT resolution introduced in [BLM07; LHG08] can be used 16 . In general, the above patterns remain similar as we can suppose without loss of generality that the clauses have similar weight. Indeed, in the context of weighted Max-SAT, the fold and unfold rules are used to deal with weights. In particular, the unfold rule enables to partition clauses with respect to the minimum weight and thus to produce copies such that the patterns above, containing clauses with similar weights, can be identified. In contrast, the fold rule enables to merge similar clauses when necessary in order to simplify the formula. Definition 3.13 (Fold & Unfold). Given a clause C and two positive weights w 1 and w 2 , the fold and unfold rules are respectively defined as follows:

(C , w 1 ) (C , w 2 ) (C , w 1 + w 2 ) (C , w 1 + w 2 ) (C , w 1 ) (C , w 2 )
Other forms of inference that can be incorporated in BnB for Max-SAT include preprocessing mechanisms [BMM13; BSJ15a; BSJ15b; Kor+17; IBJ22] and SAT-inspired clause-learning techniques17 . [DCB10b; AH16; Li+21a; Li+22a]. While the former can be applied on the formula in any solving context prior to the search, the latter specifically pertains to Max-SAT BnB and recent works mainly focus on learning clauses when cuts are performed in the search tree. Such a mechanism was first used in [START_REF] Abramé | Learning Nobetter Clauses in Max-SAT Branch and Bound Solvers[END_REF] where a hard clause, referred to as nobetter clause, is learned to forbid a partial assignment which cannot lead to a better solution. To this end, the authors extend the traditional implication graph notion in SAT [START_REF] João | GRASP -a new search algorithm for satisfiability[END_REF] to encompass reasons of the semantic inference rules presented above, such that an analysis on the graph would generate a clause capturing the reasons of the cut. However, the computed nobetter clauses are usually of large size. In [Li+21a; Li+22a], Li et al. circumvent this problem by renaming clauses using newly introduced soft literals. More specifically, each soft clause C becomes hard after adding the hard encoding of l ↔ C in CNF form to the formula where l is a new soft literal. The authors thus devise a new solver on top of an existing SAT solver where clauses are learned both when a hard clause is falsified as in CDCL SAT solvers, similarly to the earlier attempt in [START_REF] Davies | Using Learnt Clauses in maxsat[END_REF], or when a soft conflict occurs, i.e., when the current partial assignment cannot be extended to a complete one falsifying fewer than UB soft clauses. The authors show that such a mechanism can make Max-SAT BnB competitive on industrial instances compared to the SAT based approaches presented in Section 3.2.2.

Lower Bound Estimation

The LB estimation is one of the most critical components of a BnB Max-SAT algorithm. Indeed, computing lower bounds with better quality entails more cuts in the search tree and, thus, faster solving. However, as these computations are done frequently during the search, the time devoted to them is closely correlated to the efficiency of the BnB algorithm. Therefore, it is important to strike a balance between the computation time for LB and its quality. A simple estimation for LB is the number of falsified clauses in the formula φ by the current assignment α, i.e., LB = cost α (φ). As this simple estimation is often quite far from the best accessible solution, BnB Max-SAT solvers refine it by calculating the number of disjoint Inconsistent Subsets (ISs), also referred to as cores, in the current formula φ| α . Definition 3.14 (Inconsistent Subset). Let φ be an unsatisfiable CNF formula. An Inconsistent Subset (IS) (or core) of φ is an unsatisfiable set of clauses Ψ ⊆ φ.

To detect ISs, BnB algorithms use Simulated Unit Propagation (SUP) [START_REF] Chu | Exploiting Unit Propagation to Compute Lower Bounds in Branch and Bound Max-SAT Solvers[END_REF]. SUP replicates the Unit Propagation (UP) mechanism used in SAT solvers which, as described in Section 2.2.1.1, consists in iteratively satisfying the literals appearing in unit clauses until a conflict is found, i.e., an empty clause is generated. Note that UP is not a valid inference rule for Max-SAT, i.e., it does not necessarily maintain equioptimality [START_REF] Chu | Exploiting Unit Propagation to Compute Lower Bounds in Branch and Bound Max-SAT Solvers[END_REF], and therefore, the variables assigned by UP are not added to the current assignment after LB estimation. More specifically, these variable assignments are stored in a separate temporary trail which is discarded after the LB computation process. That is why we say that BnB Max-SAT algorithms simulate UP, instead of actually applying it, and we refer to this mechanism as simulated UP.

The propagation steps generated by SUP can be formally represented in the form of an implication graph, defined below in the context of BnB solvers for Max-SAT. It is important to note that implication graphs used in the context of LB estimation in Max-SAT BnB are different from the traditional ones used in CDCL SAT 18 . In particular, the graph is only representative of the propagation steps performed during SUP in the last decision level. As such, the graph does not include decision nodes. Nodes with zero incoming arcs represent the literals present in unit clauses which form the first propagation layer in the SUP mechanism. In [START_REF] Abramé | Maintaining and Handling All Unit Propagation Reasons in Exact Max-SAT Solvers[END_REF], Abramé and Habet propose to maintain all SUP propagation reasons in the implication graph by considering all the unit clauses causing the assignment of the variables and show that this can help efficiently handle the SUP process as it enables to undo propagations in non-chronological order thus reducing the number of redundant propagation steps made in BnB solvers. Definition 3.15 (Implication Graph of an IS). Let ψ be an IS of a CNF formula φ and α an assignment. We suppose that exactly one clause is falsified by α (SUP stopped when the first empty clause is generated). An implication graph of ψ is a directed acyclic graph G = (V, A) defined as follows: The directed edges are labeled by clauses and the nodes are omitted in G.

• V = {l ∈ α} ∪ { C | C ∈ ψ and |C | = 1} ∪ { } • A = {(l , l ,C ) | l , l ∈ α
Notation 3.1. For an implication graph G and a literal l ∈ V (possibly ), we denote :

• pr ed G (l ) (resp. succ G (l )) the predecessors (resp. successors) of l in G

• nei g h G (l ) = pr ed G (l ) ∪ succ G (l )
• sr c G (l ) the clause that lead to the propagation of the literal l in G

The index G will be omitted if there is no confusion.

Example 3.4. We consider the IS ψ = {x 1 , x 2 , x 3 ,

x 3 ∨ x 4 , x 1 ∨ x 2 ∨ x 4 }.
An implication graph corresponding to a propagation sequence leading to the detection of ψ is represented in Figure 3.2.

x 1 When an IS is detected, it must be counted only once in the LB estimation. To this end, detected ISs are treated using two methods to ensure that they are disjoint. They are either temporarily deleted or transformed by Max-SAT resolution. The deletion of ISs has several advantages: it is less time-consuming and it doesn't increase the size of the formula. However, it produces a formula that is not equivalent to the original and, thus, that may contain less ISs. Therefore, this method applies local changes on the formula that are only preserved during the LB estimation in the current node.

x 2 x 4 x 3 x 1 x 1 ∨ x 2 ∨ x 4 x 2 x1 ∨ x2 ∨ x4 x 3 x 3 ∨ x 4 x3 ∨ x4
The second method to treat ISs, outlined in Algorithm 3.2, relies on a local application of the Max-SAT resolution rule19 [START_REF] Abramé | Local Max-Resolution in Branch and Bound Solvers for Max-SAT[END_REF]. A Max-SAT resolution transformation requires an implication graph describing the sequence of propagations leading to the detection of the IS. The transformation is usually done in the reverse order of propagation. The treatment performed by Apply_Resolution(φ,C 1 ,C 2 , v ar (l )) (line 6) consists in deleting the clauses C 1 and C 2 from the formula and adding the resolvent (returned in line 6) and compensation clauses described in the Max-SAT resolution rule. Definition 3.16 (Transformation of an IS). Let ψ be an IS and S = 〈x 1 , ..., x k 〉 be a sequence of variables appearing in ψ. The Max-SAT resolution transformation of ψ with respect to S, denoted Θ(ψ, S), is the set of clauses obtained from ψ after the application of Max-SAT resolution steps in accordance to the sequence S, i.e., Θ(ψ, S) = θ(θ...(θ(ψ, x 1 ), x 2 )..., x k ) where θ(ψ, x) denotes the application of the Max-SAT resolution step on two clauses C and C s.t. x ∈ C and x ∈ C . Remark 3.1. A transformation Θ(ψ, S) is not unique in general as the application of Max-SAT resolution steps with respect to a given variable sequence S is not deterministic and, thus, Θ(ψ, S) represents any of the possible outcomes after the transformation of ψ with respect to S. However, if S represents the reverse propagation order, the transformation with respect to S becomes deterministic and Θ(ψ, S) becomes unique.

C 2 ← sr c G (l ) 5: C ← Apply_resolution(ψ,C 1 ,C 2 , v ar (l )) 6: C 1 ← C 7: return ψ Example 3.5. We consider the same IS ψ = {x 1 , x 2 , x 3 , x 3 ∨ x 4 , x 1 ∨ x 2 ∨ x 4 } in Example 3.4
detected through the implication graph represented in Figure 3.2. The Max-SAT resolution transformation of ψ with respect to the variable sequence S = 〈x 4 , x 3 , x 2 , x 1 〉 (reverse order of propagation) is given in Figure 3.3. After the transformation, we obtain Θ(ψ, S) = { , It is important to note that, unlike the deletion method, the changes entailed by Max-SAT transformations can be maintained in the sub-tree thus ensuring that the detected IS is computed and counted only once. This is possible since Max-SAT resolution produces an equivalent formula and this entails an incremental calculation of LB while reducing redundancy in the detection of ISs. Nevertheless, this method has several shortcomings: it is time-consuming and it may increase the size of the formula by adding the compensation clauses obtained after each Max-SAT resolution step. We explain in the next section how state of the art solvers overcome these limits.

x 1 ∨ x 2 ∨ x 3 ∨ x 4 , x 1 ∨ x 3 ∨ x 4 , x 1 ∨ x 2 ∨ x 3 ∨ x 4 , x 1 ∨ x 3 , x 1 ∨ x 2 ∨ x 3 , x 1 ∨ x 2 }. x 1 ∨ x 2 ∨ x 4 x 3 ∨ x 4 x 1 ∨ x 2 ∨ x 3 x 3 x 1 ∨ x 2 x 2 x 1 x 1 x 1 ∨ x 2 ∨ x 3 ∨ x 4 x 1 ∨ x 3 ∨ x 4 x 1 ∨ x 2 ∨ x 3 ∨ x 4 x 1 ∨ x 3 x 1 ∨ x 2 ∨ x 3 x 1 ∨ x 2

Learning Schemes

One of the major challenges for Max-SAT BnB solvers is to perform efficient Max-SAT resolution transformations of ISs. There are different learning schemes in the literature. The first scheme implemented in the MiniMaxSat solver learns a transformation only if all the intermediary resolvents contain less than four literals [START_REF] Heras | MiniMaxSAT: An efficient weighted Max-SAT solver[END_REF]. A family of other schemes consists in learning transformations matching particular patterns. These patterns are mainly described by inference rules that can be deduced from Max-SAT resolution. They can be specific cases of Max-SAT resolution or a combination of several Max-SAT resolution steps as described in Section 3.2.1.2. We give below three major patterns used in state-of-the-art solvers:

l 1 ∨ l 2 , l 1 ∨ l 2 (P 1 ) l 1 l 1 ∨ l 2 , l 1 ∨ l 3 , l 2 ∨ l 3 (P 2 ) l 1 , l 1 ∨ l 2 ∨ l 3 , l 1 ∨ l 2 ∨ l 3 l 1 , l 1 ∨ l 2 , l 2 ∨ l 3 , . . . , l k-1 ∨ l k , l k (P 3 )
, l 1 ∨ l 2 , l 2 ∨ l 3 , . . . , l k-1 ∨ l k P 1 a particular case of the ACC rule (where A = l 1 in Definition 3.12) [START_REF] Bansal | Upper Bounds for MaxSat: Further Improved[END_REF]. Pattern P 2 is a specific case of cycle resolution (where k = 2) while P 3 corresponds to the chain resolution rule [LMP07; LHG08]. The particular case of P 3 where k = 1 is also referred to as the complementary unit clause rule in the literature, which can be used to replace two opposed unit clauses with an empty clause [NR00] (also a particular case of ACC where A = in Definition 3.12). A pattern can cover an IS entirely as in pattern P 3 , or partially as in patterns P 1 and P 2 . These patterns present several advantages: they can be easily identified and they don't increase the number of clauses in the formula. Furthermore, patterns P 1 and P 2 produce a unit resolvent clause which enables the solver to detect more ISs using SUP. More generic patterns, called Unit Clause Subsets (UCS), were introduced and empirically studied in [START_REF] Abramé | On the Extension of Learning for Max-SAT[END_REF]. Hereafter, we give the formal definition of these patterns and we explain how they can be easily detected using the implication graph of an IS. Definition 3.17 (Unit Clause Subset [START_REF] Abramé | On the Extension of Learning for Max-SAT[END_REF]). Let φ be a CNF formula and k ≥ 2 be a natural number. A k-Unit Clause Subset, denoted k-UCS, is a set of clauses {C 1 , ...,C k } ⊆ φ such that there exists a sequence of Max-SAT resolution steps on C 1 , ...,C k that produces a unit clause reslovent. In particular, if ∀i ∈ {1, ..., k} we have

|C i | = 2, it is a binary k-UCS, denoted k b -UCS.
Example 3.6. The patterns P 1 and P 2 which are learned in state-of-the-art BnB solvers, correspond respectively to a 2 b -UCS and a 3 b -UCS.

UCS patterns have a high apparition frequency (in more than 57% of the detected ISs [START_REF] Abramé | Max-résolution et apprentissage pour la résolution du problème de satisfiabilité maximum[END_REF]). Furthermore, certain k-UCS patterns are easily detectable by analyzing the implication graph of the obtained IS. Indeed, as outlined in the following example, the clauses which are between the conflict and the FUIP node [START_REF] João | GRASP -a new search algorithm for satisfiability[END_REF] produce a unit resolvent clause if they are transformed by Max-SAT resolution in the reverse propagation order.

Example 3.7. We consider the IS ψ = {x 1 , x 2 , x 1 ∨ x 2 ∨ x 3 , x 3 ∨ x 4 , x 3 ∨ x 5 , x 4 ∨ x 5 } detected by the sequence of unit propagations represented in the form of the implication graph G on the left in Figure 3.4. Clearly, the node x 3 is the FUIP of G. The Max-SAT resolution transformation of ψ with respect to the variable sequence S = 〈x 5 , x 4 , x 3 〉 (representing the reverse order of propagation until the FUIP is encountered) is given on the right in Figure 3.4. This transformation produces the unit resolvent x 3 . Therefore, the set of clauses ψ = {x 3 ∨ x 4 , x 3 ∨ x 5 , x 4 ∨ x 5 } ⊂ ψ is a 3-UCS. More specifically, since all the clauses in ψ are binary, it is a 3 b -UCS.

x 1

x 2 x 3 x 4 x 5 x 1 x 1 ∨ x 2 ∨ x 3 x 2 x1 ∨ x2 ∨ x3 x 3 ∨ x 4 x 3 ∨ x 5 x 4 ∨ x 5 x 4 ∨ x 5 x 4 ∨ x 5 x 3 ∨ x 5 x 3 ∨ x 4 x 3 ∨ x 4 x 3 x 3 ∨ x 4 ∨ x 5 x 3 ∨ x 4 ∨ x 5

UP-Resilience

The empirical study of UCS patterns in [START_REF] Abramé | On the Extension of Learning for Max-SAT[END_REF] led to the first observations on the relation between Max-SAT resolution transformations and the efficiency of the SUP mechanism.

These observations were formally stated by the introduction of a new property called UP-resilience [START_REF] Abramé | On the Resiliency of Unit Propagation to Max-Resolution[END_REF]. This new theoretical property aims to characterize Max-SAT resolution transformations in order to explain the efficiency of learning schemes observed in state-of-the-art BnB Max-SAT solvers. The main motivation behind this property is the fragmentation phenomenon [START_REF] Abramé | On the Resiliency of Unit Propagation to Max-Resolution[END_REF] which occurs when the information within a clause is fragmented into two (or more) clauses after transformation by Max-SAT resolution. This phenomenon, illustrated in the following example, may obstruct the exploitation of clauses by the SUP mechanism.

Example 3.8. We consider the same IS ψ in Example 3.4 detected by the implication graph represented in Figure 3.2 and whose Max-SAT resolution transformation with respect to the the reverse order of propagation is represented in Figure 3.

3 producing Θ(ψ, S) = { , x 1 ∨ x 2 ∨ x 3 ∨ x 4 , x 1 ∨ x 3 ∨ x 4 , x 1 ∨ x 2 ∨ x 3 ∨ x 4 , x 1 ∨ x 3 , x 1 ∨ x 2 ∨ x 3 , x 1 ∨ x 2 }.
If the unique neighbor of x 1 in the implication graph is set to True in the transformed IS, we obtain Θ(ψ, S)

| {x 4 } = {x 1 ∨ x 3 , x 1 ∨ x 3 , x 1 ∨ x 2 , x 1 ∨ x 2 ∨ x 3 , x 1 ∨ x 2 ∨ x 3 }.
Clearly, the literal x 1 can't be propagated in Θ(ψ, S)| {x 4 } . We can produce the resolvent x 1 if we perform a Max-SAT resolution step between the clauses x 1 ∨ x 3 and x 1 ∨ x 3 but the SUP mechanism alone cannot ensure the propagation of this literal in the transformed IS even with respect to its neighborhood in the implication graph. We say that the information leading to the propagation of x 1 was fragmented into several compensation clauses.

When fragmentation occurs, the compensation clauses which may propagate a literal of the constructed implication graph can contain additional literals which are not in its initial neighborhood. More specifically, the neighborhood of a literal l in the implication graph contain literals which are in direct interaction with it and should enable, once propagated in the detected IS, the propagation of l . However, if after the transformation of the IS, the fragmentation occurs, new literals that interact directly with l are introduced and may thus obstruct the propagation of l by SUP even when considering all the literals appearing in its neighborhood. Clearly, the power of SUP is depleted in such cases. Thus, to detect if a transformation is not affected by the fragmentation phenomenon, we can rely on the capability of SUP to propagate the literals of the constructed implication graph when their neighborhood literals are set to True. From here on, we will say that a literal l can be propagated in a formula φ if the unit clause C = l can be inferred from φ by unit propagation. We provide hereafter a formal definition of UP-resilience in a given implication graph. Definition 3.18 (UP-Resilience in an Implication Graph). Let ψ be an IS detected through the propagation steps described by an implication graph G = (V, A) and S be a sequence of variables appearing in ψ. The transformation Θ(ψ, S) is UP-resilient for literal l ∈ V in G if:

∈ nei g h(l ) or l can be propagated in Θ(ψ, S)| nei g h(l ) Θ(ψ, S) is UP-resilient for L ⊆ V in G if it is UP-resilient for each literal l ∈ L in G and it is UP-resilient in G if it is UP-resilient for V in G.
Remark 3.2. Note that the neighborhoods which include the special node are not valid assignments. All transformations are considered UP-resilient for literals with such neighborhoods.

Example 3.9. We consider the same IS ψ in Example 3.4 and the implication graph G leading to the detection of ψ represented in Figure 3.2. In Example 3.8, we showed that the fragmentation phenomenon occurs after transformation of ψ with respect to the reverse propagation sequence S since the literal x 1 can't be propagated in Θ(ψ, S)| nei g h(x 1 ) . Thus, the described transformation is not UP-resilient in the implication graph G.

The previous definition of UP-resilience depends on the neighborhoods of the literals in the implication graph. However, the same IS can be detected by several sequences of propagation steps which can be described by distinct implication graphs as illustrated in Example 3.10. To overcome this limitation, the notion of possible neighborhoods of a literal appearing in an IS is introduced in [START_REF] Abramé | On the Resiliency of Unit Propagation to Max-Resolution[END_REF]. We provide a formal definition below then we define the generic notion of UP-resilience which does not depend on the propagation steps leading to the IS discovery by taking all the possible implication graphs into account.

Example 3.10. We consider the same IS ψ = {x 1 , x 2 , x 1 ∨ x 2 ∨ x 3 , x 3 ∨ x 4 , x 3 ∨ x 5 , x 4 ∨ x 5 } in Example 3. 4. In addition to the original implication graph, represented in Figure 3.2 (and also on the left in Figure 3.5), another sequence of propagations corresponding to the implication graph represented on the right in Figure 3.5 can lead to the detection of the IS ψ. The propagation sequences corresponding to the same implication graph are considered as equivalent. . We naturally extend this definition on any set of literals L appearing in ψ as follows:

x 1 x 2 x 4 x 3 x 1 x 1 ∨ x 2 ∨ x 4 x 2 x1 ∨ x2 ∨ x4 x 3 x 3 ∨ x 4 x3 ∨ x4 x 1 x 2 x 3 x 4 x 1 x 1 ∨ x 2 ∨ x 4 x 2 x 1 ∨ x 2 ∨ x 4 x 3 x 3 ∨ x 4 x 1 ∨ x 2 ∨ x 4
pnei g h(L) = { l ∈L nei g h G (l )|G = (V, A) implication graph of ψ s.t. L ⊆ V } .

Definition 3.20 (UP-Resilience). Let ψ be an IS and S be a sequence of variables appearing in ψ. The transformation Θ(ψ, S) is UP-resilient for a literal l appearing in ψ if we have:

∀N ∈ pnei g h ψ (l ) : ∈ N or l can be propagated in Θ(ψ, S)| N

Θ(ψ, S) is UP-resilient if it is UP-resilient for all the literals appearing in ψ.

Example 3.11. We consider the same IS ψ in Example 3.4, whose distinct implication graphs corresponding to the possible propagation sequences are represented in Figure 3.5. We have pnei g h(x 1 ) = {{x 4 }, { }}. As showcased in Example 3.8, for N = {x 4 }, the literal x 1 can't be propagated in Θ(ψ, S)| N . Therefore, the transformation is not UP-resilient for x 1 and, consequently, it is not UP-resilient.

The impact of Max-SAT resolution transformations on the SUP mechanism was studied through UP-resilience in [START_REF] Abramé | On the Resiliency of Unit Propagation to Max-Resolution[END_REF]. In particular, UP-resilient transformations maintain the propagations which are not necessary anymore to an IS (e.g., if it is not minimal). Indeed, if a transformation is UP-resilient for a set of literals L, then the literals of L can be propagated in the transformed formula if the literals of one of its possible neighborhoods are set to True. This is highlighted in the property established in Proposition 3.1. Furthermore, the major patterns P 1 , P 2 and P 3 are UP-resilient and, thus, UP-resilience contributes to explain the empirical efficiency of learning mechanisms used in the literature [LMP07; Li+10a; AH14d; Abr15; AH15a].

Proposition 3.1 ([AH15b]

). Let ψ be an IS of and S be a sequence of variables appearing in ψ. For any set of literals L appearing in ψ, if the transformation Θ(ψ, S) is UP-resilient for L then ∀N ∈ pnei g h(L) : ∈ N or ∀l ∈ L, l can be propagated in Θ(ψ, S)| N \{l } .

Proposition 3.2 ([AH15b]

). Let ψ be an IS. For any ψ ⊆ ψ that matches one of the pattern P 1 , P 2 or P 3 . There exists a sequence S of variables in ψ s.t. Θ(ψ, S) is UP-resilient.

Finally, it was empirically shown in [START_REF] Abramé | On the Resiliency of Unit Propagation to Max-Resolution[END_REF] that the order of application of Max-SAT resolution impacts the UP-resilience of the transformations by comparing two orders. The Reverse Propagation Order (RPO) applies Max-SAT resolution steps in the reverse order of propagation which is used in most of state-of-the-art solvers while the second order, called Smallest Intermediary Resolvent (SIR) and initially introduced in [AH14a], applies the Max-SAT resolution steps based on the size of the obtained resolvents, favoring the smallest ones. Furthermore, learning schemes in the literature were empirically evaluated through UP-resilience in [START_REF] Abramé | On the Resiliency of Unit Propagation to Max-Resolution[END_REF]. More specifically, the authors show that the learning scheme implemented in MiniMaxSat [START_REF] Heras | MiniMaxSAT: An efficient weighted Max-SAT solver[END_REF] behaves very differently than the family of schemes relying on patterns as it learns more transformations in average (more than 60% compared to patterns) however it achieves the lowest percentage in terms of UP-resilience. In contrast, the schemes relying on patterns learn less than 20% of the transformations but achieve a high percentage of UP-resilience (100% if using a scheme relying on all the traditional patterns P 1 , P 2 and P 3 and 97% if they are extended by specific UCSs as described in [START_REF] Abramé | On the Extension of Learning for Max-SAT[END_REF]). Since the MiniMaxSat scheme achieves the worst results in terms of solved instances and average solving time, these results indicate that the UP-resilience property is a valid characterization and quality measure of Max-SAT resolution transformations in the context of Max-SAT BnB.

SAT-Based Approaches

SAT-based algorithms for Max-SAT rely on the power of SAT solvers as effective engines for solving decision problems [ABL13; BJM21]. These algorithms became popular this last decade as they are able to harness the efficiency of modern SAT solvers on industrial instances. In the following sections, we present the three major SAT-based algorithm families. We start by plain iterative search methods which call SAT solvers to determine the optimum value within the interval of feasible solutions. Then, we focus on core-guided algorithms which take advantage of the ability of SAT solvers to return cores when the formula is unsatisfiable. Finally, we review the Implicit Hitting Set (IHS) approach which mainly relies on a reformulation to the implicit hitting set paradigm.

Iterative Algorithms

A well-known family of SAT-based approaches to solve the Max-SAT problem consists in iterative algorithms which straightforwardly consider the decision version of Max-SAT defined below [ABL13; Mor+13; BJM21]. This decision transformation of Max-SAT simply checks whether the optimum of the input formula is bounded by a given value. Solving the Max-SAT problem for a given input CNF formula φ is equivalent to determining the threshold cost ∈ {0, . . . , |φ|} such that the pairs (φ, cost -1) and (φ, cost ) form respectively a negative and a positive instance of the decision version. Indeed, in such case we clearly have opt (φ) = cost 20 . Iterative Algorithms for Max-SAT are based on this simple idea and mainly differ in the search methods used to explore the interval of feasible solutions I = {0, . . . , |φ|} in order to determine the threshold.

Definition 3.21. The decision version of Max-SAT is defined as follows:

Decision Version of Max-SAT Input: a CNF formula φ, cost ≥ 0 Question: opt (φ) ≤ cost ? A given bound on the optimum of a formula can be easily established by enforcing cardinality constraints 21 on a set of relaxation (or blocking) variables which are added to each clause in the formula as described in Algorithm 3.3. Each variable in R is a newly created variable (line 2) which is added to a clause in the formula (line 4). Formally, given a set of relaxation variables R and a whole number k, a cardinality constraint ensures a certain (in)equality on the sum of the variables in R and k with respect to a specific comparison operator as defined below. In particular, when ⊗ =≤ (resp. ⊗ =≤) the cardinality constraint is a typical AtMost (AtLeast) constraint on the set R. Such constraints are extensively studied in the literature and many CNF encodings have been proposed with varied degrees of efficiency [BBR06; HN13; BTS19; Ngu+20; RM21]. 20 Note that, in the case of a satisfiable formula, a simple verification with cost = 0 is sufficient to establish opt (φ) = 0, although it is common to abuse Definition 3.21 by allowing the negative value cost = -1 which forms a negative instance of the decision version when coupled with any CNF formula. Clearly, augmenting a formula with relaxation variables R and a CNF encoding of an AtMost constraint enforcing a given bound cost on R followed by a call to SAT solver is equivalent to solving the decision version of Max-SAT. In the following algorithms, we will denote S AT (φ) the call of a SAT solver on the input formula φ. The oracle returns True if the formula is satisfiable and False otherwise. Iterative algorithms rely on such a mechanism to determine the optimum of a given formula. Hereafter, we present the major iterative methods used to explore the interval of feasible solutions.

Linear Search [FM06b; ES06a; BP10]

An iterative algorithm relying on linear search mainly explores the solution interval through a simple variation of k. A simple method, referred to as linear SAT-UNSAT search and described in Algorithm 3.4, consists in starting from the upper cost value |φ| and then iteratively decrementing its value by 1 until obtaining a positive instance of the decision version. The origins of this method can be traced back to the works in [Alo+02; XRS03]. In contrast, the linear UNSAT-SAT search where k is incremented until the optimum is found is mostly used, modulo certain refinements as first described in [START_REF] Fu | On Solving the Partial MAX-SAT Problem[END_REF], in the context of core-guided Max-SAT solvers which will be presented in the following section. Notice that the number of decision calls needed to solve the input formula using basic linear search is in O(|φ|).

Binary Search [FM06b; Kos+12]

This method is similar to the traditional binary search algorithm performed on sorted arrays [START_REF] Thomas | Introduction to Algorithms[END_REF]. As described in Algorithm 3.5, it consists in reducing the search space interval by refining both its upper and lower bounds. In each step, the middle value of the interval is computed and provided alongside the formula as input to the decision version. If it is a positive instance the middle value becomes the new upper bound of the interval otherwise it become the new lower bound. This treatment is repeated until the threshold value is identified. Binary search helps to reduce the number of decision calls which become bounded by O(l og (|φ|)). This approach was also incorporated in different core-guided algorithms [MP08; HMM11; MHM12]. In [START_REF] Koshimura | QMaxSAT: A Partial Max-SAT Solver[END_REF], the authors propose a hybrid method in which linear and binary search are alternated.

Bit-Based Search [GM07; CLS08; GM11]

This approach takes advantage of the fact that the solution is a natural number. As described in Algorithm 3.6, it consists in determining the bits in the binary representation of the optimum starting from the most significant one. Similarly to binary search, this method requires O(l og (|φ|)) calls to a SAT solver.

Example 3.12. We consider the formula It is easy to extend the previous methods to weighted (partial) Max-SAT. Indeed, one can easily check whether the set of hard clauses is satisfiable through a single call to a SAT oracle, in which case a search can be performed on the interval I = {0, . . . , (C ,w)∈φ s.t. w<∞ w} through relaxation variables added to soft clauses. The SAT calls are thus performed using cardinality constraints of the following form:

φ = C 1 ∧C 2 ∧C 3 ∧C 4 ∧C 5 ∧C 6 where C 1 = x 1 , C 2 = x 2 , C 3 = x 2 , C 4 = x 1 ∨ x 3 , C 5 = x 1 ∨ x 2 and C 6 = x 2 ∨ x 3 .

An iterative algorithm for Max-SAT augments the formula φ with relaxation variables to generate φ r el axed

= 1≤i ≤6 (C i ∨ r i ) where R = {r i | 1 ≤ i ≤ 6}
cost ←-cost + 2 k 6: if S AT (φ ∪C N F ( r ∈R r < cost )) then 7: cost ←-cost -2 k 8:
k ←k -1 9: end while 10: return cost Note that other techniques can be used to further enhance the power of iterative search. For instance, models provided by the decision oracle for satisfiable instances can be exploited to refine the upper bounds within the interval of feasible solutions as described in [START_REF] Le | The Sat4j library, release 2.2[END_REF]. Furthermore, more relevant variations in the cost values can be performed in weighted Max-SAT by ensuring the validity of certain bounds as suggested in [START_REF] Ansótegui | A New Algorithm for Weighted Partial MaxSAT[END_REF]. Finally, large formulas require the addition of many relaxation variables and the generation of CNF encodings of cardinality constraints with large size which may render pure iterative search inefficient in such cases. In the next section, we present a second family of SAT-based approaches, called core-guided algorithms, which try to offset this disadvantage by further exploiting the power of modern SAT solvers.

Core-Guided Algorithms

The core-guided approach for Max-SAT solving regroups a family of algorithms which take advantage of the ability of SAT solver to return cores when the input formula is unsatisfiable [ABL13; Mor+13; BJM21]. Since these algorithms often maintain a set of hard clauses, we present them in the context of partial Max-SAT while supposing that the set of hard clauses is initially satisfiable. The first core-guided algorithm for Max-SAT was introduced in [FM06b; Fu07]. This procedure, commonly referred to as the Fu and Malik (FM) Algorithm, is described in Algorithm 3.7. It consists in adding cardinality constraints solely on the clauses of the core returned by the SAT solver. More specifically, a call to a SAT oracle on the current formula is performed in each step (line 3). If the formula is unsatisfiable, the solver returns a core in the form of a subset of clauses in the formula. Relaxation variables are then added to these clauses and an at most constraint enforcing a bound of one is encoded and added to the set of hard clauses (lines 6-8). Furthermore, the optimal cost is incremented by 1 (line 9) until the formula becomes satisfiable, in which case it is returned by the algorithm as the optimum of the input formula (lines 4-5). (R, ψ ) ←-Ad d _Rel axat i on_V ar i abl es(ψ ∩ S)

7: S ←-S \ (S ∩ ψ) ∪ ψ 8: H ←-H ∪C N F ( r ∈R r ≤ 1) 9:
cost ←cost + 1 10: end while Example 3.13. We consider the partial CNF formula φ = H ∪ S where H = and S =

C 1 ∧ C 2 ∧ C 3 ∧ C 4 ∧ C 5 ∧ C 6 where C 1 = x 1 , C 2 = x 2 , C 3 = x 2 , C 4 = x 1 ∨ x 3 , C 5 = x 1 ∨ x 2 and C 6 = x 2 ∨ x 3 .
The Fu and Malik algorithm calls a SAT oracle on φ which returns that the formula is unsatisfiable alongside, for instance, the core ψ = {C 2 , C 3 }. Note however that the returned core is not necessarily minimal in terms of size. The algorithm adds relaxation variables to core ψ to obtain ψ = {x 2 ∨r 1 , x 2 ∨r 2 } where r 1 and r 2 are new relaxation variables. Since ψ contains soft clauses only, the set S is updated as follows S = S \ψ∪ψ . The cardinality constraint is also added to the set of hard clauses, i.e., H = C N F (r 1 +r 2 ≤ 1), and the cost value is incremented by 1. A second SAT call is then performed. The formula is still unsatisfiable and the oracle returns the core ψ = {C 1 , C 4 , C 5 , C 6 }. Similarly to the above treatment, we add relaxation variables to ψ and the relaxed set ψ = {C 1 ∨ r 3 , C 4 ∨ r 4 , C 5 ∨ r 5 , C 6 ∨ r 6 } is used to update the set of soft clause S while adding the encoding C N F (r 3 + r 4 + r 5 + r 6 ≤ 1) to the set of hard clauses. After incrementing the cost, a last call to the SAT oracle returns that the formula is satifiable and the optimum value 2 is returned by the FM algorithm.

Many variations of this algorithm have been proposed in the literature. In particular, a weighted version of FM, the WPM1 algorithm, was introduced in [ABL09b]22 . The idea is similar to FM except that the clauses are replicated with respect to the minimum weight in the core. This treatment corresponds to application of the unfold rule in Definition 3.13. Formally, let mi nw denote the minimum weight over the clauses in the core ψ, i.e., mi nw = mi n C ∈ψ w(C ). For each soft clause C in ψ of weight higher than mi nw, a copy is generated with weight w(C )-mi nw. Then, relaxation variables are added to all soft clauses in the core, which now have weight mi nw. A cardinality constraint is added to the set of hard clauses as in FM. Finally, the value mi nw is used to update the cost (instead of incrementing it by 1).

Other variations of FM include (W)MSU3 [MP07], (W)PM2 [ABL09a; ABL09b; ABL10b] and OLL [START_REF] Morgado | Core-Guided MaxSAT with Soft Cardinality Constraints[END_REF] among many others [MM08; MP08; HMM11; ADG15; ADR15; IMM19; IBJ21]. The MSU3 algorithm adds relaxation variables on demand as in FM but maintains one variable only for each clause [START_REF] Marques | On Using Unsatisfiability for Solving Maximum Satisfiability[END_REF]. More specifically, when a core is found, the soft clauses which were not relaxed in prior steps are augmented with new relaxation variables and the bound enforced on the relaxation variables is updated. This algorithm, implemented in the MSCG [START_REF] Morgado | MSCG: Robust Core-Guided MaxSAT Solving[END_REF] and Open-WBO23 [START_REF] Martins | Open-WBO: A Modular MaxSAT Solver[END_REF] solvers, is very similar to iterative linear search but relaxation variables are added depending on the cores as is expected of a core-guided approach. The PM2 algorithm similarly maintains one relaxation variable per clause but allows to split disjoint cores over different cardinality constraints [ABL09b; ABL09a; ABL10b]. To this end, PM2 maintains a record of each core found so far along with their sets of relaxation variables. When a new core disjoint with the previous ones is found, new relaxation variables are added to its soft clauses and an additional AtMost constraint is enforced over its variables. Otherwise, the previous constraints which clash with it are merged into a new AtMost constraint enforcing the sum of bounds (plus one for the current core) over their relaxation variables and the additional variables necessary to relax soft clauses in the core.

A more sophisticated core-guided algorithm introduced in the literature for Max-SAT solving is OLL [START_REF] Morgado | Core-Guided MaxSAT with Soft Cardinality Constraints[END_REF] 24 which is implemented in the MSCG [START_REF] Morgado | MSCG: Robust Core-Guided MaxSAT Solving[END_REF] and RC2 [START_REF] Ignatiev | RC2: an Efficient MaxSAT Solver[END_REF] solvers. The main idea behind OLL is to reuse cardinality constraints as they are discovered while mixing the strengths of previously introduced methods. Similarly to MSU3, OLL adds one relaxation variable per clause while also adding a new cardinality constraint for each core as in FM. The main difference between OLL and these algorithms is that the soft clauses are hardened after relaxation while cardinality constraints are added as unit soft clauses. More specifically, whenever a new core is found, the working formula is updated with a new soft constraint allowing to set one newly introduced relaxation variable to True if all the previous soft constraints in the core are satisfied. Furthermore, the bounds enforced on the previous constraints are also increased by 1. Note that this algorithm takes advantage of well-known encodings which allow to independently encode the sum side in a cardinality constraint and to enforce a specific bound through a single literal [BB03; Sin05; ES06b; Mar+14a].

Unlike the previously described algorithms which use cardinality constraints through the addition of relaxation variables, other core-guided algorithms in the literature use pure Max-SAT inference to transform cores returned by SAT solvers. Similarly to BnB solvers, these methods rely on the Max-SAT resolution rule in Definition 3.11 to transform the cores returned by the SAT oracle. The first attempt in [START_REF] Heras | Read-Once Resolution for Unsatisfiability-Based Max-SAT Algorithms[END_REF] using such a method consists in retrieving a resolution proof whenever a core is returned by the oracle 25 . If the proof is read once, it is simply adapted into a Max-SAT resolution proof otherwise a traditional core-guided algorithm such as FM is applied. To adapt the read-once resolution proof, one only needs to replace each resolution step by a Max-SAT resolution step26 [BLM06; BLM07] Algorithm 3.8 describes another inference-based core guided procedure called PMRes which was implemented in the EVA solver [START_REF] Narodytska | Maximum Satisfiability Using Core-Guided MaxSAT Resolution[END_REF]. Whenever a core ψ is returned by the SAT solver, PMRes renames the soft clauses by introducing equivalent literals (lines 5-9). Let R be the set containing the negation of such literals. Since at least one soft clause must be falsified, the clause C = r ∈R r can be added as a hard clause to ensure this context-induced constraint while maintaining Max-SAT reducibility27 . Then, a sequence of Max-SAT resolution applications is performed in Apply_MaxSAT_Resolution(H , S, R) (line 6) and the transformed set of hard and soft clauses are returned after this procedure. More specifically, at each step, a literal l is chosen in R and a Max-SAT resolution step between clauses l and r ∈R r is performed while adding the generated resolvent clause and compensation clauses to the set of soft clauses. The literal l is then deleted from l and the next step is performed with respect to the updated set R. Note that the premises of the first step corresponds to l and C28 while the conclusion of the last step is the empty clause, in which case the cost is updated to account for it instead of adding it to the formula (lines 13).

H ←-H ∪ { r ∈R r } 12:
H , S ←-Appl y_M axS AT _Resol ut i on(H , S, R)

13:

cost ←cost + 1 14: end while It is easy to notice that, if a new literal d such that d ⇔ r ∈R\{l } r is introduced in each step, then the compensation clauses generated by Max-SAT resolution between l and r ∈R r can be compressed into the form l ∨ d . The PMRes algorithm employs this mechanism by introducing new literals in the Max-SAT resolution transformation process and adding the required equivalences to the set of hard clauses.

Example 3.14. We consider the partial CNF formula φ = H ∪ S where H = and S

= C 1 ∧ C 2 ∧ C 3 ∧ C 4 ∧ C 5 ∧ C 6 where C 1 = x 1 , C 2 = x 2 , C 3 = x 2 , C 4 = x 1 ∨ x 3 , C 5 = x 1 ∨ x 2 and C 6 = x 2 ∨ x 3 .
The PMRes algorithm calls a SAT oracle on φ which returns that the formula is unsatisfiable alongside the core ψ = {C 2 , C 3 }. Two new variables r 1 and r 2 are introduced to represent the soft clauses in the core and we update the hard and soft clause sets as follows: H = C N F (C 2 ⇔ r 1 ) ∪C N F (C 2 ⇔ r 1 ) ∪ {r 1 ∨ r 2 } and S = S \ ψ ∪ {r 1 , r 2 }. Under a lexicographic ordering of the variables, the Max-SAT resolution rule is applied first on the clauses r 1 ∨ r 2 and r 1 to generate the resolvent clause r 2 and the compensation clause r 1 ∨ r 2 then on clauses r 2 and r 2 to generate the empty clause and thus the cost is incremented by 1. Consequently, after the transformation we have S = {C 1 , C 4 , C 5 , C 6 , r 1 ∨ r 2 } and cost = 1. The SAT oracle is called again on H ∪ S and returns the core ψ = {C 1 , C 4 , C 5 , C 6 }. We update the sets of hard and soft clauses as follows H = H ∪C N F (C 1 ⇔ r 3 )∪• • •∪C N F (C 6 ⇔ r 6 )∪{r 3 ∨r 4 ∨r 5 ∨r 6 } and S = S \ ψ ∪ {r 3 , r 4 , r 5 , r 6 }. As in the previous transformation, several Max-SAT resolution steps are performed to obtain the empty clause, which we represent in Figure 3.6 (in lexicographic order). The transformation produces the set S = {r 1 ∨r 2 , r 3 ∨r 4 , r 3 ∨r 4 ∨r 5 , r 3 ∨r 4 ∨r 5 ∨r 6 , r 4 ∨ r 5 , r 4 ∨ r 5 ∨ r 6 , r 5 ∨ r 6 } while the cost is also incremented by 1 to account for the empty clause. A last call to the sat oracle returns that the formula is satisfiable and thus the algorithm terminates specifying that the optimum value is 2. Note that the compensation clauses can also be compressed as specified in [START_REF] Narodytska | Maximum Satisfiability Using Core-Guided MaxSAT Resolution[END_REF] Finally, we briefly recall some specific metaheuristics and techniques used in core-guided solvers 29 . One major technique used in the context of weighted Max-SAT is stratification [START_REF] Ansótegui | Improving WPM2 for (Weighted) Partial MaxSAT[END_REF]. This technique aiming to generate cores with higher minimum weights consists in partitioning the soft clauses into k sets such that the clauses in set i ∈ {2, . . . , k} have high weight than those in the set i -1. The solving process starts by considering only the set k with the highest weights, ignoring all the other soft clauses, thus potentially ensuring the detection of better cores in terms of minimal weight. Once the problem restricted to the higher-weight clauses is solved, the search process is restarted by adding the next set until all the soft clauses become included in the working formula. The boolean lexicographic optimization approach in [START_REF] Marques-Silva | Boolean lexicographic optimization: algorithms & applications[END_REF] can also be helpful in this regard.

by introducing additional variables. For instance, if we introduce a new variable d with the hard encoding C N F

(d ⇔ x 4 ∨ x 5 ∨ x 6 ) x 3 ∨ x 4 ∨ x 5 ∨ x 6 r 3 r 4 ∨ r 5 ∨ r 6 r 4 r 5 ∨ r 6 r 5 r 6 r 6 r 3 ∨ r 4 r 3 ∨ r 4 ∨ r 5 r 3 ∨ r 4 ∨ r 5 ∨ r 6
An important feature of SAT-based algorithms for Max-SAT is that they rely on the power of assumption-based SAT solving. Modern SAT solvers often provide interfaces for solving formulas where assumptions are provided in the form of a set of literals. This feature originates from the work in [START_REF] Eén | Temporal Induction by Incremental SAT Solving[END_REF] and is now commonly used in modern SAT solvers. When the solver is called on a given formula, it is forced to assign the assumption literals before starting the actual search. If a new literal l is added to a clause C before passing it to the SAT oracle, then adding l as an assumption can render the clause inactive (since it will be satisfied by l ) while assuming l can activate the clause for the subsequent search to be performed by the SAT solver. Assumptions are a powerful tool that can help Max-SAT solvers take advantage of incremental SAT solving where a single instance of the oracle is used to solve all of the formulas while maintaining information acquired throughout the the previous calls. In the context of Max-SAT, such a mechanism was first employed and shown effective in [START_REF] Martins | Incremental Cardinality Constraints for MaxSAT[END_REF]. A restart mechanism was proposed in [START_REF] Si | On Incremental Core-Guided MaxSAT Solving[END_REF] enabling to discard learned information if deemed useful. More recently, Hickey and Bacchus showed that two light-weight techniques, namely enqueuing assumptions in bulk and enhancing trail-savings, can entail non-trivial performance improvement in the context of incremental SAT-based Max-SAT solving [START_REF] Hickey | Speeding Up Assumption-Based SAT[END_REF].

Another mechanism used in modern core-guided solvers is core exhaustion [Ans+13; IMM19]. The idea behind this heuristic is to quickly increase the bound within an At-Most constraint on the relaxation variables of a core. More specifically, given a newly identified and relaxed core ψ alongside its set of relaxation variables R, the formula H ∧ ψ ∧C N F ( r ∈R r ≤ 1) (where H denotes the set of hard clauses) may still be unsatisfiable. Successive incremental calls to the SAT solver focusing on the last core may therefore enable a cost-effective improvement of the bound on the cardinality constraint. A different mechanism which is also specific to cores, and which simply aims to reduce their size, is core reduction. The first reduction technique, called core trimming, was used in [START_REF] Morgado | MSCG: Robust Core-Guided MaxSAT Solving[END_REF] by performing successive SAT calls on each detected core alongside the set of hard clauses until a fixed point (in terms of core size) is reached. Another reduction mechanism used in [START_REF] Ignatiev | RC2: an Efficient MaxSAT Solver[END_REF] is based on the deletion-based minimal core extraction method introduced in [Sil10] while limiting the total number of conflicts encountered during the successive SAT calls.

Implicit Hitting Set Approach

The implicit Hitting Set (IHS) approach for Max-SAT described in Algorithm 3.9 was initially introduced in [DB11; Dav13a]. IHS-based Max-SAT solving also relies on the ability of SAT solvers to return cores. However, cores are stored in a list K and are exploited differently then the core-guided approaches presented in the previous section. Indeed, as its name suggests, this approach is based on the implicit hitting set paradigm [START_REF] Davies | Using Learnt Clauses in maxsat[END_REF][START_REF] Chandrasekaran | Algorithms for Implicit Hitting Set Problems[END_REF]. Formally, given a set of cores K , a hitting set H S of K is a set of soft clauses such that for all ψ ∈ K we have H S ∩ ψ = . A minimal hitting set H S of K is a hitting set of K with minimal size, i.e., |H S| ≤ |H S | for any hitting setting H S of K . Clearly, the size of a minimal hitting set H S of K such that a call to a SAT solver on φ \ H S, where φ is the input formula, corresponds to the optimum of φ since the clauses in the minimal set H S are sufficient to cover all the cores in K . Note how this approach does not include any treatment on the detected cores nor on the input formula which is why it is usually considered as a separate approach, different from the core-guided algorithms described in the previous section.

Example 3.15. We consider the CNF formula

φ = C 1 ∧ C 2 ∧ C 3 ∧ C 4 ∧ C 5 ∧ C 6 where C 1 = x 1 , C 2 = x 2 , C 3 = x 2 , C 4 = x 1 ∨ x 3 , C 5 = x 1 ∨ x 2 and C 6 = x 2 ∨ x 3 .
The set of detected cores is initially empty, i.e., K = , and thus a minimal hitting set on K is clearly H S = . The IHSbased algorithm thus calls a SAT oracle on φ which returns that the formula is unsatisfiable alongside the core ψ 1 = {C 2 , C 3 }. The set of detected cores is thus updated as follows: K = {ψ 1 }. The algorithm then computes a minimal hitting set on K . For instance H S = {x 2 } is such a set as the clause x 2 is sufficient to cover the only core in K . Next, the algorithm calls the SAT solver on the formula φ \ {x 2 }. The core ψ 2 = {C 1 ∧C 4 ∧C 5 ∧C 6 } is returned and added to the set K . Now, a minimal hitting set on K is for example H S = {x 1 , x 2 } as clauses x 1 and x 2 are Algorithm 3.9: Implicit Hitting Sets for Max-SAT Input: a CNF formula φ Output: opt (φ) 1: K ←- Different methods can be used to compute minimal-size hitting sets including BnB [DB11; Blä+22] and SAT-based methods [START_REF] Ignatiev | Smallest MUS Extraction with Minimal Hitting Set Dualization[END_REF]. However, it is more common to reduce this problem to an Integer Linear Programming (ILP) instance which is solved by a dedicated solver [DB11; Dav13a; SBJ16]. Extensions to the basic IHS approach described in Algorithm 3.9 include maintaining lower and upper bounds throughout the search as is the case in binary iterative search [START_REF] Davies | Postponing Optimization to Speed Up MAXSAT Solving[END_REF]. Other mechanisms aiming to enhance the efficiency of the ILP component were introduced in the literature such as additional constraints extracted from the formula [DB11; DB13a] or employing bounding techniques to harden clauses [START_REF] Bacchus | Reduced Cost Fixing in MaxSAT[END_REF]. Recent work also addresses the large worst-case number of cores that IHS solvers may have to extract before terminating by introducing the notion of abstract cores, which enables a compact representation for a potentially exponential number of regular cores [START_REF] Berg | Abstract Cores in Implicit Hitting Set MaxSat Solving[END_REF]. Solvers based on the IHS approach include MaxHS 30 [DB11; Dav13a], which invokes the CPLEX solver 31 for the ILP optimization component, and LMHS 32 [START_REF] Saikko | LMHS: A SAT-IP Hybrid MaxSAT Solver[END_REF], which includes interfaces to two ILP solvers, namely CPLEX and SCIP 33 [START_REF] Achterberg | SCIP: solving constraint integer programs[END_REF].

Other Complete Approaches

In this section, we briefly overview other complete methods that were not accounted for in previous sections. One such approach which was investigated in the literature is reducing Max-SAT to other well-known optimization problems. Note that it is common to use reformulations and relaxations for specific components in Max-SAT algorithms as is the case for the IHS SAT-based approach presented in the previous section. Full encodings 30 http://www.maxhs.org/ 31 https://www.ibm.com/products/ilog-cplex-optimization-studio 32 https://www.cs.helsinki.fi/group/coreo/lmhs/ 33 https://www.scipopt.org/ 110 3 Maximum Satisfiability -3.2 Algorithms from Max-SAT to other problems have also been introduced in the literature although with less success compared to the current methods dedicated for Max-SAT. Known reductions include modeling Max-SAT as an ILP program which is passed to a dedicated solver such as CPLEX or SCIP [START_REF] Ansótegui | Solving (Weighted) Partial MaxSAT with ILP[END_REF]. Other paradigms used in the literature include Answer Set Programming (ASP) [START_REF] Oikarinen | Max-ASP: Maximum satisfiability of answer set programs[END_REF] and Constraint Programming (CP) [De +03].

Complete methods for Max-SAT also include sequential portfolio algorithms which take advantage of the diversity in the Max-SAT solving landscape by predicting the suitability of different solvers for specific instances. To this end, features such as problem size, balance and local search probes34 were used to approximate the runtime of a solver on a particular instance through linear regression in [START_REF] Matos | A MAX-SAT Algorithm Portfolio[END_REF]. A classifier based on a cost-sensitive hierarchical clustering model, able to handle larger feature sets, was also devised in [START_REF] Malitsky | Algorithm Portfolios Based on Cost-Sensitive Hierarchical Clustering[END_REF]. The most recent algorithm in this category is the instance-specific algorithm configurator introduced in [AMS14; Ans+16] and based on the ISAC clustering method in [START_REF] Kadioglu | ISAC -Instance-Specific Algorithm Configuration[END_REF]. Finally, as in SAT 35 , different parallel algorithms were also devised for Max-SAT in the literature including (parallel) portfolios and space-splitting methods which perform an exhaustive exploration of the search space [START_REF] Lynce | Parallel Maximum Satisfiability[END_REF].

Beyond Complete Methods

In addition to complete approaches for Max-SAT solving, state-of-the-art methods also include incomplete algorithms. Incomplete algorithms for Max-SAT mainly rely on Stochastic Local Search (SLS) as in SAT 36 . In fact, SLS algorithms for SAT, modulo some minor variations, can be used for Max-SAT. Indeed, the aim of Max-SAT SLS methods is to find a good cost value that can be achieved by an assignment of the input formula and which is as close as possible to its optimum value. As such, the value of the objective function in Definition 2.11 is saved and updated whenever it can be improved during a traditional SLS search as described Algorithm 2.3. This value is then returned by the algorithm when all the tries are done. Historically, the first SLS algorithm devised specifically for Max-SAT can be traced back to the work in [START_REF] Hansen | Algorithms for the Maximum Satisfiability Problem[END_REF]. The traditional SLS architechtures, i.e., GSAT and Walk-SAT, can be applied in the context of Max-SAT as shown in [START_REF] Selman | Noise Strategies for Improving Local Search[END_REF]. More complex methods were adapted or tailor-made for Max-SAT. In [YI98; YI01], the notion of neighborhood is extended to encompass all the possible assignments when simultaneously flipping two or three variables. Approximation algorithms for Max-SAT have also been extensively studied in the literature. Such algorithm must be efficient while providing approximate solutions to optimization problems with certain guarantees. Formally, an approximation algorithm for a maximization problem is a polynomial-time algorithm A such that for any instance x there exists an approximation factor ρ < 1 providing a guarantee on the returned solution s = A(x) as in ρ.s * ≤ s where s * denote the optimal solution on input x. In the context of Max-SAT, we expect such algorithms to provide a solution cost such that for any input formula φ we have cost ≤ δ.opt (φ) where δ = 1 ρ . The first approximation algorithms for Max-SAT were based on simple greedy methods and achieved a guarantee factor δ = 1 2 [START_REF] Johnson | Approximation Algorithms for Combinatorial Problems[END_REF][START_REF] Johnson | Approximation algorithms for combinatorial problems[END_REF]. More refined algorithms relying on network flow techniques [Yan92; Yan94] and ILP relaxation of Max-SAT [START_REF] Michel | New 3/4-Approximation Algorithms for the Maximum Satisfiability Problem[END_REF] enabled to provide better guarantees with a factor of 3 4 . In [Hås97; Hås01], Håstad showed that it is not possible to achieve a factor better than 7 8 unless P=NP. This bound was achieved by Karloff and Zwik in [START_REF] Karloff | A 7/8-Approximation Algorithm for MAX 3SAT?[END_REF] through a semidefinite programming reformulation of Max-3-SAT. More recent works in this context focus on proving approximation results for specific variants of Max-SAT or on devising simpler algorithms for approximating Max-SAT and its variants [AW02; ABZ05; MNH08; Zuy11; PWZ14]. Finally, an empirical evaluation of fast approximation algorithms for Max-SAT is conducted in [START_REF] Poloczek | An Experimental Evaluation of Fast Approximation Algorithms for the Maximum Satisfiability Problem[END_REF][START_REF] Poloczek | An Experimental Evaluation of Fast Approximation Algorithms for the Maximum Satisfiability Problem[END_REF] showing that such algorithms can deliver very good solutions at low computational cost and that a hybrid scheme combining the strengths of such algorithms with SLS could provide better cost-effective solutions. Note however that classical approximation algorithms are not used in a competitive context. A recent incomplete paradigm that was used in competitive incomplete solvers, such as Open-WBO-Inc [Jos+18; Jos+19] and LinS-BPS [START_REF] Demirović | Techniques Inspired by Local Search for Incomplete MaxSAT and the Linear Algorithm: Varying Resolution and Solution-Guided Search[END_REF], relies on solution approximation through iterative search without any formal guarantees.

Proofs and Certificates for Max-SAT

In this section, we are interested in certificates and proof systems for the Max-SAT problem. We start by defining some necessary notions and overviewing proof systems for Max-SAT. Then, we focus on Max-SAT Resolution [Rob65] as a proof system for Max-SAT, which is one of the first and most studied systems in the literature. We particularly recall some known results on poof adaptations and completeness of Max-SAT resolution which will motivate our contributions in Chapter 6.

Proof Systems for Max-SAT

Similarly to SAT, a certificate of optimality for maximum satisfiability is a proof that the cost value returned by a Max-SAT solver is indeed the optimum of the formula and this notion is mainly studied through the lens of proof systems. However, unlike SAT, such certificates have been marginally studied and generated in practice. Therefore, we focus 3 Maximum Satisfiability -3.3 Proofs and Certificates for Max-SAT hereafter on reviewing proof systems for Max-SAT whose study has seen a surge of interest these last years. Formally, a proof system for Max-SAT is a set of inference rules defined by their antecedents and conclusions, both usually expressed in the form of a set of clauses. A major difference compared to SAT inference rules is that the conclusions replace the antecedent clauses if they are within the formula. This is necessary to ensure the soundness of the rules which is ensured by Max-SAT equivalence introduced in Definition 3.8. We maintain the same notations introduced in Section 2.3.1. The definitions of soundness and completeness where, Max-SAT equivalence is considered instead of SAT equivalence, also remain valid for Max-SAT. We provide below a definition of refutational completeness which is valid for Max-SAT.

Definition 3.23 (Refutational Completeness). A proof system S for Max-SAT is refutationally complete if, for any formula φ, φ

S ∧ • • • ∧ opt (φ)
∧φ where φ is a satisfiable CNF formula.

Many proof systems for Max-SAT have been introduced and studied in the literature. One of the first and most studied systems is Max-SAT resolution [START_REF] Alan | A Machine-Oriented Logic Based on the Resolution Principle[END_REF], which we will overview in the following sections. Other known systems include tableau calculus [START_REF] Chu | A Clause Tableau Calculus for MaxSAT[END_REF], dualrail [IMM17; Bon+18], circular proofs [AL19; BL20] and subcube sums [START_REF] Filmus | MaxSAT Resolution and Subcube Sums[END_REF]. Similarly to SAT, the relative strengths of proof systems for Max-SAT is compared through the notion of simulation in Definition 2.27 and was investigated in recent works specifically with respect to Max-SAT resolution and its extensions [LR20a; LR20b; BL20]. In our work in Section 6.5.2, we also consider a the more generic notion of simulation, defined below, which we refer to as inferential simulation. It differs from the traditional definition of simulation in Definition 2.27 37 , in the sense that it does not restrict the proofs to refutations. Clearly, if P 1 i-p-simulates P 2 then P 1 also r-p-simulate P 2 but the opposite is not necessarily true.

Definition 3.24 (Inferential Polynomial Simulation). Let S and S be two proof systems. S inferentially polynomially simulates (i-p-simulates) S if there exists a polynomial computable function f such that for any proof π in S deducing C from φ, f (π) is a proof deducing C from φ in S. S and S are i-p-equivalent if S i-p-simulates S and S i-p-simulates S.

Max-SAT Resolution Calculus

One of the first and most studied proof systems for Max-SAT is the Max-SAT resolution calculus (MaxRes) which relies on an inference rule extending resolution for Max-SAT [LH05a; BLM06; BLM07; LHG08] 38 . Other than the resolvent clause, this rule, called Max-SAT resolution, introduces new clauses referred to as compensation clauses and essential to preserve Max-SAT equivalence. We provide below a more compact definition of this rule relying on the following rewriting:

C ∨ a 1 ∨ a 2 ∨ ... ∨ a n = (C ∨ a 1 ) ∧ (C ∨ a 1 ∨ a 2 ) ∧ ... ∧ (C ∨ a 1 ∨ a 2 ∨ ... ∨ ∨a n )
37 which we refer to as refutational polynomial simulation (r-p-simulation) in Section 6.5.2 to avoid confusion 38

C 1 = x ∨ A C 2 = x ∨ B C r = A ∨ B CC 1 = x ∨ A ∨ B CC 2 = x ∨ A ∨ B
where C r is the resolvent clause and CC 1 ,CC 2 are compensation clauses.

A Max-SAT resolution proof or derivation of a formula φ (resp. clause C ) from φ is a finite sequence of Max-SAT resolutions starting from the clauses of φ and deducing φ (resp. such that C ∈ φ ) and is usually represented as a finite sequence of formulas. A Max-SAT resolution proof can be represented as a bipartite DAG whose nodes are either clauses or inference steps (in which case they will be omitted for more simplicity). We maintain the size and width measure introduced in Section 2.3.1. As a proof system, Max-SAT resolution is sound and refutationally complete for Max-SAT [BLM06; BLM07]. In particular, for a given CNF formula φ, it is possible to generate a Max-SAT resolution proof of its optimum by applying the saturation algorithm [START_REF] Maria | Resolution for Max-SAT[END_REF] which consists in successively saturating each variable x by applying Max-SAT resolution on x until all pairs of clauses containing x are opposed on another variable. Using saturation it is possible to provide a Max-SAT resolution proofs of the optimum of a given formula φ containing O(|φ| × n × 2 |v ar (φ|) ) inference steps as established in the following theorem.

Theorem 3.2 ([BLM06; BLM07]). Let φ be a CNF formula. We can deduce φ

M axRes ∧ • • • ∧ opt (φ)
∧φ where φ is satisfiable in O(|φ| × |v ar (φ)| × 2 |v ar (φ)| ) inference steps.

Example 3.16. We consider the formula φ = (x 1 )

∧ (x 1 ∨ x 3 ) ∧ (x 1 ∨ x 2 ) ∧ (x 2 ∨ x 3 ). The saturation algorithm applied in lexicographic order (x 1 < x 2 < x 3 ) on φ enables to deduce φ M axRes ∧ (x 1 ∨ x 2 ∨ x 3 ) ∧ (x 1 ∨ x 2 ∨ x 3 )
. The corresponding proof is represented in Figure 3.7.

3 Maximum Satisfiability -3.3 Proofs and Certificates for Max-SAT

x 1 ∨ x 3 x 1 x 1 ∨ x 2 x 2 ∨ x 3 x 3 x 1 ∨ x 3 x 2 ∨ x 3 x 1 ∨ x 2 ∨ x 3 x 1 ∨ x 2 ∨ x 3 x 3 Figure 3.7: A Max-SAT resolution proof
Note that Max-SAT resolution is not (inferentially) complete as shown in Proposition 3.3. In recent work, Max-SAT resolution was augmented with the split rule, defined below, forming the system ResS [LR20b; BL20; Fil+20]. It was shown that the addition of this rule to Max-SAT resolution is sufficient to generate a complete stronger proof system for Max-SAT. Note that ResS is stronger than MaxRes in the sense that the former p-simulates the latter while the opposite simulation is not possible. This result is established in [START_REF] Larrosa | Towards a Better Understanding of (Partial Weighted) MaxSAT Proof Systems[END_REF] by relying on a variation of the Pigeon Hole Problem (PHP) problem40 .

Proposition 3.3 ([LR20b]). Max-SAT resolution is not complete.

Proof. Consider the formula φ = (x 1 ) ∧ (x 2 ). Clearly, we have φ ≡ (x 1 ∨ x 2 ) ∧ (x 1 ∨ x 2 ) ∧ (x 2 ). However, φ M axRes (x 1 ∨ x 2 ). Definition 3.26 (Split). Given a clause C and a variable x, the split rule is defined as follows:

C C ∨ x C ∨ x Theorem 3.3 ([LR20b]). ResS is complete.
Unlike resolution, the Max-SAT resolution rule replaces the premises by the conclusions. Larrosa et al. describe Max-SAT resolution as "a movement of knowledge" [START_REF] Larrosa | A logical approach to efficient Max-SAT solving[END_REF]. Because of this specificity, it is not easy to adapt a resolution proof to obtain a Max-SAT resolution proof. Indeed, in resolution proofs, several resolution steps can share the same premise, because the premises are not consumed after the application of a resolution step. On the other hand, the premises of a Max-SAT resolution step are consumed after its application. Consequently, the immediate adaptation of a resolution proof for Max-SAT is only possible if it is read-once [BLM06; BLM07]. Yet, this simple observation was exploited to devise the SAT based algorithm described in [START_REF] Heras | Read-Once Resolution for Unsatisfiability-Based Max-SAT Algorithms[END_REF]. Our contributions in Section 6 will aim to tackle the open question of whether this result could be extended to other resolution classes, potentially by augmenting Max-SAT resolution with other rules. In this context, a maxrefutation will refer to a sound Max-SAT proof, using Max-SAT resolutions and potentially 3 Maximum Satisfiability -3.3 Proofs and Certificates for Max-SAT splits, deducing the empty clause. It is important to distinguish between max-refutations and Max-SAT resolution refutations as the former may rely on additional rules (mainly the split rule) while the latter relies exclusively on Max-SAT resolution.

Proposition 3.4 ([BLM06; BLM07]). Max-SAT resolution p-simulates read-once resolution.

Proof. Clearly, every read-once resolution proof can be trivially adapted to Max-SAT proofs by replacing each resolution step with a Max-SAT resolution step.

Weighted Max-SAT Resolution Calculus

A weighted version of Max-SAT resolution was introduced in [LH05a; BLM07; LHG08] and shown sound and complete for Max-SAT. We provide a formal definition of this rule below in compacted form [START_REF] Larrosa | A logical approach to efficient Max-SAT solving[END_REF]. Note that this rule is often naturally augmented with the fold and unfold rules in Definition 3.13, in which case the premise clauses can be considered of equal weight w.l.o.g. In [START_REF] Larrosa | Augmenting the Power of (Partial) MaxSat Resolution with Extension[END_REF], it was shown that augmenting MaxRes with the extension rule defined below produces a system stronger than MaxRes and at least as strong as dual rail. Note the particularity of the extension rule in allowing negative weights. A similar rule, called virtual, was introduced in [START_REF] Larrosa | Towards a Better Understanding of (Partial Weighted) MaxSAT Proof Systems[END_REF]. The system composed of Max-SAT resolution, split and virtual, called ResSV, was shown stronger than ResS (i.e., MaxRes augmented with split) and was also proven at least as strong as dual rail.

Definition 3.27 (Weighted Max-SAT Resolution [LH05a; BLM07; LHG08]). The weighted Max-SAT resolution rule is defined as follows:

(x ∨ A, w 1 ) (x ∨ B, w 2 ) (A ∨ B, mi n(w 1 , w 2 )) (x ∨ A, w 1 -mi n(w 1 , w 2 )) (x ∨ B, w 2 -mi n(w 1 , w 2 )) (x ∨ A ∨ B , mi n(w 1 , w 2 )) (x ∨ A ∨ B, mi n(w 1 , w 2 ))
Definition 3.28 (Extension [START_REF] Larrosa | Augmenting the Power of (Partial) MaxSat Resolution with Extension[END_REF]). Given a clause C , a finite weight w > 0 and a variable x, the extension rule is defined as follows:

(C , -w) (x ∨C , w) (x ∨C , w)
Definition 3.29 (Virtual [START_REF] Larrosa | Towards a Better Understanding of (Partial Weighted) MaxSAT Proof Systems[END_REF]). Given a clause C , a finite weight w > 0, the virtual rule is defined as follows:

(C , w) (C , -w)
3 Maximum Satisfiability -3.4 Conclusion

Conclusion

In this chapter, we introduced the Maximum Satisfiability (Max-SAT) problem and its variants. We reviewed the major methods for Max-SAT solving. In particular, we provided a detailed review on Branch and Bound (BnB) methods for Max-SAT which perform exhaustive search and rely on extensive inference, specifically during lower bound computation. We also included a comprehensive review on SAT-based approaches, which take advantage of the power of SAT oracles as decision engines, as well as other methods including incomplete ones. Then, we focused on proof theory for Max-SAT and particularly on the Max-SAT resolution rule as a sound and refutationally complete rule for Max-SAT extending the well-known SAT resolution rule. We further recalled the unique features of Max-SAT resolution as an inference rule performing a transfer of knowledge and we presented its weighted form. Our contributions in Chapter 5 specifically revolve around Max-SAT and aim to provide further understanding and insights on the extensive use of inference during lower bound estimation in BnB algorithms for Max-SAT. Our work in 6 also pertains to this problem although it also touches upon SAT as we mainly aim to bridge the gap between inference mechanisms dedicated to SAT and Max-SAT.

Introduction & Motivation

The advent of the CDCL framework and of the powerful techniques designed for SAT these last decades led to a huge breakthrough in terms of SAT solving. Indeed, modern solvers are now able to effortlessly solve instances with millions of variables while it was difficult to solve ones involving only hundreds of variables in the early 90s. However, as solvers became very competitive, it naturally ensues that improving their efficiency is becoming more and more difficult. In fact, quoting Audemard and Simon, we point out that "improving SAT solvers is often a cruel world. To give an idea, improving a solver by solving at least ten more instances (on a fixed set of benchmarks of a competition) is generally showing a critical new feature. In general, the winner of a competition is decided based on a couple of additional solved benchmarks" [START_REF] Audemard | Refining Restarts Strategies for SAT and UNSAT[END_REF].

Our contributions in this chapter fall within this scope of improving the efficiency of modern SAT solvers. We particularly focus on an important component in CDCL solvers which is the branching heuristic used to pick the next variable to branch on in the search tree. We recall, as showcased in Section 2.2.1.3.2, that the Variable State Independent Decaying Sum (VSIDS) [START_REF] Moskewicz | Chaff: Engineering an Efficient SAT Solver[END_REF] has been the dominant heuristic since its introduction 4 Bandits for Adaptive Branching in SAT -4.2 Multi-Armed Bandit Framework for SAT two decades ago. Liang and al. also recently devised the new Conflict History-Based (CHB) branching heuristic [START_REF] Hui Liang | Exponential Recency Weighted Average Branching Heuristic for SAT Solvers[END_REF], and showed that it is competitive with VSIDS. In the last years, VSIDS and CHB have dominated the heuristics landscape as practically all the CDCL solvers presented in recent SAT competitions incorporate a variant of one of them.

Recent research has also shown the relevance of reinforcement learning in designing efficient search heuristics for combinatorial problems including CSP [Sch18; XY18; Wat+20; PW20; HT21; Kor+22] and, more marginally, SAT [START_REF] Hui Liang | Exponential Recency Weighted Average Branching Heuristic for SAT Solvers[END_REF][START_REF] Hui Liang | Learning Rate Based Branching Heuristic for SAT Solvers[END_REF]. One of the main challenges is defining a heuristic which can have high performance on any considered instance. Indeed, it is well-known that a heuristic can perform outstandingly on a family of instances while failing drastically on another. To this end, we propose to augment the branching component in CDCL solvers with a Multi-Armed Bandit (MAB) framework which takes advantage of the restart mechanism to pick an adequate heuristic between VSIDS and CHB. Note that simple combinations of VSIDS and CHB have shown promising results in the MapleCOMSPS solver which has won several medals in the 2016 and 2017 SAT competitions. MapleCOMSPS switched from VSIDS to CHB after a set amount of time in its earlier version [START_REF] Hui Liang | MapleCOMSPS, MapleCOMSPS_LRB, Maple-COMSPS_ CHB[END_REF] while it alternated between both heuristics by allocating the same duration of restarts to each one in [START_REF] Hui Liang | MapleCOMSPS, MapleCOMSPS_LRB, Maple-COMSPS_CHB[END_REF]. Yet, we still lack a thorough analysis and comparison of such strategies in the state-of-the-art as well as a comparison with new promising methods based on reinforcement learning. Our MAB framework is devised to incorporate more adaptive strategies which enable to conduct inference based on the mean reward of each heuristic to select the most relevant one. In particular, the reward function is used to estimate the efficiency of each heuristic by relying on information acquired during the runs between restarts. We rely on the Upper Confidence Bound (UCB) strategies introduced in Section 2.4.2 to choose an arm at each restart. Such strategies are compared to simple random and static strategies and are shown to achieve considerable gain in terms of SAT solving.

This chapter is organized as follows. First, we start by presenting our MAB framework which relies on the restart mechanism to adaptively choose a relevant heuristic. Then, we describe different strategies that can be used to combine VSIDS and CHB through the restart mechanism in CDCL solvers including static and random strategies as well as the MAB strategies based on our framework. A thorough experimental evaluation and comparison of the different strategies is conducted in the following sections showing that the considered strategies, specifically UCB strategies used in the context of our MAB framework, can bring further gains to practical SAT solving. Finally, we mention that our contributions in this chapter have been published in [START_REF] Sami Cherif | Combining VSIDS and CHB Using Restarts in SAT[END_REF][START_REF] Sami Cherif | Un bandit manchot pour combiner CHB et VSIDS[END_REF].

Multi-Armed Bandit Framework for SAT

In order to use MAB strategies, we first introduce a MAB framework for adaptive branching in SAT through restarts. Let A = {h 1 , . . . , h K } be the set of arms for the MAB containing different candidate heuristics. The trials are the runs, i.e., executions, of the CDCL algorithm between restarts. The proposed framework selects a heuristic h i where i ∈ {1 . . . K } at each restart of the backtracking algorithm. To choose an arm, MAB relies on a reward function 4 Bandits for Adaptive Branching in SAT -4.3 Strategies to Combine VSIDS and CHB Using Restarts calculated during each run to estimate the performance of the chosen heuristic. The reward function plays an important role in the proposed framework and has a direct impact on its efficiency. We choose a reward function that estimates the ability of a heuristic to reach conflicts quickly and efficiently. If t denotes the current run, the reward of arm h ∈ A is calculated as follows:

r t (h) = l og 2 (

Strategies to Combine VSIDS and CHB Using Restarts

In this section, we describe different strategies which take advantage of the restart mechanism in SAT solvers to combine VSIDS and CHB. First, we describe simple strategies which are either random or static then we specify the reinforcement learning strategies that we will use in the context of the MAB framework.

Random Strategy (RD R )

This strategy randomly picks a heuristic among VSIDS and CHB at each restart with equal probabilities, i.e., each heuristic is assigned a probability of 1 2 . This strategy is denoted RD R in contrast with RD D which randomly picks a heuristic at each decision.

Single Switch Strategy (SS)

This strategy switches from VSIDS to CHB after a set amount of time and was used in the 2016 version of MapleCOMSPS [START_REF] Hui Liang | MapleCOMSPS, MapleCOMSPS_LRB, Maple-COMSPS_ CHB[END_REF]. We maintain the threshold time in which the heuristic is switched to t 2 where t is the timeout as in [START_REF] Hui Liang | MapleCOMSPS, MapleCOMSPS_LRB, Maple-COMSPS_ CHB[END_REF].

Round-Robin Strategy (RR)

This strategy alternates between VSIDS and CHB in the form of a round-robin. This is similar to the strategy used in the latest version of Maple-COMSPS [START_REF] Hui Liang | MapleCOMSPS, MapleCOMSPS_LRB, Maple-COMSPS_CHB[END_REF]. However, since we want to consider strategies which are independent from the restart policy and which only focus on choosing the heuristics, we do not assign equal amounts of restart duration (in terms of number of conflicts) to each heuristic and, instead, let the duration of restarts augment naturally with respect to the restart policy of the solver.

Upper Confidence Bound Strategies (UC

Experimental Protocol

Before presenting the results of our experimental evaluation, we detail in this section our experimental protocol. We consider the benchmarks from the Main Track of the last three SAT Competitions/Races, totalling to 1,200 instances. For our experiments, we use the state-of-the-art solver Kissat [START_REF] Biere | CaDiCaL, Kissat, Paracooba, Plingeling and Treengeling Entering the SAT Competition 2020[END_REF] which won first place in the main track of the SAT Competition 2020. Note that this solver is a condensed and improved reimplementation of the reference and competitive solver CaDiCaL [START_REF] Biere | Treengeling, YalSAT Entering the SAT Competition 2017[END_REF][START_REF] Biere | CaDiCaL, Kissat, Paracooba, Plingeling and Treengeling Entering the SAT Competition 2020[END_REF] in C. Data provided by Bierre and Marjin1 show that Kissat is highly competitive and outperforms all-time winners of SAT competitions/Races particularly on the 2020 and 2019 Benchmarks. Kissat alternates between stable and non-stable phases as is the case in Cadical [START_REF] Biere | Treengeling, YalSAT Entering the SAT Competition 2017[END_REF], renamed to stable mode and focused mode in [START_REF] Biere | CaDiCaL, Kissat, Paracooba, Plingeling and Treengeling Entering the SAT Competition 2020[END_REF]. VSIDS is used in stable phases which mainly target satisfiable instances. During non-stable phases targeting unsatisfiable instances, the solver uses the Variable Move-To-Front (VMTF) heuristic [Rya04; BF15]2 , in which analyzed variables are moved to the front of the decision queue. It is important to note that the only modified components of the solver are the decision component and the restart component, i.e., all the other components as well as the default parameters of the solver are left untouched. Even the changes to the restart component are as minimal as possible, i.e., we maintain the phase alternation mechanism and the restart policies set for each mode as described in [START_REF] Biere | CaDiCaL, Kissat, Paracooba, Plingeling and Treengeling Entering the SAT Competition 2020[END_REF]. Furthermore, we maintain the VSIDS variant already implemented in Kissat, i.e., EVSIDS [START_REF] Biere | Adaptive Restart Strategies for Conflict Driven SAT Solvers[END_REF][START_REF] Biere | Evaluating CDCL Variable Scoring Schemes[END_REF]. Therefore, in the experimental evaluation, VSIDS corresponds to default Kissat. Moreover, we augment the solver with the heuristic CHB as specified in [START_REF] Hui Liang | Exponential Recency Weighted Average Branching Heuristic for SAT Solvers[END_REF] except that we update the scores of the variables in the last decision level after BCP. In addition, we have implemented the MAB framework specified in Section 4.2 with A = {V SI DS,C H B }. The rewards for UCB1 and MOSS are both initialized by launching each heuristic once during the first restarts. Finally, The experiments are performed on Dell PowerEdge M620 servers with Intel Xeon Silver E5-2609 processors under Ubuntu 18.04 with a timeout of 5,000 s for each instance.

Decisions vs Restarts

First, we would like to emphasize that taking advantage of the restart mechanism to combine VSIDS and CHB was not an arbitrary choice. Indeed, we conducted an experiment to help us choose the appropriate level, i.e., decisions or restarts, to combine VSIDS and CHB. To this end, we implemented and tested the two random strategies RD D and RD R which with a gain of more than 2% in terms of solved instances and 3.5% in terms of solving time with a penalty of 10,000 s for unsolved instances. This is not surprising as the structures needed for VSIDS and CHB need to be maintained and updated simultaneously which can be quite costly. On the other hand, they are used independently in RD R during each restart, i.e., only the chosen heuristic is used and its structures updated during the restart. Furthermore, combining both heuristics at the decision level can cause interference and may not allow each heuristic to conduct robust learning since they are being constantly interchanged. Surprisingly, both versions are competitive with CHB and VSIDS. In particular, RD R outperforms them and solves, on average, 21 additional instances (+ 2.7%) compared to the best heuristic. This is due to randomization and diversification which help to avoid heavy tail phenomena in SAT and which can therefore improve the performance of SAT solvers [HG95; Gom+00].

Comparison of Strategies

In this section, we evaluate and compare the different strategies aiming to combine VSIDS and CHB through restarts in terms of solved instances and solving time. We also analyze the results achieved by these strategies with respect to instance families within the benchmark.

Number of Solved Instances

In Table 4.1, we present the results in terms of solved instances for CHB and VSIDS as standalone heuristics and for the different strategies presented in Section 4.3. We also include the results of the Virtual Best Solver (VBS) over VSIDS and CHB3 . The results clearly indicate that MOSS outperforms VSIDS and CHB as well as all the other strategies. Indeed, MOSS manages to solve 37 additional instances in total (+4.8%) compared to the best heuristic (among VSIDS and CHB). The UCB1 (resp. RR) strategy is also competitive and manages to solve 30 (resp. 27) additional instances in total which corresponds to an increase of 3.9% (resp. 3.5%) in terms of solved instances compared to the best heuristic.

The strategies UCB1 and RR remain comparable with a difference of 3 instances in favor of UCB1. SS also outperforms VSIDS and CHB although to a lesser degree as it solves 13 additional instances only which is worse than RD R . If we focus on the individual yearly benchmarks, we observe that although the overall results obtained by VSIDS and CHB are comparable, they have different behaviours on each benchmark and yet MOSS, UCB1 and RR manage to capture the behaviour of the best heuristic and even outperform it on each individual benchmark. In particular, MOSS maintains its top rank on the individual benchmarks with an average of 8 (resp. 17) additional instances for each one compared to the best (resp. worst) heuristic. Moreover, the results achieved by MOSS are very close to the VBS. Indeed it achieves 99% (resp. 99.6%) of the performance of the VBS on the whole benchmark in terms of the number of solved instances (resp. satisfiable instances) while the best heuristic does not exceed 95% (resp. 93%). However, it is important to note that the gain is mainly in satisfiable instances whereas, for unsatisfiable instances, all the strategies (except RD D ) remain comparable to both heuristics and slightly outperform CHB but not VSIDS. Nevertheless, they remain competitive with VSIDS and particularly MOSS which solves the same number of unsatisfiable instances as VSIDS. This shows that MOSS is a robust strategy as it is able to improve the performance globally and on each individual benchmark without decreasing it for unsatisfiable instances. Note that the observed behaviour of these different strategies on unsatisfiable instances may be due to different factors. First, the results in terms of unsatisfiable instances seem very homogeneous for each year and are very close to the results obtained by the VBS as both heuristics (resp. the best heuristic) achieve more than 96% (resp. 98%) of its performance in terms of the number of unsatisfiable instances. Since our motivation is to bridge the gap between the heuristics and the VBS with these strategies, it is expected that this would be very difficult for unsatisfiable instances, for which the gap is very small already. It is also very difficult to simultaneously improve the performance on both satisfiable and unsatisfiable instances. For instance, SS which seems to work better for unsatisfiable instances especially in terms of solving time (as will be showcased in the next section) fails on satisfiable instances compared to the three top strategies. Another possible factor for this behaviour is Kissat's restarting policy which alternates between the stable mode and focused mode [START_REF] Biere | CaDiCaL, Kissat, Paracooba, Plingeling and Treengeling Entering the SAT Competition 2020[END_REF]. The heuristics VSIDS and CHB are only used in the stable mode while the focused mode targets unsatisfiable instances. This may also help to explain the homogeneity of the results obtained by the solver for unsatisfiable instances with respect to the different heuristics and strategies.

Solving Time

In this section, we want to evaluate the different strategies in terms of solving time. In Figure 4.1, we represent the number of solved instances as a function of the execution time for VSIDS, CHB, the static and MAB strategies and the VBS on the whole benchmark. One would think that MAB based strategies in this regard would be worse than the considered heuristics and/or other strategies as UCB1 and MOSS need to conduct continuous exploration in order to ensure the selection of the most adequate arm. This does not seem to be the case. In fact, conducting exploitation with the best arm and alternating the heuristics seems to offset this disadvantage. We observe that MOSS is the best strategy as it achieves 6.1% gain in terms of solving time on the whole benchmark compared to the best heuristic if we give a penalty 10,000 s to unsolved instances while UCB1, RR and SS respectively achieve a gain of 5.7%, 5.2% and 1.7%. This gain is substantial especially considering that we are working on the solver Kissat which won the SAT competition 2020 with a remarkable performance.

We represent in Figure 4.2 the number of solved satisfiable and unsatisfiable instances separately as a function of the execution time for VSIDS, CHB, the static and MAB strategies and the VBS on the whole benchmark. Notice how the gap between MOSS and the VBS (and even UCB1 and RR) narrows if we consider the satisfiable instances only. On the other hand, these top three strategies present a small gap in terms of solving time for unsatisfiable instances compared to the best heuristic, i.e., VSIDS, while remaining comparable to CHB. In particular, MOSS shows better results with respect to VSIDS and SS for instances whose solving time exceeds 3,000 s. Surprisingly, although SS seems to be the worst strategy overall and remains globally comparable to VSIDS and CHB while achieving a slight gain in solving time especially on instances whose solving time exceeds 4,000 s, it achieves the best results in terms of solving time for unsatisfiable instances and is comparable to VSIDS and the VBS in this regard. On the other hand, RR and UCB1 achieve substantial gain while remaining comparable to each other and with results slightly in favor of UCB1. To provide more detailed results, we represent in Figures 4.3, 4.4 and 4.5 the runtime comparison per instance with VSIDS, CHB and the VBS respectively for the top three best strategies, i.e., MOSS, UCB1 and RR. These figures confirm the trends that we observed above. More interesting, we can note that, for a noticeable number of instances, MOSS, UCB1 or RR lead to a more efficient solving than the VBS. In Figure 4.6, we represent the runtime comparison per instance betwenn MOSS, UCB1 and RR. These figures show that MOSS performs better than UCB1 and RR. Surprisingly, MOSS's results are closer to RR than UCB1. However, we will show in Section 4.7.1 that this is consistent with the observed behavior of MOSS.

Instance Families

In order to provide a more thorough analysis, we describe in Tables 4.2 and 4.3 the results obtained by VSIDS, CHB, static and MAB strategies and the VBS on instance families within the benchmark [HJS+18; HJS19; Bal+20]. The best strategy, i.e., MOSS, manages to rank first in 9 different families over 39 in total (23%), e.g., it places fist for Antibandwidth, Bitcoin and Stedman Triples. Interestingly, this strategy achieves remarkable results, which are better than those of the VBS over VSIDS and CHB, for certain families such as Logical cryptanalysis, RPHP and Station Repacking. SS also achieves the top performance on several different families such as Factoring, Scrambled and SHA-1 Pre-image Attack.

More precisely, SS also manages to rank on top for 9 different families which shows the interest of this strategy even though it ranks last overall compared to RR, UCB1 and MOSS. As for UCB1, it achieves top rank in 6 different families. In particular, its performance on the families Hgen, CNP and Keystream Generator Cryptanalysis is noteworthy since it manages to outperform the VBS. On the other hand, RR ranks top in only 4 instance families but this does not necessarily reflect its overall performance since it falls slightly behind the top ranked heuristic/strategy in other families, yet this is clearly another point in favor of UCB1 as a comparable strategy. Finally, VSIDS and CHB are ranked first in several families which shows that these heuristics remain robust as standalone heuristics.

Further Analysis of MAB Strategies

In this section, we cconduct a more through analysis on the behavior of UCB strategies used in the context of the MAB framework. We also include a discussion on the MAB framework and specifically the relevance of some choices that we made within this context.

MAB Behaviour

In this section, we focus on the behaviour of MAB strategies and particularly the use of arms. In Figures 4.7 and 4.8, we represent the percentage of use, i.e., percentage of restarts where each arm gets chosen respectively by UCB1 and MOSS. We observe that both strategies alternate between the heuristics but the percentages are mainly within the interval [40%, 60%] and are often close to 50%. MOSS seems to choose in a more balanced way between VSIDS and CHB in comparison to UCB1 which introduces more variations in its choices. This behaviour is consistent with the observations made in Section 4.6.1 concerning Figure 4.6. The fact that the percentages are mostly within a tight interval is not surprising considering that the number of stable restarts in Kissat, during which heuristics are used, is usually very low. To give an idea, the average number of stable restarts performed by Kissat for instances solved with MOSS (resp. UCB1) is 765 (resp. 771) while the median value is much lower and amounts to 313 (resp. 338). Therefore, the obtained percentages seem adequate especially taking into account that these strategies need to achieve a good trade-off between exploration and exploitation. Notice the consecutive dents and bumps in Figures 4.7 behaviour of MAB strategies may seem close to RR, this is not exactly the case. Indeed, these strategies rely on the computed reward to choose the most relevant arm during exploitation and especially when there is a large gap between the performance of the heuristics, whereas RR is a static strategy and cannot adapt its choices. This helps to explain the better results of the MAB strategies not only in terms of solved instances but also in terms of solving time and particularly in the case of MOSS. In fact, the remarkable performance of MOSS is also due to the fact that it takes into account the number of arms and has better regret than UCB1 although the latter also remains competitive in practice as shown in our results.

On MAB strategies and Branching Heuristics

In this section, we discuss the relevance of choosing Upper Confidence Bound strategies in the Multi-Armed Bandit framework and VSIDS and CHB as candidate heuristics. As 131 mentioned in Section 2.4.2, many strategies were divised and theoretically studied in the context of MAB and can therefore be used in our framework. For instance, we can mention the two well-known strategies -greedy [SB98] and EXP3 [START_REF] Auer | The nonstochastic multiarmed bandit problem[END_REF] which were presented in Section 2.4.2. However, these strategies are not deterministic, i.e., there is a factor of uncertainty or probability. Therefore, unlike UCB strategies, they cannot always guarantee top performance and may produce different results on the same benchmark. Furthermore, UCB strategies were shown relevant and more efficient for similar MAB frameworks in the context of CSP [XY18; Wat+20; PW20; Kor+22]. This remains true in Kissat as we similarly observed through experimentation that -greedy and EXP3 perform poorly compared to UCB strategies and remain comparable to VSIDS and CHB.

In addition, notice that the MAB framework enables the use of several heuristics. In fact, one would argue that adding more heuristics may enable to reach more families and instances through diversification. However, recall that modern SAT solvers, and in particular Kissat, are highly competitive and rely on powerful heuristics to achieve impressive results. A bad heuristic or tuning of the parameters (e.g., the restart policy settings) can greatly deteriorate the performance of a solver. Furthermore, practically all heuristics used in modern SAT solvers are variants of VSIDS, which has been the dominant heuristic since its introduction in 2001 [START_REF] Moskewicz | Chaff: Engineering an Efficient SAT Solver[END_REF]. Only recently CHB has been introduced and shown competitive with VSIDS [START_REF] Hui Liang | Exponential Recency Weighted Average Branching Heuristic for SAT Solvers[END_REF]. The results reported in Table 4.1 also show that CHB can reach new instances (the VBS achieves a gain of more than 5.8% in terms of solved instances) while remaining competitive and comparable overall with respect to VSIDS in the context of a highly competitive solver such as Kissat.

Kissat_MAB at the SAT Competitions

We submitted the solver Kissat augmented with our MAB framework relying on the UCB1 strategy to the SAT competition 2021 under the name Kissat_MAB4 [START_REF] Sami Cherif | Kissat_MAB: Combining VSIDS and CHB through Multi-Armed Bandit[END_REF]. This solver won the Main Track of the competition and managed to solve 296 instances over 400 with a gap of 8 instances compared to the second ranked solver. The summary of the Main Track results are reported in Figure 4.9. Kissat_MAB also placed first in the Main SAT and NoLimits tracks. Compared to default Kissat, which also participated in the competition under the name Kissat_sc2021_default with several new improvements over its last version [START_REF] Biere | CaDiCaL, Kissat, Paracooba, Plingeling and Treengeling Entering the SAT Competition 2021[END_REF], Kissat_MAB achieves better results with 9 (resp. 11) additional solved (resp. satisfiable) instances. Furthermore, Kissat_MAB remains highly competitive on unsatisfiable instances and comparable to default Kissat as it managed to solve 148, only 2 instances less than Kissat_sc2021_default. We also submitted the solver Kissat augmented with both UCB strategies, i.e., UCB1 and MOSS, to the SAT competition 2022 under the names Kissat_-MAB_UCB and Kissat_MAB_MOSS5 [START_REF] Sami Cherif | Kissat MAB: Upper Confidence Bound Strategies to Combine VSIDS and CHB[END_REF]. The solvers placed respectively fifth and fourth in the Main sequential track solving 287 and 288 instances over 400. Note that the first three solvers in the track are all based on our Kissat_MAB solver [START_REF]Proceedings of SAT Competition 2022: Solver and Benchmark Descriptions[END_REF]. The results of the SAT competitions thus seem to corroborate our experimental study and to confirm the relevance of combining VSIDS and CHB using restarts in improving the performance of highly competitive SAT solvers.

Conclusion & Future Work

In this chapter, we evaluated different strategies which take advantage of the restart mechanism to combine two state of the art heuristics, namely VSIDS and CHB. In particular, we introduced a MAB framework for SAT relying on two well-known Upper Confidence Bound strategies, called UCB1 and MOSS. These strategies rely on a reward function which evaluates the capacity of the heuristics to reach conflicts quickly and efficiently. Our experimental evaluation shows that VSIDS and CHB are compatible since their combination through different strategies taking advantage of the restart mechanism is able to substantially increase the performance of the competitive solver Kissat. In particular, the MOSS and UCB1 strategies outperform VSIDS and CHB as well as the other considered strategies. Overall, the considered strategies achieve substantial gain in terms of solved instances, mainly satisfiable ones, and in terms of solving time. Moreover, these strategies achieve results which are very close to the VBS over VSIDS and CHB. Our solver Kissat_MAB won several medals in the two last SAT competition including the gold medal the Main track of the SAT competition 2021 thus showing the relevance of combining VISDS and CHB using restarts and its ability to improve the performance of highly competitive SAT solvers.

Our work in terms of incorporating reinforcement learning techniques into combinatorial problem solving also extends to the CSP problem. In [CHT20; CHT21c], we devised a MAB framework, coupled with a training phase, to select an appropriate value of the step parameter in the CHS heuristic 6 [HT21] during the restarts performed by the search algorithm. Each arm represents a different value for this parameter and is rewarded by its ability to improve the search. A training phase is introduced earlier in the search to help MAB choose a relevant arm. The experimental evaluation shows that this approach leads to significant improvements over plain CHS and other state-of-the-art heuristics in CSP solving.

As future work, it would be interesting to refine the reward function used in MAB strategies by relying on a combination of different criteria [START_REF] Chu | Contextual Bandits with Linear Payoff Functions[END_REF] so as to improve the MAB framework especially with respect to unsatisfiable instances. Furthermore, it would be relevant to use such strategies to improve other components in modern SAT solvers. For instance, the attempt in [START_REF] Li | Kissat Adaptive Restart, Kissat Cfexp: Adaptive Restart Policy and Variable Scoring Improvement[END_REF] uses our MAB framework to perform adaptive restarts by choosing a relevant restart strategy at each trial. A similar mechanism can be devised for other components such as clause deletion or inference techniques. Finally, since Max-SAT solvers rely heavily on SAT oracles as decision engines, our work can naturally enhance Max-SAT solving specifically in the context of SAT-based solvers and, more marginally, in the context of BnB solvers7 . However, it would be relevant to devise dedicated adaptive mechanisms relying on similar MAB frameworks in the context Max-SAT and, particularly, BnB solvers such as MaxCDCL [Li+21a; Li+22a]. .

Introduction & Motivation

Brand and Bound (BnB) based approaches construct a search tree and compute, at each node, the Lower Bound (LB) by counting the disjoint Inconsistent Subsets (ISs) of the formula using Simulated Unit Propagation (SUP) [START_REF] Chu | Exploiting Unit Propagation to Compute Lower Bounds in Branch and Bound Max-SAT Solvers[END_REF]. When an IS is found, it is either temporarily deleted or transformed by Max-SAT resolution to ensure that it will be counted only once. However, learning Max-SAT resolution transformations, i.e., memorizing them in the current subtree, may negatively affect the quality of the lower bound estimation. Therefore, state-of-the-art solvers learn transformations selectively mainly in the form of patterns [LMP07; AH14d]. The most significant feature of these patterns is reducing the size of the formula or producing unit clauses whose propagation through SUP may lead to the detection of more ISs. The empirical study of the Unit Clause Subset (UCS) patterns in [START_REF] Abramé | On the Extension of Learning for Max-SAT[END_REF] led to the first observations on the relation between Max-SAT resolution transformations and the efficiency of the SUP mechanism. It was particularly observed that in some cases the information which can be used by SUP in the original formula are fragmented into several clauses after the transformation. This observation was later formalized through the the notion of UP-resilience introduced in [START_REF] Abramé | On the Resiliency of Unit Propagation to Max-Resolution[END_REF]. This property aims to characterize the transformations which are not affected by fragmentation and, more generally, to measure the impact of the transformations on the SUP mechanism. The study of the major learning 5 Understanding Inference in Max-SAT BnB -5.2 UP-Resilience and IS detection mechanisms through this property helped to explain, from a theoretical point of view, the empirical results of Max-SAT BnB obtained in the last decade.

In this chapter, we further investigate the power of inference in the context of Max-SAT BnB through the UP-resilience property. We conduct a more through analysis of this property which helps to shed the light on more recent results in the literature. In particular, we further study the relation between UP-resilience and the orders of application of Max-SAT resolution when transforming ISs. Relying on our observations on the direct impact of application orders on the UP-resilience of literals appearing in ISs, we conduct a theoretical study on the recent UCS patterns and their relation with UP-resilience. We prove that binary UCSs are UP-resilient with respect to specific orders and we generalize this result on UCSs where only one clause of any size is involved in the conflict. Furthermore, we explain how our results can help extend the current learning schemes used in Max-SAT BnB by studying their limits.

This chapter is organized as follows. We first state some known results to which we provide simpler or new formal proofs including results on the relation between UP-resilience and many components and mechanisms in Max-SAT BnB such as IS detection, application orders during IS transformation and the traditional patterns in the literature. Then, we further investigate the recently introduced and their relation with UP-resilience. We also show the limits of the current mechanisms thus providing insights on how to extend them through the UP-resilience property. Finally, we mention that our contributions in this chapter have been published in [CHA20; CHA21].

UP-Resilience and IS detection

One of the most interesting properties of UP-resilient transformations is their ability to maintain the propagations which are not necessary anymore to the detection of an IS. As explained in Section 3.2.1.5, if a transformation is UP-resilient for a literal l , then l can be propagated in the transformed formula when the literals of each possible neighborhood, not containing the empty clause, are set to True. This is extended to sets of literals as stated in Proposition 3.1, i.e., if a transformation is UP-resilient for a set of literals L, then the literals of L can be propagated in the transformed formula with respect to the possible neighborhoods of L, not containing the empty clause. This proposition was proved in [START_REF] Abramé | On the Resiliency of Unit Propagation to Max-Resolution[END_REF] but we provide below a much simpler proof. Note that when a subset ψ of an IS ψ is not necessary anymore 1 , this property ensures that SUP can perform the same propagations in the transformed formula as in the original clauses of ψ . More specifically, the UP-resilience of a set of literals L with respect to its neighborhood nei g h(L) is maintained individually on every literal in L. • Suppose the property is true for every set of size n. Let L be of size n + 1 and l a literal in L. We set L = L \ {l } and let N ∈ pnei g h(L). Clearly, N = N 1 ∪ N 2 where N 1 ∈ pnei g h(L ) and N 2 ∈ pnei g h(l ). Moreover, since |L | = n, we know by induction that ∀N ∈ pnei g h(L ) : ∈ N or every literal l in L can be propagated in Θ(ψ, S)| N \{l } .

In particular, ∈ N 1 or every literal l in L can be propagated in Θ(ψ, S)| N 1 \{l } . Also, The transformation Θ(ψ, S) is UP-resilient for L and particularly for l and thus, we have ∀N ∈ pnei g h(l ) : ∈ N or l can be propagated in Θ(ψ, S)| N . In particular, ∈ N 2 or l can be propagated in Θ(ψ, S)| N 2 . Thus, We have the following cases:

-If ∈ N 1 or ∈ N 2 then ∈ N
-Else, every literal l in L and l can be propagated respectively in Θ(ψ, S)| N 1 \{l } and Θ(ψ, S)| N 2 . Therefore, the clauses that ensure the propagation of every literal l in L in Θ(ψ, S)| N 1 \{l } also ensure their propagation in Θ(ψ, S)| (N 1 ∪N 2 )\{l } and, similarly, the clauses that ensure the propagation of l in Θ(ψ, S)| N 2 also ensure its propagation in Θ(ψ, S)| (N 1 ∪N 2 )\{l } .

We deduce that ∀N ∈ pnei g h(L) : ∈ N or every literal l in L can be propagated in Θ(ψ, S)| N \{l } .

UP-Resilience and IS Transformation

An important factor that has a direct impact on the UP-resilience property is the Max-SAT resolution application order. Recall that two generic orders have been used in BnB solvers for Max-SAT, i.e., the Reverse Propagation Order (RPO) and the Smallest Intermediary Resolvent (SIR) order [AH14a]2 , and were empirically shown to influence the UP-resilience of transformations [START_REF] Abramé | On the Resiliency of Unit Propagation to Max-Resolution[END_REF]. In the following example, we exhibit this observation by showing that application orders can have a direct impact on the UP-resilience of certain literals appearing in the detected IS and therefore on the UP-resilience of the Max-SAT resolution transformation of an IS.

Example 5.1. We consider the same

IS ψ = {x 1 , x 2 , x 3 , x 3 ∨ x 4 , x 1 ∨ x 2 ∨ x 4 } in Example 3.10,
whose distinct implication graphs corresponding to the possible propagation sequences are represented in Figure 3.5. In Example 3.11, we showed that the transformation of ψ with respect to RPO is not UP-resilient since, in particular, it is not UP-resilient for literal x 1 . Now, we consider the Max-SAT resolution transformation of ψ with respect to the variable sequence S = 〈x 3 , x 4 , x 1 , x 2 〉 corresponding to SIR which is given in Figure 5.1. We have

Θ(ψ, S) = {x 1 ∨ x 2 , x 1 ∨ x 4 , x 3 ∨ x 4 , x 1 ∨ x 2 ∨ x 4 , }.
The empty clause appears in the possible neighborhoods of the literals x 4 and x 4 . The propagation of the literal x 3 with respect to its possible neighborhood {x 4 }, not containing the empty clause, is ensured by the clause x 3 ∨ x 4 . Furthermore, the propagation of literals x 1 and x 2 with respect to their possible 5 Understanding Inference in Max-SAT BnB -5.4 UP-Resilience and Traditional Patterns neighborhood {x 4 }, not containing the empty clause, is ensured by the clauses x 1 ∨ x 4 and x 1 ∨ x 2 ∨ x 4 . Therefore, the transformation Θ(ψ, S) is UP-resilient.

x 3 x 3 ∨ x 4 x 4 x 1 ∨ x 2 ∨ x 4 x 1 ∨ x 2 x 1 x 2 x 2 x 3 ∨ x 4 x 1 ∨ x 4 x 1 ∨ x 2 ∨ x 4 x 1 ∨ x 2 x 3 x 4
x 1

x 2

UP-Resilience and Traditional Patterns

The UP-resilience property can help explain the efficiency of learning schemes in the literature. In particular, Proposition 3.2 establishes the UP-resilience of the traditional patterns P 1 , P 2 and P 3 presented in Section 3.2.1.4 with respect to a specific ordering. However, no formal proof was provided for this proposition in [START_REF] Abramé | On the Resiliency of Unit Propagation to Max-Resolution[END_REF] whereas a proof for pattern P 1 only has been provided in [START_REF] Abramé | Max-résolution et apprentissage pour la résolution du problème de satisfiabilité maximum[END_REF]. Hereafter, we provide formal proofs for the UP-resilience of patterns P 1 , P 2 and P 3 . In particular, unlike the result of Proposition 3.2, we show that any order of application consistent with these patterns ensures a UP-resilient transformation. This fact provides further insight on the relevance of the UP-resilience property in characterizing Max-SAT resolution transformations in Max-SAT BnB and in explaining the efficiency of the major patterns observed in the last decade. In the next section, we will also study the relation between UP-resilience and the recently introduced UCS patterns in [START_REF] Abramé | On the Extension of Learning for Max-SAT[END_REF].

Proposition 5.2. Let ψ be an IS and ψ ⊂ ψ bet a set matching the premises of pattern P 1 . Then, the Max-SAT resolution transformation described in P 1 is UP-resilient.

Proof. ψ = {l 1 ∨ l 2 , l 1 ∨ l 2 }. Therefore, there are two possible propagation sequences whose implication graphs are represented in Figure 5.2. Since all possible neighborhoods of literals l 1 , l 2 and l 2 contain the empty clause, the transformation of ψ as in P 1 with respect to the only possible variable sequence S =< v ar (l 2 ) > is UP-resilient.

5 Understanding Inference in Max-SAT BnB -5.4 UP-Resilience and Traditional Patterns Then, the Max-SAT resolution transformation described in P 2 is UP-resilient.

l 1 l 2 l 1 ∨ l 2 l 1 ∨ l 2 l 1 ∨ l 2 l 1 l 2 l 1 ∨ l 2 l 1 ∨ l 2 l 1 ∨ l 2
Proof. ψ = {l 1 ∨ l 2 , l 1 ∨ l 3 , l 2 ∨ l 3 }. Therefore, there are two possible propagation sequences whose implication graphs are represented in Figure 5.3. There are two Max-SAT resolution application orders S 1 = < v ar (l 2 ), v ar (l 3 ) > and S 2 = < v ar (l 3 ), v ar (l 2 ) > that produce the same transformation described by pattern (P 2 ). Since all possible neighborhoods of l 2 and l 2 contain the empty clause, the transformation of ψ by Max-SAT resolution is UP-resilient for l 2 and l 2 . We have pnei g h(l 1 ) = {{l 3 , } ∪ pr ed (l 1 ), {l 2 , l 3 } ∪ pr ed (l 1 )}, where pr ed (l 1 )) denotes the predecessors of l 1 , and clearly the clause C = l 1 ∨ l 2 ∨ l 3 propagates l 1 when the literals l 2 , l 3 in its second neighborhood are set to True. Also, pnei g h(l 3 ) = {{l 1 , }, {l 1 , l 2 }} and similarly the clause C = l 1 ∨ l 2 ∨ l 3 propagates l 3 when the literals in its neighborhood {l 1 , l 2 } are set to True. Proof. ψ = {l 1 , l 1 ∨ l 2 , l 2 ∨ l 3 , ..., l k-1 ∨ l k , l k }. Therefore, there are k possible propagation sequences whose implication graphs are represented in Figure 5.4. In each graph a different clause of ψ, containing the literal l i where 1 < i < k is falsified. When i = 1 (resp. i = k), the unit clause l i (resp. l k ) is falsified. We have pnei g h(l i ) = {{l i -1 , l i +1 }, {l i -1 , }} for 1 < i < k and, clearly, the clause l i ∨ l i +1 , obtained after the transformation, ensures the propagation of the literal l i with respect to its neighborhood {l i -1 , l i +1 }. Also, for literals l 1 and l k , we have respectively pnei g h(l 1 ) = {{l 2 }, { }} and pnei g h(l k+1 ) = {{l k , }} and, clearly, the clause l 1 ∨ l 2 ensures the propagation of the literal l 1 with respect to its neighborhood {l 2 }. The same arguments ensure UP-resilience for literals l i for 1 ≤ i ≤ k. It is important to note that this proof on the UP-resilience of ISs matching the premises of pattern P 3 is clearly valid for every Max-SAT resolution application order consistent with P 3 .

l 1 l 3 l 2 l 1 ∨ l 3 l 2 ∨ l 3 l 1 ∨ l 2 l 1 ∨ l 2 l 1 l 3 l 2 l 1 ∨ l 3 l 1 ∨ l 2 l 2 ∨ l 3 l 2 ∨ l 3
l 1 l k+1 ... ... l i -1 l i l 1 l k+1 l 1 ∨ l 2 l k ∨ l k+1 l i -2 ∨ l i -1 l i ∨ l i +1 l i -1 ∨ l i l i -1 ∨ l i

UP-Resilience and UCS Patterns

In this section, we study the relation between UP-resilience and the recently introduced UCS patterns in [START_REF] Abramé | On the Extension of Learning for Max-SAT[END_REF]. We prove that the Max-SAT resolution transformation of binary UCSs is UP-resilient with respect to two newly introduced orders. This result is established through a characterization of the implication graphs corresponding to propagation sequences leading to the detection of such patterns. We also show that, unlike the devised orders, the current used mechanisms can't ensure UP-resilience for binary UCSs thus providing an explanation to the recent empirical results established in [START_REF] Abramé | On the Extension of Learning for Max-SAT[END_REF] and showing that UPresilience can help extend the current patterns used in state-of the-art solvers. Furthermore, we generalize our result on the resilience of k b -UCSs to UCSs where all clauses are binary except one of any size that is involved in the conflict.

On Implication Graphs of UCS Patterns

In this section, we establish a characterization of implication graphs of the studied k-UCSs. More specifically, we study the portion of the graph representing the propagation sequence of the detected k-UCS which is delimited by the FIUP and the empty clause. This characterization is established in the following lemma for k-UCS whose clauses are binary except for the conflict clause which can be of any size s ≥ 2. Proof. Since l is a UIP, all the paths from the literals propagated by unit clauses to the conflict node in G pass through it. We have |succ(l )| = s. Therefore, there are at least s different paths from l to in G. Let p 1 ,...,p s be those paths. Suppose we have a different path p s+1 from l to . We have two possible cases:

• |pr ed ( )| = s. This is absurd since the conflict clause is of size s and thus |pr ed ( )| = s.

• Else, since |pr ed ( )| = s, there exists l = l ∈ p s+1 and i ∈ {1, ..., s} such that l ∈ p i and |pr ed (l )| > 1. This is absurd since all clauses of ψ except the conflict clause are binary.

We deduce that there are exactly s different paths from l to in G. The same argument of the second case ensures that these paths are disjoint.

As explained in Section 3.2.1.5, when a UCS is detected, we know that the reverse propagation order ensures the production of a unit resolvent clause after the transformation. However, in general, this is not necessarily true for all application orders. Since this is the main feature of UCS patterns, we must ensure that the introduced orders produce a unit resolvent clause. It is important to note that the condition on the successors of the FUIP in Lemma 5.1 ensures the production of such clause for all possible orders. In the next section, we prove the UP-resilience of binary k-UCSs. To this end, we show in the next proposition that the condition on the FUIP successors in Lemma 5.1 is always verified for binary k-UCSs. Later, when we generalize our result on further UCS patterns, we only consider the graphs described by Lemma 5.1, i.e., which verify the condition on the successors of the FUIP. Proof. Suppose that |succ(l )| = 2. We have two possible cases:

• if |succ(l )| > 2 then, since |succ( )| = 2, there exists a literal with two predecessors. This is absurd since all the clauses are binary.

• if |succ(l )| = 1 then l is not the FUIP which is absurd. Proof. Result trivially implied by Lemma 5.1 and Proposition 5.5.

On the UP-Resilience of Binary UCSs

In Section 5.5, we proved the UP-resilience of the main patterns P 1 and P 2 with respect to any order of application of Max-SAT resolution. The next corollary is an immediate consequence of this result.

Corollary 5.2. For k ∈ {2, 3}, the transformation of a k b -UCSs is UP-resilient.

Proof. 2 b -UCSs and 3 b -UCSs are all of the respective forms ψ 2 b = {l 1 ∨ l 2 , l 1 ∨ l 2 } and ψ 3 b = {l 1 ∨ l 2 , l 1 ∨ l 3 , l 2 ∨ l 3 } which correspond to the premises of patterns P 1 and P 2 . Thus, we obtain the wanted result using Propositions 5.2 and 5.3.

We want to generalize the result of Corollary 5.2 to all binary k-UCSs, even for specific orders of application of Max-SAT resolution. To this end, we introduce new orders using the characterization established in Corollary 5.1. We prove the resilience of k b -UCSs with respect to these orders. In the following section, we will also explain the inefficiency of the current orders for these patterns. We prove that the Max-SAT resolution transformation relatively to the order O = P RO(p 1 , p 2 ) is UP-resilient:

5 Understanding Inference in Max-SAT BnB -5.5 UP-Resilience and UCS Patterns

• The clause propagating l is not deleted after the transformation by Max-SAT resolution relatively to the order O so it clearly propagates l if its predecessors are set to True and thus the transformation by Max-SAT resolution relatively to the order O is UP-resilient for l . This argument also applies for the literals that were involved in the propagation of l .

• All possible neighborhoods of literals l p 1 n 1 = l and l contain the empty clause. Therefore, the transformation by Max-SAT resolution relatively to the order O is UP-resilient for l and l .

• For i ∈ {1, 2}, we set l p i 0 = l . Every literal l p i j such that 1 ≤ j < n i admits exactly one neighborhood nei g h(l

p 1 j ) = {l p i j -1 , l p i j +1 } that
p 1 j )(1 ≤ j < n i ) is of the form: l ∨ l p i j , l p i j ∨ l p i j +1 l ∨ l p i j +1 , l ∨ l p i j ∨ l p i j +1 , l ∨ l p i j ∨ l p i j +1 The clause C = l ∨ l p i j ∨ l p i j +1 clearly ensures the propagation of literal l p i j +1 if l p i j ∈ nei g h(l p i j +1
) is set to True since l is propagated by the unit resolvent clause {l }. Also, for j = 1, the clause C = l ∨l n 1 = l is the conflict literal. We have two possible propagation sequences whose implication graphs are G and G represented in Figure 5.5. We prove that the Max-SAT resolution transformation relatively to the order O = P RCO(p 1 , p 2 ) is UP-resilient:

• The same arguments in the proof of Theorem 5.1 ensure the UP-resilience of the transformation respectively to O for l p 1 j (1 ≤ j ≤ n 1 ) and l as well as l and all the literals involved in its propagation.

• Every literal l p 2 j such that 1 ≤ j ≤ n 2 admits exactly one neighborhood nei g h(l p 2 j ) = {l

l ∨ l p 2 j , l p 2 j ∨ l p 2 j -1 l ∨ l p 2 j -1 , l ∨ l p 2 j ∨ l p 2 j -1 , l ∨ l p 2 j ∨ l p 2 j -1
The clause C = l ∨ l We conclude that the transformation by Max-SAT resolution relatively to the order O is UP-resilient.

There is a major difference between the orders we introduced. Indeed, PRCO ensures a linear input resolution transformation, i.e., at each intermediary Max-SAT resolution step we use the resolvent obtained in the previous step and a clause from the detected k b -UCS. This is not always the case for PRO. The following result is an immediate consequence of either Theorem 5.1 or 5.2.

Corollary 5.3. For any k ≥ 2, there exists a sequence of variables S in any k b -UCSs ψ such that Θ(ψ, S) is UP-resilient.

On the Limits of Current Orders for Binary UCSs

Empirical results show that 2 b -UCSs and 3 b -UCSs, which correspond respectively to the patterns P 1 and P 2 have a positive impact on the performance of BnB solvers for Max-SAT [START_REF] Abramé | On the Extension of Learning for Max-SAT[END_REF][START_REF] Chu | Resolution-based lower bounds in MaxSAT[END_REF]. The result in corollary 5.2 obtained through properties 5.2 and 5.3 prove that 2 b -UCSs and 3 b -UCSs are UP-resilient for any given order of application of Max-SAT resolution which explains why learning them has a positive impact regardless of the chosen order. This is not the case for k b -UCSs when k > 3. Empirical studies on the Ahmaxsat solver in [START_REF] Abramé | On the Extension of Learning for Max-SAT[END_REF] show that learning 4 b -UCSs and 5 b -UCSs can have a negative impact on its performance. This can be explained by the inadequacy of the Max-SAT resolution application orders used in state-of-the-art BnB solvers for k b -UCSs when k > 3. This result is established in the following propositions. Proposition 5.6. For any k > 3, there exists a k b -UCS whose transformation with respect to RPO is not UP-resilient.

Proof. We provide a counter example for 4 b -UCSs which can be easily extended to any k b -UCS for k > 4. We consider the IS ψ = {l , l ∨ l 1 , l ∨ l 2 , l 1 ∨ l 3 , l 2 ∨ l 3 } detected by one of the possible implication graphs represented on the left in Figure 5.6 after the respective propagation of literals l 1 , l 2 and l 3 (or l 3 ). Clearly, the subset ψ = {l ∨l 1 , l ∨l 2 , l 1 ∨l 3 , l 2 ∨l 3 } ⊂ ψ is a 4 b -UCS recognized by the FUIP l . The Max-SAT resolution transformation of ψ with respect to RPO which corresponds to the variable sequence S = 〈v ar (l 3 ), v ar (l 2 ), v ar (l 1 )〉 is represented on the right in Figure 5.6.

l l 1 l 3 l 2 l l ∨ l 1 l 1 ∨ l 3 l ∨ l 2 l 2 ∨ l 3 l 2 ∨ l 3 l l 2 l 3 l 1 {l } l ∨ l 2 l 2 ∨ l 3 l ∨ l 1 l 1 ∨ l 3 l 1 ∨ l 3 l 2 ∨ l 3 l 1 ∨ l 3 l 1 ∨ l 2 l ∨ l 2 l ∨ l 1 l ∨ l 1 l l 1 ∨ l 2 ∨ l 3 l 1 ∨ l 2 ∨ l 3 l ∨ l 1 ∨ l 2 l ∨ l 1 ∨ l 2 v ar (l 3 ) v ar (l 2 )
v ar (l 1 ) The literal l 1 has one neighborhood nei g h(l 1 ) = {l , l 3 } that doesn't contain the empty clause.

Clearly, the literal l 1 can't be propagated in Θ(ψ, S)| nei g h(l 1 ) = {l 1 ∨ l 2 , l 1 ∨ l 2 }. Similarly, the fragmentation phenomenon also occurs for l 2 and we conclude that the transformation of ψ relatively to RPO is not UP-resilient.

Proposition 5.7. For any k > 3, there exists a k b -UCSs whose transformation with respect to SIR is not UP-resilient.

Proof. The SIR heuristic becomes practically unusable for k b -UCSs since all the intermediary resolvents have the same size (binary) as shown in the proofs of Theorems 5.1 and 5.2. The same argument in the proof of Proposition 5.6 is therefore sufficient to prove the same result on the SIR order.

Generalization to Other UCSs

In this section, we generalize our result to k-UCSs where all clauses are binary except one of any size that is involved in the conflict when the implication graph corresponds to the We prove that the Max-SAT resolution transformation relatively to the order O = M P RO(p 1 , ..., p s ) is UP-resilient:

• The same arguments in the proof of Theorem 5.1 ensure the UP-resilience of the transformation respectively to O for l p i j where 1 ≤ i ≤ s and 1 ≤ j < n i as well as l and all the literals involved in its propagation. Furthermore, all the neighborhoods of literals l 1 , ..., l s contain the empty clause.

• For i ∈ {1, ..., s}, ∀N ∈ pnei g h(l p i n i ) (n i > 1) s.t. ∉ N , we have l p i n i -1 ∈ N (exists since n i > 1). Clearly, the clause l ∨ l n i in any of these neighborhoods when l p i n i -1 is set to True since l is propagated by the unit resolvent clause containing it. We deduce that the transformation relatively to the order O is UP-resilient for l p i n i where 1 ≤ i ≤ s and n i > 1.

• We still need to prove the UP-resilience of the transformation for literals l p i n i = l i when n i = 1, with respect to their possible neighborhoods {l , l j } for j ∈ {1, .., s} \ {i } not containing the empty clause. For this end, we prove by induction on |C | ≥ 3 that the compensation clauses produced by the Max-SAT resolution steps on v ar (l 1 ), ..., v ar (l s ) ensure the propagation of each literal l i if we consider the neighborhoods as mentioned above. For simplification, in the first Max-SAT resolution step, we replace C by the clause C = l ∨ l 1 ∨ • • • ∨ l s . This doesn't affect our result since we only omit a single clause containing the literal l :

-If |C | = 3 then C = l 1 ∨l 2 ∨l 3 . The Max-SAT resolution steps are represented on the left in Figure 5.8 and we can easily check that the compensation clauses ensure the propagation of the literals l i , for 1 ≤ i ≤ 3, if we consider the neighborhoods mentioned above.

-Suppose the property is true for any clause of size s ≥ 3. We conclude that the transformation by Max-SAT resolution relatively to the order O is UP-resilient.

Let C = l 1 ∨ • • • ∨ l s+1
l ∨ l 1 ∨ l 2 ∨ l 3 l ∨ l 1 l ∨ l 2 ∨ l 3 l ∨ l 2 l ∨ l 3 l ∨ l 3 l l ∨ l 1 ∨ l 2 l ∨ l 1 ∨ l 2 ∨ l 3 l ∨ l 2 ∨ l 3 v ar (l 1 ) v ar (l 2 ) v ar (l 3 ) l ∨ l 1 ∨ • • • ∨ l s+1 l ∨ l 1 l ∨ l 2 ∨ • • • ∨ l s+1 l ∨ l 2 CC 1 = l ∨ l 1 ∨ l 2 . . . CC s = l ∨ l 1 ∨ l 2 ∨ • • • ∨ l s ∨ l s+1
. . . The SIR order is defined relatively to the size of the intermediary resolvents. Thus, it may theoretically simulate any order when the sizes of the resolvents are the same or many different orders when many resolvents share the same size which is the case of the studied UCSs. That's why this heuristic remains practically unusable even in the generalized case. Furthermore, RPO doesn't necessarily ensure the UP-resilience of k-UCSs described in the previous corollary. We finish this section by an example that highlights this fact. This example where the non binary clause is tertiary can be easily extended to any size s > 3.

Example 5.2. We consider the IS ψ = {l , l ∨ l 1 , l ∨ l 2 , l ∨ l 3 , l 1 ∨ l 4 , l 2 ∨ l 3 ∨ l 4 } (we name the tertiary clause C ) detected by the first implication graph represented on the left in Figure 5.9 after the respective propagation of literals l 1 , l 2 , l 3 and l 4 . In the second graph on the left in the same figure, we represent another possible propagation sequence which outlines the possible neighborhood of l 4 , nei g h(l 4 ) = {l 1 , l 3 } not containing the empty clause. Clearly, the subset ψ = ψ \ {l } is a 5-UCS recognized by the FUIP l such that C participates in the conflict and |succ(l )| = |C | = 3. The Max-SAT resolution transformation of ψ with respect to RPO which corresponds to the variable sequence S = 〈v ar (l 4 ), v ar (l 3 ), v ar (l 2 ), v ar (l 1 )〉 is represented on the right in Figure 5.9. Clearly, the literal l 4 can't be propagated in Θ(ψ, S)| nei g h(l 4 ) = {l , l ∨ l 2 , l 2 ∨ l 4 , l 2 ∨ l 4 }. We conclude that the transformation of ψ relatively to RPO is not UP-resilient.

5 Understanding Inference in Max-SAT BnB -5.6 Conclusion & Future Work

l l 1 l 4 l 2 l 3 l l ∨ l 1 l 1 ∨ l 4 l ∨ l 2 l ∨ l 3 C C C l l 1 l 4 l 2 l 3 l l ∨ l 1 l 1 ∨ l 4 l ∨ l 2 l ∨ l 3 C l ∨ l 3 C l 1 ∨ l 4 l 2 ∨ l 3 ∨ l 4 l 1 ∨ l 2 ∨ l 3 l ∨ l 3 l ∨ l 1 ∨ l 2 l ∨ l 2 l ∨ l 1 l ∨ l 1 l l 1 ∨ l 2 ∨ l 3 ∨ l 4 l 1 ∨ l 2 ∨ l 4 l 1 ∨ l 2 ∨ l 3 ∨ l 4 l ∨ l 1 ∨ l 2 ∨ l 3 l ∨ l 1 ∨ l 3 l ∨ l 1 ∨ l 2 ∨ l 3 l ∨ l 1 ∨ l 2 v ar (l 4 ) v ar (l 3 ) v ar (l 2 )
v ar (l 1 )

Figure 5.9: Implication graphs corresponding to the possible propagation sequences of ψ in Example 5.2 and the application of Max-SAT resolution steps relatively to RPO

Conclusion & Future Work

In this chapter, we have thoroughly investigated the power of inference in the context of Max-SAT BnB through the property of UP-resilience. We showed that this notion can help quantify the impact of Max-SAT resolution transformations on the SUP mechanism. We particularly observed that the order of application of Max-SAT resolution during the transformation of ISs can directly impact its UP-resilience. We showed that, while the traditional patterns are UP-resilient with respect to any order, the recently introduced k-UCS patterns are not necessarily UP-resilient with respect to the current orders specifically when k > 3. They are nevertheless UP resilient with respect to other newly introduced orders. Our results thus contribute to theoretically explain the efficiency of the traditional patterns observed in the literature as well as the recent empirical results established in [START_REF] Abramé | On the Extension of Learning for Max-SAT[END_REF][START_REF] Abramé | Max-résolution et apprentissage pour la résolution du problème de satisfiabilité maximum[END_REF].

To our best knowledge, this is the first work in which UP-resilience is used to theoretically characterize the transformations by Max-SAT resolution with respect to the possible orders of its application. Indeed, this can be a starting point of a new approach to extend Max-SAT resolution patterns. In our case, we chose UCS patterns because they present several advantages, i.e., the introduction of unit clauses as well as the high frequency of their apparition. More importantly, the specific UCS patterns studied in this chapter exhibit a particular structure in terms of the implication graphs representing their possible propagation sequences, which we exploited to introduce our new orders ensuring the UP-resilience of Max-SAT resolution transformations.

The prospects of our research include the extension of our studies to k-UCSs in general. It also opens new perspectives for finding orders of application of Max-SAT resolution that ensure UP-resilience or maximize its percentage by thoroughly studying the implication graphs corresponding to the propagation sequences of certain ISs. Another interesting prospect is extending our work on more sophisticated mechanisms that are used to detect disjoint ISs such as Generalized Unit Propagation (GUP) [START_REF] Kuegel | Improved Exact Solver for the Weighted MAX-SAT Problem[END_REF] which combines SUP whith Failed Literals (FL) [START_REF] Li | Detecting Disjoint Inconsistent Subformulas for Computing Lower Bounds for Max-SAT[END_REF]. For instance, if the reason of unsatisfiablity of the detected IS after applying GUP can be represented in the form of an implication graph, our results would be applicable for GUP. Moreover, it would be relevant to study whether Max-SAT inference under the Max-SAT resolution rule can be efficiently incorporated in the recent BnB paradigm introduced in [Li+21a; Li+22a] which seems to bring forth a new family of BnB algorithms that rely on extensive learning. The extended local learning mechanisms deduced in our work may therefore allow to further guide the exploration of the search tree if properly incorporated during the search or can simply be used in the context of preprocessing. Finally, increasing knowledge about Max-SAT resolution can be useful for SAT-based solvers as some solvers3 such as EVA [START_REF] Narodytska | Maximum Satisfiability Using Core-Guided MaxSAT Resolution[END_REF], already exploit Max-SAT resolution to transform cores returned by SAT solvers.

Introduction & Motivation

One of the first proof systems for Max-SAT is based on the Max-SAT resolution inference rule [BLM06; LH05a; BLM07; LHG08], which is an extension of the resolution rule introduced in the context of SAT [START_REF] Alan | A Machine-Oriented Logic Based on the Resolution Principle[END_REF]. Max-SAT resolution is sound and complete for Max-SAT and has recently been extensively studied in the context of proof theory for Max-SAT [LR20b; LR20a; BL20; Fil+20]. However, we still lack understanding of many aspects related to Max-SAT resolution as an inference rule and as a proof system. Our contributions in Chapter 5 provides a more through understanding on the power of Max-SAT resolution as an inference rule in the context Max-SAT BnB algorithms. In this chapter, we tackle more generic open problems and investigate some aspects related to Max-SAT resolution, potentially augmented with other relevant rules, as a proof system for Max-SAT.

SAT and Max-SAT are strongly related and share many aspects. In fact, SAT solving techniques are often used in the context of Max-SAT solving, particularly in SAT-based and 6 Bridging the Gap between SAT and Max-SAT Inference -6.1 Introduction & Motivation Branch and Bound (BnB) algorithms for Max-SAT1 . Yet, in theory, bridging the gap between SAT and Max-SAT inference remains one of the main challenges in the last decade. In particular, adapting a resolution proof to get a valid proof for Max-SAT of reasonable size remains an open problem since the introduction of Max-SAT resolution 15 year ago. Bonet et al. state that "it seems difficult to adapt a classical resolution proof to get a Max-SAT resolution proof, and it is an open question if this is possible without increasing substantially the size of the proof " [START_REF] Maria | Resolution for Max-SAT[END_REF]. Indeed, unlike resolution, the Max-SAT resolution rule replaces the premises with the conclusions, which is necessary to maintain Max-SAT equivalence after its application. Moreover, aside from the traditional resolvent clause, additional compensation clauses are also added to ensure Max-SAT equivalence. In [START_REF] Larrosa | A logical approach to efficient Max-SAT solving[END_REF], Larrosa et al. describe Max-SAT resolution as "a movement of knowledge" and this is typically expected of any sound Max-SAT inference rule preserving Max-SAT equivalence. Many complications thus arise when adapting resolution proofs into Max-SAT resolution proofs. More specifically, read-once resolution proofs, where each clause is used once, represent the only fragment of resolution for which an immediate and trivial adaptation is possible2 . Our first contributions in this chapter fall within this context and particularly aim to bridge the gap between SAT and Max-SAT inference. We propose different adaptations from resolution refutations into max-refutation where Max-SAT resolution is augmented with the split rule. We show that, in this case, we can obtain linear adaptations with respect to the size of the resolution refutations in the following cases: regular tree resolution, tree resolution and semi-tree resolution. We also generalize our results to unrestricted resolution refutations but with a worst case exponential blow up in the size of the proofs. Then, we tackle the more specific and difficult problem of adapting resolution refutations into Max-SAT resolution proofs without any additional inference rules. More specifically, we identify a new fragment of resolution, called crossing-free resolution, for which an adaptation using exclusively Max-SAT resolution is possible without substantially increasing the size of the proof. Our adaptations led to the the introduction of the first independent proof builder for Max-SAT, called MS-Builder, which relies on iterative calls to a SAT oracle in order to generate certificates. Our work also tackles a more generic aspect on proof systems for Max-SAT. We particularly introduce and investigate the notion of explainability to study the inferential power of Max-SAT proof systems.

This chapter is organized as follows. First, we propose our different adaptations aiming to bridge the gap between SAT and Max-SAT inference. We first describe our adaptations to max-refutations, where Max-SAT resolution is augmented with the split rule, ensuring linear size guarantees for specific classes of resolution. Then, we introduce our new class of resolution for which an adaptation using exclusively Max-SAT resolution is possible without a considerable increase in the size of the proofs. We also study the limits and features of our adaptations with respect to specific resolution patterns. We also briefly describe further results on certificate generation and on explainability for Max-SAT. Finally, we mention that our contributions in this chapter are in collaboration with Matthieu Py. These results have been the subject of joint publications in different international [PCH20; PCH21a; PCH21d;

6 Bridging the Gap between SAT and Max-SAT Inference -6.2 From SAT Refutations to Max-Refutations CHP22b] and national [PCH21c; PCH22a; PCH22b; CHP22a] venues. The results succinctly described in Sections 6.2 and 6.5 are presented with further details in the manuscript of Mathieu Py [START_REF] Py | Inférence et certificats pour le problème de satisfiabilité maximum[END_REF].

From SAT Refutations to Max-Refutations

In this section, we attempt to tackle the problem of adapting resolution refutations into max-refutations with size guarantees on the resulting proofs. Note that, in these results, we augment Max-SAT resolution with the split rule thus generating Max-SAT proofs in the ResS system [START_REF] Larrosa | Towards a Better Understanding of (Partial Weighted) MaxSAT Proof Systems[END_REF]. We propose linear adaptations for specific classes of resolution. We first deal with regular tree resolution refutations, showing that a linear adaptation is possible in this case by applying the split rule on to duplicate non-read-once clauses when necessary. Then, we extend this result to tree resolution refutations using the known result established in Lemma 2.1 stipulating that minimal tree resolution refutations are regular. Furthermore, we introduce a new class of refutations that we refer to as semi-tree-like, which generalizes tree resolution refutations, and we extend our linear result to this class of refutations. Finally, we propose a complete adaptation of any (unrestricted) resolution refutation into a max-refutation, although with a worst case exponential blow-up in the size of the resulting refutations.

From Regular Tree Resolution Refutations to Max-Refutations

In this section, we show that it is possible to adapt a regular tree resolution refutation to obtain a max-refutation with linear size in ResS. If a clause C is used k times (k > 1) as a premise of a resolution step, we use the split rule to duplicate clause C into k distinct clauses subsumed by C . We will then use these new clauses to replace C as a premise of a resolution step. Given a branch starting from a clause C , we say that this branch accepts the substitution of C by C ∨ l if updating the branch after the substitution of C by C ∨ l does not affect the validity of the resolution refutation. The following lemma guarantees that, for a given non-read-once clause, there exists a variable x such that some branches starting from C accept the substitution of C by C ∨ x while the rest accept the substitution of C by C ∨ x. Note that a node where a set of given paths in a resolution proof intersect will be referred to as their junction node. Proof. Given a non-read-once regular tree resolution refutation π and a non-read-once clause C in π, there exists a node v of the DAG of π representing a resolution step on variable x such that v is the first junction point of all the paths starting from C . The existence of this Max-Refutations node is ensured since this junction point is eventually the empty clause. Furthermore, every path starting from the clause C leads to one (and only one) of the premises of the resolution step in the node v. Indeed, a path leading to both premises entails the existence of an intermediate non-read-once clause which is not possible since the refutation is tree-like. We partition the branches starting from C into two subsets containing respectively the paths leading to the first and second premise of the resolution step in the node v. Each partition is non empty since if there exists an empty subset v can't be the first junction point of the branches. Let x be the variable eliminated at this resolution step and suppose w.l.o.g that the first premise contains literal x while the second contains literal x. As π is regular, x is not a variable of C and the subset of branches starting from C leading to the first premise accepts the substitution of C by C ∨ x while the subset of branches leading to the second premise accepts the substitution of C by C ∨ x.

The result established in Lemma 6.1 ensures the possibility to fix any non-read-once clause used k > 1 times by using the split rule. Indeed, we can apply this rule to replace a non-read-once clause used k > 1 times by two clauses used respectively 1 ≤ k

1 < k and 1 ≤ k 2 < k such that k = k 1 + k 2 .
By iterating this method, we can fix every non-read-once clause. Then, we only need to replace the resolution rule by the Max-SAT resolution rule to obtain an adaptation from any regular tree resolution refutation to a max-refutation in linear size. Theorem 6.1. Given an unsatisfiable formula φ and a regular tree resolution refutation π of φ, there exists a max-refutation of φ containing O(|π|) inference steps.

Proof. Let π be a regular tree resolution refutation of φ. We set T 1 = and T 2 = M R(π), where M R(π) is obtained from π after replacing each resolution by Max-SAT resolution. If π is read-once, T 2 is a max-refutation of φ containing |π| inference steps. Now, let C be a non-read-once clause of π. Using Lemma 6.1, there exists a variable x ∉ v ar (C ) and a partition of the branches starting from C into two non-empty subsets, the first accepting C ∨ x and the second accepting C ∨ x. We apply the Max-SAT split rule on C to obtain C ∨ x and C ∨ x and we replace C as premise by C ∨ x on the first subset of branches and C by C ∨ x on the second. Doing this, we augment T 1 by adding one split and we change T 2 by replacing the premise clause C as described above. As T 2 is a tree-like regular resolution refutation of (φ\C ) ∧ (C ∨ x) ∧ (C ∨ x), it is possible to iteratively apply this operation on T 2 until we obtain a read-once regular tree resolution refutation. Therefore, after the last iteration, we have a pair (T 1 , T 2 ) such that T 1 is a sequence of applications of the split rule transforming φ into a Max-SAT equivalent φ and T 2 is a read-once regular max-refutation of φ . Therefore, these transformations form a max-refutation of φ.

Next, we prove that the size of the max-refutation is in O(|π|). Given a non-read-once leaf clause C used k > 1 times, we can easily prove by induction on k that it is possible to fix C using at most k -1 splits. Now, let C 1 , ...,C p be the leaf clauses of π used respectively k 1 , k 2 , ..., k p times. Notice that k 1 +k 2 +...+k p = |π|+1 since π has exactly 2|π| premises and |π| -1 intermediate clauses. Using the previous induction, we need at most k 1 -1 + k 2 -1 + ... + k p -1 ≤ |π| splits to fix every non-read-once leaf clause of π. Consequently, |T 1 | ≤ |π|.

6 Bridging the Gap between SAT and Max-SAT Inference -6.2 From SAT Refutations to Max-Refutations

On the other hand, the number of Max-SAT resolutions in T 2 is by construction equal to the number of resolution steps in π and, therefore, |T 2 | = |π|. We conclude that the complete max-refutation contains at most 2|π| inference steps, which is in O(|π|).

Example 6.1. We consider the regular tree resolution refutation of φ = (x 1 ) ∧ (x 1 ∨ x 3 ) ∧ (x 1 ∨ x 2 ) ∧ (x 2 ∨ x 3 ) represented in Figure 2.7. We observe that the original clause (x 1 ) is used two times as a premise of a resolution step. The junction point of the left and right branches eliminates variable x 3 such that the branch on the left leads to the premise containing literal x 3 and the branch on right leads to the premise containing literal x 3 . We apply the split rule on clause (x 1 ) to get (x 1 ∨ x 3 ) and (x 1 ∨ x 3 ) and we replace (x 1 ) by (x 1 ∨ x 3 ) and (x 1 ∨ x 3 ) respectively on the left and right branches. Finally, we replace all resolutions by Max-SAT resolutions to obtain the complete max-refutation represented in Figure 6.1.

x 1

x 1 ∨ x 3 x 1 ∨ x 3 x 1 ∨ x 3 x 1 ∨ x 2 x 2 ∨ x 3 x 3 x 2 ∨ x 3 x 1 ∨ x 2 ∨ x 3 x 1 ∨ x 2 ∨ x 3 x 3 Figure 6
.1: From regular tree resolution refutations to linear-size max-refutations

From (Semi-)Tree Resolution Refutations to Max-Refutations

In the previous section, we proposed a linear adaptation from regular tree resolution refutations to max-refutations. We propose to extend the case where this adaptation guarantees linear size of the obtained max-refutation to tree resolution refutations. To this end, we simply rely on the known transformation from any tree resolution refutation to a regular tree resolution refutation established in Lemma 2.1. Since it is possible to make a tree resolution refutation regular without increasing the size of the proof, we can apply the adaptation in Theorem 6.1 to produce a max-refutation with linear size as shown in the following corollary.

Corollary 6.1. Given an unsatisfiable formula φ and a tree resolution refutation π of φ, there exists a max-refutation of φ containing O(|π|) inference steps.

To go further in terms of linear adaptations, we propose the class of semi-tree resolution refutations defined below. This class of refutations clearly extends tree resolution refutations, i.e., every tree resolution refutation is semi-tree-like. To extend our linear adaptation 6 Bridging the Gap between SAT and Max-SAT Inference -6.2 From SAT Refutations to Max-Refutations result to semi-tree-like resolution refutations, we propose a method which relies on the simple fact that semi-tree resolution refutations can be partitioned into two parts where the first part is a read-once sequence of resolutions and the second part is a tree-like resolution refutation. As the first part is a read-once sequence of resolutions, it can be trivially adapted into a max-refutation by replacing each resolution by a Max-SAT resolution while the second part can be adapted using the result in Corollary 6.1. After transforming the two parts, we glue them back to construct the complete max-refutation. and (x 1 ∨ x 4 ) and we obtain the tree-like resolution refutation represented in Figure 2.7. We adapt this tree-like resolution refutation as in Example 6.1 and we replace the resolution step on x 1 by a Max-SAT resolution step. We glue back the two parts to obtain the complete max-refutation represented in Figure 6.3. 6 Bridging the Gap between SAT and Max-SAT Inference -6.2 From SAT Refutations to Max-Refutations

x 1 ∨ x 4 x 1 ∨ x 4 x 1 ∨ x 3 x 1 x 1 ∨ x 2 x 2 ∨ x 3 x 3 x 2 x 3
x 1 ∨ x 4 x 1 ∨ x 4 x 1 x 1 ∨ x 3 x 1 ∨ x 3 x 1 ∨ x 3 x 1 ∨ x 2 x 2 ∨ x 3 x 3 x 2 ∨ x 3 x 1 ∨ x 2 ∨ x 3 x 1 ∨ x 2 ∨ x 3
x 3 Figure 6.3: Adapting a semi-tree resolution refutation to a max-refutation

From Unrestricted Resolution Refutations to Max-Refutations

In the previous sections, we proposed linear adaptations from specific classes of resolution refutations to max-refutations. These results are established in the following corollary using the notion of simulation. Next, we want to devise an adaptation for the unrestricted case, even with a potential blow-up in the size of the resulting max-refutation.

Corollary 6.3. ResS p-simulates regular tree, tree and semi-tree resolution.

To devise our generic adaptation, we simply extend the one described in section 6.2.2 by adding a first transformation to make the initial resolution refutation tree-like. Notice that we could make the initial resolution refutation semi-tree-like (instead of tree-like) but this choice does not affect the theoretical size of the obtained max-refutation. To achieve this first intermediate transformation, we will iteratively search in the proof for the first non-read-once intermediate clause C . If this clause is used k > 1 times as a premise of another resolution step, we consider the part of the proof leading to C and we duplicate it k times in order to get a tree-like sequence of resolutions generating k resolvents C 1 ,C 2 , ...,C k , each resolvent C i containing exactly the same literals as C and is generated by a similar sequence of resolution steps. Consequently, C is no longer used several times as a premise of a resolution step, the input clauses are. Repeating this operation forces the resolution refutation to become tree-like. Fixing a non-read-once intermediate clause can, in the worst case, double the size of the current resolution refutation. As such, the size of the obtained tree-like resolution refutation is exponentially bounded by the size of the initial unrestricted resolution refutation. To polish this upper bound, we introduce a new parameter defined below, which is the number of multi-uses of intermediate clauses. Notice how, in the definition, we subtract 1 use for each clause. Intuitively, we consider the first use of any non-read-once intermediate clause as authorized. Example 6.3. We consider the resolution refutation represented in Figure 6.4. This refutation is not semi-tree-like since the clauses (x 1 ) and (x 4 ) are two non read-once clauses in the same branch. First, we duplicate the resolutions leading to (x 1 ) and we obtain the tree-like resolution refutation represented in Figure 6.5. Then, we apply the transformations described in Corollary 6.1 to get the max-refutation represented in Figure 6.6.

x 1 ∨ x 3 ∨ x 4 x 4 x 1 ∨ x 4 x 1 ∨ x 2 x 2 ∨ x 3 x 1 ∨ x 3 x 1 x 3 x 2 x 3
x 1 ∨ x 3 ∨ x 4 x 4 x 1 ∨ x 4 x 1 ∨ x 2 x 2 ∨ x 3 x 1 ∨ x 3 x 1 x 1 x 3 x 2
x 3 Figure 6.5: Adapting a resolution refutation to a tree-like resolution refutation

x 4 x 3 ∨ x 4 x 3 ∨ x 4 x 1 ∨ x 3 ∨ x 4 x 1 ∨ x 3 ∨ x 4 x 1 ∨ x 4 x 1 ∨ x 3 ∨ x 4 x 1 ∨ x 3 ∨ x 4 x 1 ∨ x 3 ∨ x 4 x 1 ∨ x 2 x 2 ∨ x 3 x 1 ∨ x 3 x 1 ∨ x 3 x 1 ∨ x 3 x 1 ∨ x 3 ∨ x 4 x 3 x 2 ∨ x 3 x 1 ∨ x 2 ∨ x 3 x 1 ∨ x 2 ∨ x 3 x 3

From SAT Refutations to Max-SAT Resolution Refutations

In the previous section, we contributed to the open problem of adapting resolution refutations into Max-SAT resolution refutations. However, we circumvented the problem by augmenting Max-SAT resolution with the split rule thus generating max-refutations in the ResS system [START_REF] Larrosa | Towards a Better Understanding of (Partial Weighted) MaxSAT Proof Systems[END_REF]. In this section, we tackle the original and more difficult problem of adapting resolution proofs into proofs valid for Max-SAT using exclusively Max-SAT resolution. More specifically, we identify a new fragment of resolution, called crossing-free resolution, for which an efficient adaptation using only Max-SAT resolution is possible. Crossing-free derivations are defined using the ensuing derivations of non read-once clauses. Intuitively, non read-once clauses are used independently to infer new information 6 Bridging the Gap between SAT and Max-SAT Inference -6.3 From SAT Refutations to Max-SAT Resolution Refutations in crossing-free resolution proofs. The adaptation of such proofs to Max-SAT resolution proofs is shown possible modulo some minor syntactic subtleties.

Crossing-Free Resolution

The main difficulty in adapting resolution proofs to Max-SAT resolution ones lies in inferring a substitute for non read-once clauses. Indeed, such clauses must be naturally inferred using Max-SAT resolution while unfolding (i.e., reading and applying) the initial resolution proof, contrary to the previous adaptations in Section 6.2 where non read-once clauses are artificially fixed using the split rule before the actual unfolding of the proof. In this section, we define a new fragment of resolution, referred to as crossing-free resolution. The idea behind this refinement is to ensure enough maneuverability of proofs in terms of structure in order to infer substitutes for non read-once clauses when necessary. To this end, we define below the notion of ensuing derivation of a non read-once clause. Intuitively, this particular derivation is ensued from a non read-once clause in the sense that it is sufficient to delimit the impact of its multiple uses. We recall that a node where a set of given paths in a resolution proof intersect is referred to as their junction node.

= {x 1 ∨ x 3 ∨ x 4 , x 4 ∨ x 5 , x 4 ∨ x 5 , x 1 ∨ x 4 , x 2 ∨ x 4 ∨ x 6 , x 5 ∨ x 7 , x 2 ∨ x 3 ∨ x 7 , x 5 ∨ x 7 }.
The non read-once clauses x 4 and x 2 ∨ x 3 ∨ x 7 and their ensuing derivations are respectively represented in red and blue. Furthermore, we have EC (x 4 ) = x 6 and EC (x 2 ∨ Recall that clauses are consumed after the application of Max-SAT resolution. Therefore, it seems difficult to adapt resolution derivations in which ensuing derivations of non Max-SAT Resolution Refutations read-once clauses cross. Indeed, in such cases, the formula can significantly evolve as compensation clauses may be used while others may be generated. As such, crossing-free resolution ensures that ensuing derivations are disjoint, i.e., do not cross, as defined below. Definition 6.4 (Crossing-Free Resolution). Let φ be a CNF formula and π a resolution derivation of clause C from φ. π is crossing-free if for every pair of non read-once clauses (C 1 ,C 2 ), E D(C 1 ) and E D(C 2 ) are disjoint, i.e., they do not contain a shared arc. Example 6.5. We consider the same formula φ in Example 6.4. The resolution derivation π of clause C = x 6 from φ represented in Figure 6.7 is crossing-free since the ensuing derivations of the non read-once clauses x 4 and x 2 ∨ x 3 ∨ x 7 are disjoint.

x 3 ∨ x 7 ) = x 2 ∨ x 3 . x 4 ∨ x 5 x 4 ∨ x 5 x 1 ∨ x 3 ∨ x 4 x 4 x 1 ∨ x 4 x 2 ∨ x 4 ∨ x 6 x 1 ∨ x 3 x 1 x 2 ∨ x 6 x 3 x 3 ∨ x 6 x 2 ∨ x 3 x 6 x 2 ∨ x 3 ∨ x 5 x 2 ∨ x 3 ∨ x 5 x 5 ∨ x 7 x 2 ∨ x 3 ∨ x 7 x 5 ∨ x 7
Note that the crossing-free resolution refinement entails an interesting property established in the following proposition. Intuitively, this property ensures that non read-once clauses are used independently to infer new information in crossing-free resolution proofs. This entails that each ensuing derivation in a crossing-free resolution proof can be adapted independently as described in the next section. Proposition 6.1. Let φ be a CNF formula, π be a crossing-free resolution derivation of clause C from φ and C a non read-once clause in π.

Every clause C l in E D(C ) s.t. C l ∉ {C , EC (C )} is read-once. Proof. Let C l be a clause in E D(C ) s.t. C l ∉ {C , EC (C )}. Clearly, if C l is not read once, E D(C l ) shares at least one arc with E D(C ) which is absurd since π is crossing-free.
Note that in the following section where we will introduce our adaptation from crossingfree proofs into Max-SAT resolution proofs, we may allow the addition of tautological clauses to any formula in the proof. Furthermore, for the sake of simplification, we will temporarily allow the use of the following rewriting C ∨a 1 ∨ a 2 ∨ ... ∨ a n = (C ∨a 1 )∧(C ∨a 1 ∨ a 2 )∧...∧(C ∨ a 1 ∨ a 2 ∨...∨∨a n )3 [START_REF] Larrosa | A logical approach to efficient Max-SAT solving[END_REF] as two full-fledged rules to manipulate clauses in compacted form. We will refer to the left-right rewriting as expansion and to the right-left one as compaction. This may entail abusing some notations in the following section and we thoroughly discuss these syntactic subtitles in Section 6.3.3.

From Crossing-Free Resolution to Max-SAT Resolution

In this section, we show that crossing-free resolution derivations can be adapted to Max-SAT resolution derivations modulo some minor syntactic subtleties without substantially increasing their size. In the following proposition, we first provide some patterns which will be encountered in the adaptation. Next, we start dealing with the adaptation of crossing-free resolution derivations and particularly ensuing derivations. To generate a substitute for a non read-once clause, note that we can use the literals in the junction nodes of an ensuing derivation, i.e., the nodes where paths starting from the non read-once clause intersect. To generate such substitutes using Max-SAT resolution, we start by dealing with read-once linear parts in the proof. Informally, we want to drag (i.e., bring along) each non read-once clause while unfolding the proof until they are reused. This is formally established for read-once linear parts of the proof in the following lemma. Note that the implications of equality * = in the proof will be further discussed in Section 6.3.3. Lemma 6.2. Let φ be a CNF formula, π = C 1 , ...,C s(π) be a read-once linear resolution derivation of clause C = from φ. We can deduce φ M axRes C ∧(C 1 ∨C ) in O(s(π)×w(π)) inference steps.

Proof. Let m = s(π). Since π is read-once, it can be trivially adapted into a Max-SAT resolution derivation of C from φ of the same size by replacing every resolution step with a Max-SAT resolution step. Next, we prove by induction on i ∈ {1, .., m -1} that we can infer C i = C 1 ∨C i +1 at the i t h Max-SAT resolution step:

• For i = 1, the first Max-SAT resolution on clauses C 1 = l 1 ∨ A 1 and D 1 = l 1 ∨ B 1 w.r.t
v ar (l 1 ) generates the following compensation clause:

CC 1|1 = l 1 ∨ A 1 ∨ B 1 * = l 1 ∨ A 1 ∨ A 1 ∨ B 1 = C 1 ∨C 2 = C 1
Note that to establish the equality * = 4 , we can add the tautological clauses l 4 which is sound for Max-SAT (c.f. Remark 13 in [START_REF] Larrosa | A logical approach to efficient Max-SAT solving[END_REF]) 162 6 Bridging the Gap between SAT and Max-SAT Inference -6.3 From SAT Refutations to Max-SAT Resolution Refutations

1 ∨ A 1 ∨ B 1 ∨ A 1 (or alternatively l 1 ∨ A 1 ∨ A 1 ) to the formula) in which case l 1 ∨ A 1 ∨ A 1 ∨ B 1
C i = l i ∨ A i D i = l i ∨ B i C i +1 = A i ∨ B i CC 1|i = l i ∨ A i ∨ B i C i -1 = C 1 ∨C i = C 1 ∨ l i ∨ A i C 1 ∨ l i ∨ A i C 1 ∨ A i C 1 ∨ A i ∨ B i C i = C 1 ∨ A i ∨ B i = C 1 ∨C i +1 v ar (l i ) v ar (l i ) Figure
1 ∨ A 1 ∨ A 1 which correspond to C 1 ∨C 2 since D 1 = l 1 (i.e., B 1 is empty).
• Suppose that we can generate

C i -1 = C 1 ∨ C i at the i t h -1 Max-SAT resolution step. The i t h step on C i = l i ∨ A i and D i = l i ∨ B i w.r.t v ar (l i ) generates the resolvent C i +1 = A i ∨B i and the compensation clauses CC 1|i = l i ∨ A i ∨B i and CC 2|i = l i ∨ A i ∨B .
The induction step to infer C i is represented in Figure 6.8. Note that similarly to the base case, if D i = l i (i > 1) is a unit clause, i.e., the i t h step corresponds to a deletion of literal l i from C i = l i ∨ A i deducing the resolvent C i +1 = A i , the tautological clauses l i ∨ A i ∨ A i can be added to the formula thus replacing CC 1|i in Figure 6.8. However, as showcased in the same figure, the addition of such clauses in case D 1 is unit can be avoided since the initial expansion step on C i -1 suffices to generate

C 1 ∨ A i = C 1 ∨C i +1 = C i .
Finally, by Proposition 6.2 (case b.), the inference of C 1 ∨ A i ∨ B i in Figure 6 Example 6.6. We consider the read-once linear derivation of clause x 3 ∨ x 6 from φ = {x 4 , x 2 ∨ x 4 ∨ x 6 , x 2 ∨ x 3 } represented on the left of Figure 6.9. The Max-SAT resolution proof deducing x 3 ∨ x 6 and x 4 ∨ x 3 ∨ x 6 is represented on the right of Figure 6.9.

Next, we establish our main result on the adaptation of crossing-free resolution derivations. The proof in the following theorem particularly deals with the junction nodes in Max-SAT Resolution Refutations ensuing derivations, i.e., nodes where the paths starting from the non read-once clauses intersect. More specifically, we want to drag or bring along the non read-once clause through these particular nodes. We provide an illustration of a full adaptation in Example 6.7.

x 4 x 2 ∨ x 4 ∨ x 6 x 2 ∨ x 6 x 2 ∨ x 3 x 3 ∨ x 6 x 4 x 2 ∨ x 4 ∨ x 6 x 2 ∨ x 6 x 4 ∨ x 2 ∨ x 6 x 2 ∨ x 3 x 3 ∨ x 6 x 2 ∨ x 6 ∨ x 3 x 4 ∨ x 6 x 4 ∨ x 2 ∨ x 6 x 4 ∨ x 6 ∨ x 3 x 4 ∨ x 3 ∨ x 6
Theorem 6.3. Let φ be a CNF formula and π be a crossing-free resolution derivation of clause C from φ. We can deduce φ M axRes C in O(s(π) × (s(π) + w(π)) 2 ) inference steps.

Proof. Property 6.1 ensures that each ensuing derivation can be adapted independently. Let C l be a non read-once clause in π and w.l.o.g we only consider it ensuing derivation E D(C l ). We prove that at each step of E D(C l ) deriving clause C , we can infer C and SC ∨C where SC is either C l or its substitute in the path leading to C . The proof is by induction on the size of the derivation. The base case where the derivation is empty is trivial. Next, using Lemma 6.2, we can suppose w.l.o.g that C is derived in a junction node (of paths starting from C l ). Let l ∨ A and l ∨ B be the premises of the resolution step deriving C = A ∨ B . The induction hypothesis ensures that there exists a Max-SAT resolution derivation of l ∨ A and C ∨l ∨ A. As showcased in Figure 6.10, C l ∨l can be used to replace the occurrences of C l in the derivation of l ∨ B . Note that to avoid using tautological substitutes, we can suppose w.l.o.g that l ∉ C l by interchanging the proofs of l ∨ A and l ∨ B when necessary thus entailing a different unfolding order of the original proof and the generation of the exact same clause as a substitute in such nodes. Again, similarly to the left side, the induction hypothesis ensures the existence of a Max-SAT resolution derivation of l ∨ B and C l ∨ l ∨ l ∨ B and, therefore, C l ∨ l ∨ B by expansion. Clearly, C = A ∨ B can be derived by Max-SAT resolution and we showcase in Figure 6.10 how C l ∨C = C ∨ A ∨ B can be inferred using the compensation clauses as well as C l ∨ l ∨ A and C l ∨ l ∨ B .

6 Bridging the Gap between SAT and Max-SAT Inference -6.3 From SAT Refutations to Max-SAT Resolution Refutations Note that the following particular cases can occur:

l ∨ A l ∨ B A ∨ B l ∨ A ∨ B l ∨ A ∨ B C l ∨ l ∨ A C l ∨ l ∨ B . . . . . . C l C l ∨ l C l ∨ l ∨ A C l ∨ A ∨ B C l ∨ l ∨ A ∨ B C l ∨ l ∨ A C l ∨ A C l ∨ A ∨ B v ar (l ) v ar (l ) v ar (B ) v ar (l )
• A or B is empty, in which case a unit clause is used to derive C = A ∨ B . We represent in Figure 6.11 how to derive C l ∨ C in case A is empty. The derivation in case B is empty is symmetric and thus omitted. Notice that in the case both A and B are empty, π is a refutation and there is no need to derive C l ∨C in the last Max-SAT resolution step. In fact, more generally, this is also not necessary for the last junction node in an ensuing derivation in π.

• A = B in which case the generated compensation clauses are tautological and are not necessary to derive C l ∨C = C l ∨ A as showcased in Figure 6.12.

6 Bridging the Gap between SAT and Max-SAT Inference -6.3 From SAT Refutations to Max-SAT Resolution Refutations

l l ∨ B B l ∨ B C l ∨ l ∨ B . . . . . . C l C l ∨ l C l ∨ B v ar (l )
v ar (l )

l ∨ A l ∨ A A C l ∨ l ∨ A C l ∨ l ∨ A . . . . . . C l C l ∨ l C l ∨ l ∨ A C l ∨ A v ar (l )
v ar (l ) Finally, in each junction node we need O(|B |) inference steps to deduce C l ∨ A ∨ B using case (c) in Proposition 6.2. Similarly, using expansion on A and pattern (b) in Proposition 6.2, we need O(|A|×|B |) inference steps to deduce C l ∨l ∨A. It is important to note that the width of the proof may evolve while generating substitutes for non read-once clauses as literals may be added in junction nodes. However, the width remains bounded by w(π) + s(π) and thus each junction node can be adapted in O((w(π) + s(π)) 2 ) inference steps. Therefore, we conclude that we can deduce φ M axRes C in O(s(π) × (s(π) + w(π)) 2 ) inference steps. Example 6.7. We consider the formula φ = {x 1 ∨ x 3 ∨ x 4 , x 4 ∨ x 5 , x 4 ∨ x 5 , x 1 ∨ x 4 , x 2 ∨ x 4 ∨ x 6 , x 2 ∨ x 3 } and the derivation π of clause x 6 from φ represented in Figure 6.7. We omit the 6 Bridging the Gap between SAT and Max-SAT Inference -6.3 From SAT Refutations to Max-SAT Resolution Refutations section of the proof (in blue) deriving clause x 2 ∨ x 3 for simplicity. Note that this omitted part, i.e., the ensuing derivation of the non read-once clause x 2 ∨ x 3 ∨ x 7 corresponds to a diamond pattern. Such patterns will be studied in Section 6.4. The adaptation of proof π is reported in Figure 6.13. We reuse the adaptation of the linear read-once section in Example 6.9. The non read-once clause and its substitutes are colored in red and added tautological clauses are represented in green. Note that this is one of the possible adaptations depending on the order chosen for adapting the branches of E D(x 4 ). Finally, we stress the fact that we could have generated the clause C = x 4 ∨ x 6 after the last Max-SAT resolution step on clauses x 3 ∨ x 3 (but we omit this inference since x 6 = EC (x 4 ) as mentioned in the proof of Theorem 6.3). Indeed, C can be inferred by an additional Max-SAT resolution step on the compensation clauses obtained in the last step, i.e., clauses x 3 ∨ x 6 and x 4 ∨ x 3 ∨ x 6 . In the proof of Theorem 6.3, this corresponds to the case where B is empty in a junction node of an ensuing derivation.

x 4 ∨ x 5 x 4 ∨ x 5 x 4 x 4 ∨ x 2 ∨ x 6 x 2 ∨ x 6 x 4 ∨ x 2 ∨ x 6 x 3 ∨ x 6 x 2 ∨ x 3 x 2 ∨ x 6 ∨ x 3 x 4 ∨ x 6 x 4 ∨ x 2 ∨ x 6 x 4 ∨ x 6 ∨ x 3 x 4 ∨ x 3 ∨ x 6 x 4 ∨ x 3 ∨ x 6 x 4 ∨ x 3 x 4 ∨ x 1 x 1 ∨ x 3 x 4 ∨ x 3 ∨ x 1 x 4 ∨ x 3 ∨ x 1 ∨ x 3 x 4 ∨ x 3 ∨ x 1 ∨ x 3 x 4 ∨ x 3 ∨ x 1 ∨ x 3 x 4 ∨ x 1 ∨ x 3 x 4 ∨ x 1 ∨ x 3 x 1 ∨ x 3 x 3 x 6

On Orderings and Tautological Clauses

In this section, we discuss some minor syntactic subtleties that occur in the adaptation. First, it is important to note that the use of the expansion and compaction rewritings as full fledged rules is relevant for simplification but not necessary. Recall that these two rules 6 Bridging the Gap between SAT and Max-SAT Inference -6.3 From SAT Refutations to Max-SAT Resolution Refutations are mainly used in order to switch between the different equivalent forms of C when it is written in CNF form. Each form corresponds to a different ordering of the literals in C . When applying Max-SAT resolution, a relevant order may be chosen when necessary. However, an application of a compaction followed by an expansion may correspond to a certain rearrangement of the variables in CNF form. This may occur when adapting the read-once linear part of the proof. Indeed, as showcased in Figure 6.8, a compaction may be followed by an expansion to isolate the clause C 1 ∨l i ∨ A i from the compact form C 1 ∨ A i . Similarly, as shown in Figure 6.10, it may be necessary to isolate the clause C l ∨ l from the compact form C l ∨ l ∨ A when dealing with junction nodes. More specifically, we may need to rearrange a certain literal at the beginning or at the end of the ordering. In Proposition 6.3, we prove that it is possible to switch the first and last literals in the CNF form of C in O(|C |) inference steps. This entails that in the proof of Theorem 6.3, the compaction and expansion rules can be omitted and replaced with O(s(π) × (s(π) + w(π))) Max-SAT resolutions. Clearly, this does not impact our result in terms of the size of the resulting adaptation. In Example 6.8, we provide the full simplified adaptation of the proof in Example 6.7 without the use of rewriting rules. Proposition 6.3. Let n be a natural number and l 1 , ..., l n be n literals. We can deduce (l 1 ) ∧ (l 1 ∨ l 2 ) ∧ ... ∧ (l 1 ∨ ... ∨ l n-1 ∨ l n ) M axRes (l n ) ∧ (l n ∨ l 2 ) ∧ ... ∧ (l n ∨ l 2 ∨ ... ∨ l n-1 ∨ l 1 ) in O(n) inference steps.

Proof. By induction on n we have:

• If n = 1 the result is trivial.

• For n > 1, the application of Max-SAT resolution on clauses l 1 ∨ .... ∨ l n-2 ∨ l n-1 and l 1 ∨....∨l n-1 ∨l n w.r.t v ar (l n-1 ) generates the resolvent clause C = l 1 ∨....∨l n-2 ∨l n and the compensation clause CC = l 1 ∨....∨l n-2 ∨l n ∨l n-1 . Furthermore, by induction, we can deduce (l 1 )∧(l 1 ∨l 2 )∧...∧(l 1 ∨...∨l n-2 ∨l n ) M axRes (l n )∧(l n ∨l 2 )∧...∧(l n ∨l 2 ∨...∨ l n-2 ∨ l 1 ) in O(n -1) inference steps. A single additional Max-SAT resolution step on clauses CC and l n ∨l 2 ∨...∨l n-2 ∨l 1 w.r.t v ar (l 1 ) is sufficient to generate the resolvent clause l n ∨ l 2 ∨ ... ∨ l n-2 ∨ l n-1 and the compensation clause l n ∨ l 2 ∨ ... ∨ l n-1 ∨ l 1 . Therefore, we deduce the wanted result in O(n) inference steps.

Example 6.8. We consider the same formula φ in Example 6.7. We represent in Figure 6.14 a Max-SAT resolution proof (without rewriting) of clause x 6 from φ. Notice how we use the following rearrangement x 6 ∧(x 6 ∨x 3 ) M axRes x 3 ∧(x 3 ∨x 6 ) to generate the substitute x 4 ∨x 3 . Furthermore, the tautological clause x 4 ∨ x 3 ∨ x 1 ∨ x 3 colored in green in Figure 6.13 and the rearrangement in which it is involved are not necessary since the last required substitute for x 1 , i.e x 4 ∨ x 1 ∨ x 3 is naturally generated by the preceding Max-SAT resolution step. Therefore, they can be deleted as is the case for the full adaptation without rewriting in Figure 6.14.

6 Bridging the Gap between SAT and Max-SAT Inference -6.3 From SAT Refutations to Max-SAT Resolution Refutations

x 5 ∨ x 4 x 5 ∨ x 4

x 4 x 4 ∨ x 2 ∨ x 6

x 2 ∨ x 6

x 3 ∨ x 6

x 2 ∨ x 3

x 2 ∨ x 6 ∨ x 3

x 4 ∨ x 6

x 4 ∨ x 2 ∨ x 6

x 4 ∨ x 6 ∨ x 3

x 4 ∨ x 3 x 4 ∨ x 1

x 1 ∨ x 3 Next, we discuss the implications of the equality * = used in the proof of Lemma 6.2, i.e., l ∨ A ∨B * = l ∨ A ∨ A ∨ B . This equality is sound for Max-SAT 5 . However, to avoid adding it as a standalone rule and as explained in the proof of Lemma 6.2, we can consider the addition of tautological clauses. This may also be required in case of unit clauses. It is important to note that the number of tautological clauses added to the formula in an adaptation of a crossing-free resolution derivation π is in O(s(π) × (w(π) + s(π))). A similar phenomenon was also noted in [START_REF] Buresh | The Complexity of Resolution Refinements[END_REF] for general and linear resolution 6 . In addition, notice how the adaptation may also rely on tautological compensation clauses which are generated by Max-SAT resolution. Such clauses are usually deleted or omitted in the literature [LH05a; BLM06; BLM07; LHG08] but they may carry important information which is necessary to infer substitutes for non read-once clauses.

x 4 ∨ x 1 ∨ x 3 x 4 ∨ x 1 ∨ x 3 x 1 ∨ x 3 x 3 x 6

From Crossing-Free Resolution Refutations to Max-SAT Resolution Refutations

In the previous sections, we established our result on any resolution derivation, i.e., not necessarily deducing the empty clause. In the following corollary, we project our results on 6 Bridging the Gap between SAT and Max-SAT Inference -6.4 On Diamond Patterns the specific case of crossing-free refutations. We also illustrate in Example 6.9 an adaptation of a crossing free resolution refutation into a Max-SAT resolution refutation.

Corollary 6.4. Let φ be an unsatisfiable CNF formula and π be a crossing-free resolution refutation of φ. We can deduce φ M axRes from φ in O(s(π) 3 ) inference steps.

Proof. Trivially entailed from Theorem 6.3 since w(π) = O(s(π)) for refutations. Example 6.9. We consider the unsatisfiable CNF formula φ = (x 1 ) ∧ (x 1 ∨ x 3 ) ∧ (x 1 ∨ x 2 ) ∧ (x 2 ∨ x 3 ) and the refutation π of φ represented in Figure 2.7. Clearly, π is crossing-free since there is only one non read-once clause, i.e., x 1 . In fact, π also corresponds to the ensuing derivation of x 1 and is its ensued clause, i.e., E D(x 1 ) = π and EC (x 1 ) = . Two possible adaptations of π are illustrated in Figure 6.15. The non read-once clause and its substitutes are colored in red. The possible adaptations correspond to different possible orderings of the proof. In the adaptation on the left, we consider that the resolution step on clauses x 1 ∨ x 1 and x 1 precedes the one on clauses x 1 and x 1 ∨ x 2 , and inversely for the adaptation on the right. Note that the adaptation on the left corresponds to the handmade example provided by Bonet et al. in [START_REF] Maria | A Complete Calculus for Max-SAT[END_REF][START_REF] Maria | Resolution for Max-SAT[END_REF] 7 and thus provides a theoretical understanding of why this handmade proof is valid through the lens of crossing-free resolution.

x 1 ∨ x 3 x 1 x 1 ∨ x 2 x 2 ∨ x 3 x 3 x 1 ∨ x 3 x 2 ∨ x 3 x 3 x 1 x 1 ∨ x 2 x 2 ∨ x 3 x 2 x 1 ∨ x 2 x 1 ∨ x 3 x 3 x 2 ∨ x 3 x 3 x 1 ∨ x 3

On Diamond Patterns

In this section, we study specific resolution refutations in order to determine the limits and/or features of the proposed adaptations in previous sections. In particular, we show that the adaptation proposed for unrestricted resolution in Corollary 6.2 has a worst case exponential blow-up in the size of the refutations. First, we introduce in the following 6 Bridging the Gap between SAT and Max-SAT Inference -6.4 On Diamond Patterns definition a new pattern which we will use to build such refutations. We can represent this pattern by a diamond as in Figure 6.17. Notice that the particular diamond pattern (x, y, ) is a resolution refutation. Furthermore, each diamond pattern π can be trivially adapted into a Max-SAT resolution proof of size |π| -1 as shown in Figure 6.18. Our aim is thus to simply use these patterns to theoretically evaluate and compare the proposed adaptations regarding specific resolution refutations. Definition 6.5 (Diamond). Let A be a disjunction of literals and let x ∉ v ar (A) and y ∉ v ar (A) two distinct variables. We define the diamond pattern (x, y, A) as the sequence of resolutions represented in Figure 6.16. Now, imagine that the topmost clause of a diamond pattern (x, y, ) is derived through another diamond pattern. We iterate the same reasoning to define below a k-stacked diamond pattern. Such a pattern can be represented as a stack of diamonds as shown in Figure 6.19 for k = 3. Clearly, k-stacked diamonds are resolution refutations as they deduce the empty clause . Definition 6.6 (k-Stacked Diamond). Let k ≥ 1 be a natural number and let x i and y i where 1 ≤ i ≤ k be distinct variables. A k-stacked diamond pattern is formed by k diamond patterns (x i , y i , A i ) where 1 ≤ i ≤ k as follows:

6 Bridging the Gap between SAT and Max-SAT Inference -6.4 On Diamond Patterns

• A 1 = and A i = (x 1 ∨ • • • ∨ x i -1 ) for 1 < i ≤ k • each diamond (x i , y i , A i ) is stacked on top of (x i -1 , y i -1 , A i -1 ) s.t. the last conclusion of the former is the topmost central premise of the latter Note that, when k > 2, a k-stacked diamond is not semi-tree-like. The size of a k-stacked diamond π is |π| = 3k. Furthermore, we have µ(π) = k -1. Therefore, after the application of the adaptation described in Theorem 6.2, we obtain a max-refutation whose size is at least 2 k-1 showing that the proposed adaptation for the unrestricted case can be exponential in the worst case. However, it is worth noting that if each diamond π d = (x, y, A) is considered independently, we can simply add a single split step on x ∨ A with respect to y and replace each resolution with a Max-SAT resolution to obtain a valid Max-SAT derivation of A of size |π d | + 1 as showcased in Figure 6.20. This is possible since each diamond can be considered as a regular tree resolution derivation of A in the spirit of Theorem 6.1. Finally, noticing that (k-stacked) diamond patterns fall within the crossing-free resolution fragment. We can adapt such proofs without increasing their size as showcased in Figure 6.21. This particular adaptation is entailed by the fact that each diamond is a crossing-free derivation and more specifically an ensuing derivation of a non read-once clause.

Certificates & Explanations for Max-SAT

In this section, we briefly describe other results which are detailed in [START_REF] Py | Inférence et certificats pour le problème de satisfiabilité maximum[END_REF]. We first present some results on certificate generation for Max-SAT. Indeed, our adaptations in Section 6.2 led to the introduction of the first independent proof builder for Max-SAT, called MS-Builder, which relies on successive calls to a SAT solver. Our work also extends to studying the inferential power of proof system for Max-SAT through the notion of explainability.

Certificates for Max-SAT

Our adaptations in Section 6.2 led to the introduction of the first independent proof builder for Max-SAT. This builder, called MS-Builder, generates certificates for the Max-SAT Problem in the particular form of a Max-SAT-equivalence-preserving transformation from the initial formula into a formula composed of a set of empty clauses and a satisfiable sub-formula, plus a model for this satisfiable sub-formula. Given an initial formula, the idea behind MS-Builder is to iteratively call a SAT oracle to get a resolution refutation which is first adapted into a max-refutation and then applied to the current formula. The builder halts when the SAT oracle returns that the current formula is satisfiable, in which case a model can be provided. The complete sequence of transformations which generates k empty clauses is a proof that the Max-SAT optimum is at least k while the the model ensures that it is possible to falsify exactly k clauses and, therefore, that the Max-SAT optimum k.

The proof builder can be also augmented with an additional preprocessing step before performing an adaptation. As resolution refutations are computed using SAT oracles, we can to fix non read-once unit clauses in the returned refutations when possible. Indeed, SAT algorithms rely heavily on UP8 which simply consists in propagating literals in unit clauses in the whole formula, because satisfying those literal is necessary to satisfy the formula. Applying unit propagation can be seen as the use of a particular unit clause in several resolution steps. Transforming resolution refutations to fix non-read-once unit clauses can therefore be a useful preprossessing technique. The soundness of such a mechanism is established in the following proposition. We also provide two examples illustrating Example 6.10. We consider the φ = (x 1 ) ∧ (x 1 ∨ x 3 ) ∧ (x 1 ∨ x 2 ) ∧ (x 2 ∨ x 3 ) and the resolution refutation of π represented in Figure 2.7. Note how the non-read-once unit clause C = x 1 can be fixed by the preprocessing described in Proposition 6.4. To this end, we simply need to delete the unit clause and prune the proof and then re-inject it at the end of the proof to deduce the empty clause. The resulting refutation after preprocessing is represented on the left in Figure 6.22. Since it is a read-once proof, it can be trivially adapted into the max-refutation represented on the right in the same figure.

x 1 ∨ x 3

x 1 x 1 ∨ x 2 x 2 ∨ x 3

x 1 ∨ x 3

x 1

x 1 ∨ x 3 x 1

x 1 ∨ x 2 x 2 ∨ x 3

x 1 ∨ x 3 x 1 ∨ x 2 ∨ x 3 x 1 ∨ x 2 ∨ x 3 x 1 Figure 6.22: Preprocessing proofs in MS-builder Example 6.11. We consider the formula φ = (x 1 ) ∧ (x 1 ∨ x 3 ) ∧ (x 1 ∨ x 2 )(x 2 ) ∧ (x 3 ) ∧ (x 2 ∨ x 3 ) passed to MS-Builder in standard WCNF format 9 . MS-Builder calls a SAT oracle for the first time which returns that the initial formula is unsatisfiable alongside a read-once refutation π represented on the left in Figure 6.23. π is then adapted into the max-refutation represented on the right in the same figure. After applying the max-refutation, we obtain the current formula φ = (x 1 ∨ x 3 ) ∧ (x 1 ) ∧ (x 1 ∨ x 2 ) ∧ (x 2 ∨ x 3 ) ∧ . MS-Builder calls the SAT oracle for the second time without including the empty clause. The formula is unsatifiable and the oracle returns the resolution refutation represented in Figure 2.7 which is preprocessed to fix the non-read-once unit clause and adapted as specified in Example 6.10. After applying 6 Bridging the Gap between SAT and Max-SAT Inference -6.5 Certificates & Explanations for Max-SAT the max-refutation, the current formula becomes φ = (x 1 ∨ x 2 ∨ x 3 ) ∧ (x 1 ∨ x 2 ∨ x 3 ) ∧ ∧ . MS-Builder calls a SAT oracle for the third and last time since it returns that the current formula without the empty clauses is satisfied by the assignment α = {x 1 , x 2 , x 3 }.

x 2 ∨ x 3 x 2 x 3

x 3

x 2 ∨ x 3 x 2 x 3

x 2 ∨ x 3

x 3 The proof builder is also coupled with an extendable proof checker, called MS-checker, which takes the CNF formula and a Max-SAT certificate as input. After reading the formula, it verifies that the proposed inference rules are correct and that the premises are still in the formula then applies the transformation. Finally, it checks if the truth assignment satisfies the final formula without considering the empty clauses. Both the builder and the checker were implemented in C++10 while the resolution refutations were computed using Booleforce11 . An experimental evaluation was conducted on the benchmarks of the unweighted and weighted complete tracks of the 2020 Max-SAT Evaluation12 . The unweighted (resp. weighted) benchmark consists of 576 (resp. 600) industrial and crafted instances. With a timeout set to 1 hour, MS-Builder has succeeded to construct full proofs for 163 unweighted (resp. 144 for weighted) instances over 576 (resp. 600). More interestingly, MS-Builder has succeeded to build at least half of the proofs, with respect to the optimum of the input formula, for 302 unweighted instances over 463 (resp. 326 weighted instances over 489) for which the optimum cost is known. We refer the reader to [START_REF] Py | Inférence et certificats pour le problème de satisfiabilité maximum[END_REF] for the detailed experimental evaluation.

Explanations for Max-SAT

Our work also extends to the study of the inferential power of Max-SAT proof systems. Hereafter, we succinctly describe the major results and the reader can refer to [START_REF] Py | Inférence et certificats pour le problème de satisfiabilité maximum[END_REF] for the detailed results and proofs. First, we introduce the notion of explainable clauses which intuitively represent information that can be deduced from a formula. If we exhibit an equivalence-preserving transformation π from φ to C ∧ φ , we say that π is an explanation of C in φ. Such proof is sufficient to certify that the wanted information, i.e., a clause, can be inferred soundly from the formula. We characterize explainable clauses in Theorem 6.4. Inferential completeness is strongly related to the notion of explanation. Naturally, a proof system is inferentially complete if it is possible to provide an explanation using its rules for every explainable clause. Recall that, as stated in Proposition 3.3, Max-SAT resolution is not inferentially complete. We will therefore use a new proof system for explanation, called 6 Bridging the Gap between SAT and Max-SAT Inference -6.5 Certificates & Explanations for Max-SAT the Explanation Calculus (ExC), composed of two rules: the symmetric cut rule13 and the expansion rule14 . The expansion rule is defined below and proved sound for Max-SAT and it can be intuitively considered as an extension of the weakening rule used in the context of SAT15 .

C CC 1 = A ∨ b 1 CC 2 = A ∨ b 1 ∨ b 2 ... CC k = A ∨ b 1 ∨ ... ∨ b k-1 ∨ b k C e = A ∨ B
where C e is the expanded clause and CC 1 , . . . ,CC k are compensation clauses.

Proposition 6.5. The expansion rule is sound for Max-SAT. Definition 6.9 (Explanation Calculus). The Explanation Calculus (ExC) is composed of two rules: symmetric cut and expansion. Proposition 6.6. ExC is inferentially complete.

We study the relation between ExC and other proof systems. It is important to note that we are interested in the notion of inference in the context of Max-SAT on a wider scope, i.e., we want to study the general inferential power of proof systems and compare them in this sense and not just focus on their refutational power. We prove that ExC i-p-simulates16 symmetric cut + split, Max-SAT resolution and ResS [START_REF] Larrosa | Towards a Better Understanding of (Partial Weighted) MaxSAT Proof Systems[END_REF]. Finally, we observe that it is possible to weaken Max-SAT resolution into the symmetric-cut without loosing any power if we add expansion. These results are summarized in Figure 6.24.

Next, we show that, given a CNF formula φ, we can exhibit an explanation containing O(2 |V ar (φ)| ) inference steps in ExC for any explainable clause C in φ. This result is established in Theorem 6.5 by showing that it is possible to reverse infer the wanted transformation starting from C instead of φ as specified in the characterization proved in Theorem 6.4. This result provides a better bound on the size of the proofs than the existing result saturation17 . We illustrate how to generate clause explanations in ExC in Example 6.12. Note that the notion of explainability as well as our results can be extended to formulas as detailed in [START_REF] Py | Inferring Clauses and Formulas in Max-SAT[END_REF][START_REF] Py | Inférence et certificats pour le problème de satisfiabilité maximum[END_REF]. Theorem 6.5. Let φ be a CNF formula and C be an explainable clause in φ. There exists an explanation of C in φ using ExC rules containing O(2 |v ar (φ)| ) inference steps. Example 6.12. We consider the CNF formula φ = (x 1 ∨ x 2 ) ∧ (x 1 ∨ x 2 ∨ x 3 ) ∧ (x 3 ) ∧ (x 1 ) and we want to explain C = x 1 . As showcased in the proof of Theorem 6.5, we can construct the explanation of C in ExC represented in Figure 6.25. Indeed, considering the variables in lexicographic order, since C is not subsumed by a clause in φ nor it is opposed to all the clauses, we thus try to explain x 1 ∨ x 2 and x 1 ∨ x 2 in φ. While the former is trivially explained since it is in the formula, the latter not subsumed by a clause nor opposed to all the clauses. Therefore, we need to explain the clauses x 1 ∨ x 2 ∨ x 3 and x 1 ∨ x 2 ∨ x 3 . The first clause is subsumed by x 3 and therefore it can be explained by expansion while the second one is in the formula and therefore is trivially explained. We conclude that φ (x 1 ∨ x 3 ) ∧ (x 1 ∨ x 2 ∨ x 3 ) ∧ (x 1 ) ∧ (x 1 ) by applying the transformation represented in Figure 6.25. Notice how the explanation is constructed from the bottom to the top starting from C . Furthermore, clauses (x 1 ∨ x 3 ) and (x 1 ∨x 2 ∨x 3 ) play the role of compensation clauses, essential to preserve Max-SAT equivalence.

Our result on clause explainability can also be used to build certificates for Max-SAT as established in Theorem 6.6. Intuitively, the idea is to iteratively try to explain the empty clause until it is no longer explainable in the current formula. By doing this, we iteratively infer as many empty clauses as the optimum of the initial formula. Finally, we mention that our results can be easily extended to weighted Max-SAT as detailed in [START_REF] Py | Inferring Clauses and Formulas in Max-SAT[END_REF][START_REF] Py | Inférence et certificats pour le problème de satisfiabilité maximum[END_REF].

6 Bridging the Gap between SAT and Max-SAT Inference -6.6 Conclusion & Future Work

x 3 x 1 ∨ x 3 x 1 ∨ x 2 ∨ x 3 x 1 ∨ x 2 ∨ x 3 x 1 ∨ x 2 ∨ x 3 x 1 ∨ x 2 x 1 ∨ x 2

Conclusion & Future Work

In this chapter, we tackled the open problem of adapting resolution refutations into proofs valid for Max-SAT. In particular, we proposed linear adaptations with respect to the size of the resolution refutations in the following cases: regular tree resolution, tree resolution and semi-tree resolution. These results are achieved by augmenting Max-SAT resolution with the split rule which enabled us to duplicate clauses by adding literals when necessary. We have also generalized our adaptation to unrestricted resolution refutations, even though the proposed transformation can produce a max-refutation whose size is exponential in the worst case. We also proposed a new class of resolution, called crossing-free resolution, for which an adaptation to Max-SAT resolution proofs is possible without a substantial increase in the size of the proofs. Furthermore, we relied on particular resolution proofs, called (k-stacked) diamond patterns to study the features and limits of our proposed adaptations specifically in the unrestricted case. Note that our results on proof adaptations also include the attempt in [START_REF] Py | Computing Max-SAT Refutations using SAT Oracles[END_REF][START_REF] Py | Max-réfutations et oracles SAT[END_REF] where we study adaptations from SAT proofs to Max-SAT proofs through the lens of SAT oracles, exploiting their ability to return resolution refutations, although we did not manage to provide formal guarantees on the resulting proofs in this case. Our results contribute to the difficult open problem of adapting resolution proofs to Max-SAT resolution proofs without increasing their size thus helping to bridge the gap between resolution for SAT and Max-SAT. Furthermore, unlike SAT solvers, Max-SAT solvers are still not able to output certificates in the form of Max-SAT equivalent proofs mainly due to the variety of solving paradigms and due to the theoretical gap between SAT and Max-SAT resolution. Our work has been useful in this regard as it led to the introduction of the first independent Max-SAT proof builder, able to compute certificates by relying on successive calls to a SAT oracle [START_REF] Py | A Proof Builder for Max-SAT[END_REF][START_REF] Py | Inférence et certificats pour le problème de satisfiabilité maximum[END_REF]. Our work also extends beyond the refutational power of proof systems for Max-SAT as our results on explainability provide further insights on the inferential power of proof systems for Max-SAT [PCH21d; Py21].

As future work, it would be interesting to characterize a larger intersection between SAT and Max-SAT resolution by proving that an adaptation of an extended refinement of resolution (ideally unrestricted resolution) is possible without a substantial increase in the size of the proofs. We could look into whether this can be achieved by augmenting Max-SAT resolution with other inference rules like the split rule. Overall, the existence of an adaptation that does not increase substantially the size of an unrestricted resolution proof remains an open question and it would be relevant to further investigate this topic either by exhibiting a polynomial adaptation or refuting its existence. Other prospects of our work include using the proposed adaptations in the context SAT-based algorithms for Max-SAT. For instance, it would be interesting to extend core-guided algorithms with our linear adaptations when deemed possible in the spirit of [START_REF] Heras | Read-Once Resolution for Unsatisfiability-Based Max-SAT Algorithms[END_REF]. Our proof builder could also benefit from more advanced processing techniques used in SAT-based solvers such as stratification 18 or from new techniques specifically devised for the builder such as extending the preprocessing mechanism in Proposition 6.4 to non-unit clauses.

Conclusion

Our work in this manuscript revolved around two major logic-based formalisms: the wellknown SAT problem and its natural optimization extension Max-SAT. Our contributions aimed to deepen our understanding of the power and limits of reasoning and inference and how to efficiently apply them in the context of the SAT and Max-SAT paradigms. Our first contribution involved the evaluation of different strategies which take advantage of the restart mechanism to combine two state-of-the-art heuristics, i.e., VSIDS and CHB. In particular, we proposed a reinforcement learning approach relying on a Multi-Armed Bandit (MAB) framework for adaptive branching in SAT. We used a reward function which evaluates the capacity of the heuristics to reach conflicts quickly and efficiently. Our results indicate that Upper Confidence Bound (UCB) strategies such as UCB1 and MOSS which conduct stochastic inference on the mean reward of each heuristic in the context of our MAB framework are able to achieve a considerable gain in terms of solved instances and solving time. Our work in this regard touches upon the major challenge of combining or finding a middle ground between symbolic and numeric AI, which are often seen as incompatible or opposed with one another. Recent works including ours in the context of SAT [CHT21a; CHT21b; CHT21d; CHT22a] and CSP [CHT20; CHT21c] suggest that there is an interest in applying techniques originating from non-symbolic AI and particularly reinforcement learning in combinatorial problem solving. It would be therefore interesting to further investigate this line of research by trying to apply similar frameworks to enhance the reasoning power of SAT solvers. One can target other components in modern solvers such as restarts, backtracking and clause-database management among others. It would be also relevant to investigate whether such frameworks can be incorporated both in BnB solvers and SAT based solvers for Max-SAT.

Our second contribution consisted in thoroughly investigating the power of inference in the context of Max-SAT BnB through the property of UP-resilience. We showed that this notion can help quantify the impact of Max-SAT resolution transformations of ISs on the SUP mechanism. Our observation on the direct impact of the order of application of Max-SAT resolution during the ISs transformation on its UP-resilience, led to a more in-depth understanding of the efficiency (or the lack thereof) of learning mechanisms used during LB estimation in the literature including the traditional patterns [LMP07; Li+10a] and the recently introduced UCS patterns [START_REF] Abramé | On the Extension of Learning for Max-SAT[END_REF]. In particular, we showed that, while the traditional three patterns are UP-resilient with respect to any order of application of Max-SAT resolution, the recently introduced UCS patterns are not necessarily UP-resilient. They are nevertheless UP resilient with respect to other newly introduced orders. Our results thus contribute to explain the limits of the current learning mechanisms and to shed the light on the recent empirical observations in [START_REF] Abramé | On the Extension of Learning for Max-SAT[END_REF]. To our best knowledge, this is the first work in which UP-resilience is used to theoretically characterize the transformations by Max-SAT resolution with respect to the possible orders of its application. Indeed, this can provide new insights on how to extend learning mechanisms used in Max-SAT BnB solvers. It would be relevant to study whether Max-SAT inference under the Max-SAT resolution rule can be efficiently incorporated in the recent BnB paradigm introduced in [Li+21a; Li+22a] either to further guide the exploration of the search or simply to preprocess the formula before the actual search. It would also be relevant to study whether similar learning mechanisms can be used in the context of SAT-based solvers and specifically those which already exploit Max-SAT resolution to transform cores returned by SAT solvers [START_REF] Heras | Read-Once Resolution for Unsatisfiability-Based Max-SAT Algorithms[END_REF][START_REF] Narodytska | Maximum Satisfiability Using Core-Guided MaxSAT Resolution[END_REF].

Our contributions also extend to the study of the refutational and inferential power of proof systems for Max-SAT and their relation with SAT inference. We particularly tackled an open problem since the introduction of Max-SAT resolution as a complete calculus for Max-SAT in [BLM06; BLM07] which consists in adapting resolution refutations into max-refutations of reasonable size. We proposed linear adaptations with respect to the size of the resolution refutations in the case of regular tree resolution, tree resolution and semi-tree resolution when Max-SAT resolution is augmented with the split rule. Moreover, we showed that an adaptation of general resolution refutations is possible but with a worst case exponential blow-up in the size of the proofs. We also proposed a new class of resolution, called crossing-free resolution, for which an adaptation using exclusively Max-SAT resolution is possible without a substantial increase in the size of the proofs. These results also helped to devise an independent proof builder for Max-SAT, called MS-Builder, which is able to compute certificates for Max-SAT by relying on successive calls to a SAT oracle. Our work also extends beyond the refutational power of proof systems for Max-SAT as we study the inferential power of Max-SAT proof systems through the notion of explainability. As future work, it would be interesting to characterize a larger intersection between SAT and Max-SAT resolution by proving that an adaptation of an extended refinement of resolution (ideally unrestricted resolution) is possible without a substantial increase in the size of the proofs. We could look into whether this can be achieved by augmenting Max-SAT resolution with other inference rules like the split rule. Overall, the existence of an adaptation that does not increase substantially the size of an unrestricted resolution proof remains an open question and it would be relevant to further investigate this topic either by exhibiting a polynomial adaptation or refuting its existence. Other prospects of our work include using the proposed adaptations in the context of SAT-based algorithms for Max-SAT. As mentioned above, increasing the knowledge on Max-SAT inference and particularly Max-SAT resolution can be used to extend and enhance the efficiency of SAT-based algorithms for Max-SAT. For instance, it would be interesting to extend core-guided algorithms with our linear adaptations when deemed efficient compared to cardinality encodings or simply in the spirit of [START_REF] Heras | Read-Once Resolution for Unsatisfiability-Based Max-SAT Algorithms[END_REF]. The proof builder could also benefit from more advanced mechanisms based on or inspired from SAT-based solvers for Max-SAT [START_REF] Bacchus | Maximum Satisfiabiliy[END_REF]. Finally, it would be relevant to extend some of our results on close problems such as Minimum Satisfiability (Min-SAT) [START_REF] Chu | Inference in MaxSAT and MinSAT[END_REF] or Constraint Optimization (COP) [START_REF]Handbook of constraint programming[END_REF].

5. 4

 4 Implication graphs corresponding to the possible propagation sequences for an IS matching the premise of pattern P 3 . . . . . . . . . . . . . . . . . . . . . . 5.5 Implication graphs corresponding to the possible propagation sequences for k b -UCSs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.6 Implication graphs corresponding to the possible propagation sequences of ψ and the application of Max-SAT resolution steps relatively to RPO . . . . . . 5.7 Implication graphs corresponding to the possible propagation sequences for k-UCSs with binary clauses except for the conflict clause . . . . . . . . . . . . 5.8 Application of Max-SAT resolution steps on the variables of the non binary clause C by induction on its size . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.9 Implication graphs corresponding to the possible propagation sequences of ψ in Example 5.2 and the application of Max-SAT resolution steps relatively to RPO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . List of Tables 1.1 Running times on a processor executing a million instructions per second with respect to increasing input size and running-time bounds . . . . . . . . . 30 1.2 Complexity of algorithms with respect to their asymptotic behavior . . . . . . 30 1.3 Truth tables of logical connectors . . . . . . . . . . . . . . . . . . . . . . . . . . 34 3.1 Iterative Search methods for Max-SAT . . . . . . . . . . . . . . . . . . . . . . . . 4.1 Comparison between VSIDS, CHB, the different strategies and the VBS in terms of the number of solved instances . . . . . . . . . . . . . . . . . . . . . . 4.2 Comparison between VSIDS, CHB, static and MAB strategies and the VBS in terms of the number of solved instances and cumulative solving time for instance families in the benchmark (Part 1) . . . . . . . . . . . . . . . . . . . . . 4.3 Comparison between VSIDS, CHB, static and MAB strategies and the VBS in terms of the number of solved instances and cumulative solving time for instance families in the benchmark (Part 2) . . . . . . . . . . . . . . . . . . . . .

Contents 1 . 1

 11 Computational Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 1.2 Algorithmics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 1.3 Computability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 1.4 Complexity Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 1.5 Propositional Logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 1.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

Figure 1

 1 Figure 1.1: A traceable (resp. non-traceable) graph G 1 (resp. G 2 ).

  there exists a polynomial time reduction from a problem π 1 to a problem π 2 , Definition 1.11 (NP-hardness). A decision problem π is NP-hard if ∀π ∈ NP , π ≤ p π. Definition 1.12 (NP-completeness). A decision problem π is NP-complete if π ∈ NP and is NP-hard. Example 1.10. The Hamiltonian path and cycle problems introduced in Example 1.2 are NP-complete [GJ79]. Proposition 1.2. Let π 1 and π 2 be two decision problems. If π 1 is NP-difficult and π 1 ≤ p π 2 then π 2 is NP-difficult. Finally, we must mention that the relation between some complexity classes are still not clearly established. For instance, one of the major open problems in computer science is the P vs NP problem 25 which consists in proving or disproving P=NP. Such a result would have many implications in complexity theory as showcased in Figure 1.2 and also in fields such as cryptography, artificial intelligence and philosophy among many others.

Figure 1 . 2 :

 12 Figure 1.2: Euler diagram on the implications of P = NP (left) and P=NP (right) 26

Algorithm 2 . 1 : 2 : 4 :

 2124 Davis-Putnam-Logemann-Loveland (DPLL) Algorithm Input: a CNF formula φ Output: Tr ue if φ is satisfiable, F al se otherwise 1: if ∈ φ then return F al se 3: if φ = then return Tr ue 5: if φ contains a unit clause or a pure literal l then 6:

Figure 2 . 1 :

 21 Figure 2.1: Search tree depicting the execution of the DPLL algorithm where branching is made in lexicographic order of the variables. Solid, dashed and dotted arrows represent respectively branching, propagation and backtracking. l @C denotes the propagation of literal l through the clause C .

Definition 2 . 6 (

 26 Implication Graph[START_REF] Marques-Silva | Search algorithms for satisfiability problems in combinational switching circuits[END_REF][START_REF] João | GRASP -a new search algorithm for satisfiability[END_REF]). Let φ be a CNF formula and α be a partial assignment falsifying a clause C ∈ φ. An implication graph G = (V, A) is a directed labeled acyclic graph where V = α ∪ {κ} and A ⊆ V × V × φ such that:• If a clause C ∈ φ lead to the propagation of literal l ∈ C then for each l ∈ C \ {l }, we have (l , l ,C ) ∈ A. Vertices corresponding to decisions have no predecessors.

Figure 2 . 2 :

 22 Figure 2.2: Implication graph representing assignments leading to the first conflict in Figure 2.1. Circled nodes represent literals assigned through branching. l @δ denotes the assignment of literal l at decision level δ. Dashed lines represent different cuts of the implication graph.

Figure 2 . 3 :

 23 Figure 2.3: Deducing the learnt clause through resolution in CDCL

x 4 Figure 2 . 4 :

 424 Figure 2.4: Search tree depicting the execution of the CDCL algorithm where branching is made in lexicographic order of the variables. Solid, dashed and dotted arrows represent respectively branching, propagation and backjumping. l @C denotes the propagation of literal l through the clause C .

Figure 2 . 5 :

 25 Figure 2.5: Behavior of the Head/Tail (left) and Watched Literals (right) lazy data structures [LM05]. Vertical solid and dashed arrows respectively represent current and saved references. @i denotes that the corresponding literal was the i t h assigned literal in the clause.

  39 http://minisat.se/SatELite.html 40 refer to Definition 2.7

2 . 3 :for j = 1 to maxSt eps do 4 :α satisfies φ then 5

 2345 Stochastic Local Search for SAT Input: a CNF formula φ, two natural numbers maxTr i es and maxSt eps Output: a satisfying assignment α of φ, UNKNOWN otherwise 1: for i = 1 to maxTr i es do 2: α ←-random complete assignment of φ 3: if

  and to generate random SAT instances in [GL15; GL16]. Other (C)VIG-based structural features studied in the literature include treewidth 49 , variable centrality [KS12; JM17; JM18], self-similarity 50 [Ans+14] and entropy 51 [ZXZ21].

Figure 2 . 6 :

 26 Figure 2.6: Community structure of industrial (left) and random (right) SAT instances [New+15]

t - 1 1Algorithm 2 . 4 :

 124 r t (a) n t(a) . Multi-Armed Bandit Framework Input: set of arms A, horizon T 1: for t = 1 to T do 2:

Algorithm 3. 1 :: repeat 4 :Example 3 . 2 .

 1432 Branch and Bound (BnB) for Max-SAT Input: a CNF formula φ Output: opt (φ) 1: U B ←-|φ| Upper Bound 2: α ← Assignment 3Appl y_I n f er ence(φ, α) Branching_Heuristic(φ, α) Branching 14: α ←-α ∪ {l } 15: until |α| = 0 16: return U B We consider the formula φ

Figure 3 . 1 :

 31 Figure 3.1: Search tree depicting the execution of a BnB algorithm for Max-SAT where branching is made in lexicographic order of the variables. Solid and dotted arrows represent respectively branching and backtracking.

  For instance, resolution [DP60; Rob65] and Unit Propagation (UP) [DP60; DLL62] are not valid for Max-SAT [BLM07; LMP05]. Hereafter, we start by presenting valid semantic rules for Max-SAT.

Definition 3 .

 3 11 (Max-SAT resolution [LH05a; BLM06; BLM07; LHG08]). Given two clauses C 1 = x ∨ A and C 2 = x ∨ B s.t. A = a 1 ∨ ... ∨ a s and B = b 1 ∨ ... ∨ b t , the Max-SAT resolution rule is defined as follows:

  and C ∈ ψ is reduced by l and propagates l }∪ {( C , l ,C ) | l ∈ α and C = {l } ∈ ψ}∪ {(l , ,C ) | l ∈ α and C ∈ ψ is falsified by α and l ∈ ψ} 3 Maximum Satisfiability -3.2 Algorithms

Figure 3 . 2 :

 32 Figure 3.2: Implication graph representing the SUP steps in Max-SAT BnB

Algorithm 3. 2 :

 2 Max-SAT resolution transformation of an IS in Max-SAT BnB Input: an IS ψ, an implication graph G of ψ Output: Θ(ψ, S) where S represent the reverse propagation order sequence 1: C 1 ← sr c G ( ) 2: while C 1 = do 3: l ← the last propagated literal in G 4:

Figure 3 . 3 :

 33 Figure 3.3: Max-SAT resolution transformation of an IS in Max-SAT BnB. Compensation clauses for each step are represented in boxes.

Figure 3 . 4 :

 34 Figure 3.4: Detection (left) and transformation (right) of a UCS in Max-SAT BnB. Compensation clauses are represented in boxes.

Figure 3 . 5 :

 35 Figure 3.5: Implication graphs corresponding to the possible propagation sequences of an IS

  21 more generally referred to as pseudo-boolean constraints 100 3 Maximum Satisfiability -3.2 Algorithms Algorithm 3.3: Augmenting a set of clauses with relaxation variables Input: a CNF formula φ Output: (R, φ R ) where R is the set of relaxation variables and φ R is the relaxed formula 1: for C ∈ φ do 2: r ←-new_v ar i abl e() φ \ {C } ∪ {C ∨ r } 5: return (R, φ) Definition 3.22 (Cardinality Constraint). Le R be a set of variables and k be a whole number. A cardinality constraint on R has the following form: r ∈R r ⊗ k where ⊗ ∈ {=, <, ≤, >, ≥} is a comparison operator. Notation 3.2. Given a cardinality constraint ζ, we denote C N F (ζ) an encoding of ζ in CNF form.

( 4 : 5 :cost ←-cmi n+cmax 2 6 : 6 : 4 :

 45664 C ,w)∈φ s.t w<∞ w C * r C ≤ cost where each soft clause C of weight w C is augmented with the relaxation variable r C . Major Max-SAT solvers in the literature which perform pure iterative search include Min-iSat+ [ES06a], Sat4j [BP10], QMaxSAT [Kos+12] and Pacose [PRB18]. Algorithm 3.4: Linear SAT-UNSAT (LSU) algorithm for Max-SAT Input: a CNF formula φ Output: opt (φ) 1: (R, φ) ←-Ad d _Rel axat i on_V ar i abl es(φ) 2: cost = |φ| 3: while S AT (φ ∪C N F ( r ∈R r ≤ cost )) do cost ←cost -1 5: end while 6: return cost + 1 Algorithm 3.5: Binary search algorithm for Max-SAT Input: a CNF formula φ Output: opt (φ) 1: (R, φ) ←-Ad d _Rel axat i on_V ar i abl es(φ) 2: cmi n = -1 3: cmax = |φ| + 1 4: while cmi n + 1 < cmax do if S AT (φ ∪C N F ( r ∈R r ≤ cost )) then Bit-based search algorithm for Max-SAT Input: a CNF formula φ Output: opt (φ) 1: (R, φ) ←-Ad d _Rel axat i on_V ar i abl es(φ) 2: k ←l og 2 |φ| 3: cost ←-0 while k ≥ 0 do 5:

Algorithm 3. 7 :

 7 Fu and Malik Algorithm Input: a partial CNF formula φ = H ∪ S Output: opt (φ) 1: cost ←-0 2: while Tr ue do 3:(sol ved , ψ) ←-S AT (H ∪ S)

Algorithm 3. 8 : 4 :sol ved then return cost 5 :

 845 PMRes Algorithm Input: a partial CNF formula φ = H ∪ S Output: opt (φ) 1: cost ←-0 2: while Tr ue do 3: (sol ved , ψ) ←-S AT (H ∪ S) if for C ∈ ψ ∩ S do 6: r ←-new_v ar i abl e()

r 4 ∨ r 5 r 4 ∨ r 5 ∨ r 6 r 5 ∨ r 6 Figure 3 . 6 :

 465636 Figure 3.6: Max-SAT resolution transformation of core in PMRes. Compensation clauses for each step are represented in boxes.

  History-based metaheuristics, such as Tabu Search and Configuration Checking (CC), were also adapted for Max-SAT [SHS03; BD05; Luo+15; CJS15; Luo+17a]. Different dynamic search techniques [HTH02; Cai+16; LC18; CL20; LC20] and adaptive search mechanisms [LH12; AM21] were similarly tailored for Max-SAT. Note that in the context of weighted (partial) Max-SAT, the weighted cost in Definition 3.6 can be used, although it is more common in recent SLS solvers to distinguish between soft and hard clauses by considering different cost functions and/or using different mechanisms favoring the satisfaction of hard clause [Cai+14; Luo+15; Luo+17a; Cai+16; LC18; CL20; LC20]. More recently, Zheng et al. proposed a Multi-Armed Bandit (MAB) framework in [Zhe+22] to help 3 Maximum Satisfiability -3.3 Proofs and Certificates for Max-SAT escape local optima by selecting a relevant arm within the set of soft clauses. Competitive SLS solvers for Max-SAT include CCLS [Luo+15], Dist [Cai+14; Cai+16] and SATLike [LC18; CL20] among others.

  refer to Definition 3.11 113 3 Maximum Satisfiability -3.3 Proofs and Certificates for Max-SAT This rewriting was introduced in [LHG08] as a recursive rule to transform the compensation clauses into CNF form. This also entails that the Max-SAT resolution rule depends on the ordering of the literals, as reported in [BLM07; LHG08]. Max-SAT resolution plays an important role in the context of Max-SAT theory and solving as it is extensively used and studied in the context of BnB algorithms for Max-SAT [LMP07; Küe12; AH14b; AH15a; AH15b; Abr15; CH19] and more marginally in the context of core-guided approaches [HM11; NB14] 39 . Definition 3.25 (Max-SAT Resolution [LH05a; BLM06; BLM07; LHG08]). Given two opposed clauses C 1 and C 2 , the Max-SAT resolution rule is defined as follows:

  B 1 & MOSS) in the context of our MAB framework, we consider the deterministic UCB family of strategies, namely the UCB1 4 Bandits for Adaptive Branching in SAT -4.4 Experimental Protocol and MOSS strategies presented in 2.4.2. Although these strategies have not been experimented upon in the context of SAT, they have shown promising results in the context of combinatorial problem solving and particularly the CSP problem [XY18; Wat+20; PW20; Kor+22].

4Figure 4 . 1 :Figure 4 . 2 :Figure 4 . 3 :

 414243 Figure 4.1: Number of solved instances as a function of execution time for VSIDS, CHB, static and MAB strategies and the VBS w.r.t the whole benchmark.

Figure 4 . 4 :Figure 4 . 5 :

 4445 Runtime comparison (in seconds) of UCB1 w.r.t. VSIDS (a), CHB (b) and VBS (c) in logarithmic scale. Runtime comparison (in seconds) of RR w.r.t. VSIDS (a), CHB (b) and VBS (c) in logarithmic scale.

Figure 4 . 6 :

 46 Runtime comparison (in seconds) of MOSS w.r.t. UCB1 (a) and RR (b) and of UCB1 w.r.t. RR (c) in logarithmic scale.

Figure 4 . 7 :Figure 4 . 8 :

 4748 Figure 4.7: Percentages of use of each arm in UCB1 w.r.t the whole benchmark. The instances are reported consecutively for each yearly benchmark (from 2018 to 2020) and are alphabetically ordered. For unsolved instances, the percentages of use at the timeout are provided.

Figure 4 . 9 :

 49 Figure 4.9: Main tack results of the 2021 SAT competition [Bal+21]

Proposition 5 . 1 .

 51 Let ψ an IS and S be a sequence of variables appearing in ψ. For any set of literals L appearing in ψ, if the transformation Θ(ψ, S) is UP-resilient for L then ∀N ∈ pnei g h(L) : ∈ N or ∀l ∈ L, l can be propagated in Θ(ψ, S)| N \{l } . Proof. We prove this property by induction on |L| = n: 1 for instance when ψ is not minimal 136 5 Understanding Inference in Max-SAT BnB -5.3 UP-Resilience and IS Transformation • If n = 1, then L = {l } and the property is verified.

Figure 5 . 1 :

 51 Figure 5.1: Implication graph corresponding to the Max-SAT resolution transformation of ψ with respect to SIR

Figure 5 . 2 :Proposition 5 . 3 .

 5253 Figure 5.2: Implication graphs corresponding to the possible propagation sequences for an IS containing the premises of pattern P 1

Figure 5 . 3 : 2 Proposition 5 . 4 .

 53254 Figure 5.3: Implication graphs corresponding to the possible propagation sequences for an IS containing the premises of pattern P 2

Figure 5 . 4 :

 54 Figure 5.4: Implication graphs corresponding to the possible propagation sequences for an IS matching the premise of pattern P 3

Lemma 5 . 1 .

 51 Let k ≥ 2 and ψ be a k-UCS whose clauses are binary except for the conflict clause of size s ≥ 2, recognized by the FUIP l in an implication graph G of an IS such that |succ(l )| = s. Then, there exists exactly s disjoint paths from l to in G.

Proposition 5 . 5 .

 55 Let k ≥ 2 and ψ be a k b -UCS recognized by the FUIP l in an implication graph G of an IS. Then, |succ(l )| = 2.

Corollary 5 . 1 .

 51 Let k ≥ 2 and ψ be a k b -UCS recognized by the FUIP l in an implication graph G of an IS. There exists exactly two disjoint paths from l to in G.

Definition 5 . 2 n 2 ,Theorem 5 . 1 . 2 n 2 ,

 5225122 1 (Path Resolvent Order). Let p 1 = 〈l , 〉 where n 1 , n 2 ≥ 1 denote two disjoint paths from l to . The Path Resolvent Order (PRO) of p 1 and p 2 is defined as follows: P RO(p 1 , p 2 ) = 〈v ar (l For any k ≥ 2, the transformation of a k b -UCSs with respect to PRO is UPresilient. Proof. Let k ≥ 2 and ψ be a k b -UCS recognized by the FUIP l in the implication graph G of an IS. By Corollary 5.1, we know that there are 2 disjoint paths from l to in G. Let p 1 = 〈l , l p 1 1 , ..., l p 1 n 1 , 〈(n 1 ≥ 0) and p 2 = 〈l , l p 2 1 , ..., l p 〉(n 2 ≥ 0) denote these paths in G where n 1 + n 2 = k -1. And, suppose w.l.o.g that l p 1 n 1 = l is the conflict literal, i.e., the last propagated literal. We have two possible propagation sequences whose implication graphs are G and G represented in Figure 5.5.

Figure 5 . 5 :

 55 Figure 5.5: Implication graphs corresponding to the possible propagation sequences for k b -UCSs.

2 n 2 ,Theorem 5 . 2 . 2 n 2 ,

 225222 True. Thus, We deduce that the transformation is UP-resilient for l p i j where 1 ≤ j ≤ n i ( j = n 1 ).We conclude that the transformation of ψ by Max-SAT resolution relatively to the order O is UP-resilient.Definition 5.2 (Path Resolvent Circular Order).Let p 1 = 〈l , 〉 where n 1 , n 2 ≥ 1) denote two disjoint paths from l to . The Path Resolvent Circular Order (PRCO) of p 1 and p 2 is defined as follows: P RCO(p 1 , p 2 ) = 〈v ar (l For any k ≥ 2, the transformation of k b -UCSs with respect to PRCO is UPresilient.Proof. Let k ≥ 2 and ψ be a k b -UCS recognized by the FUIP l in the implication graph G of an IS. By corollary 5.1, let p 1 = 〈l , 〉(n 1 ≥ 0) and p 2 = 〈l , 〉(n 2 ≥ 0) denote the two disjoint paths from l to in G where n 1 + n 2 = k -1. And, suppose w.l.o.g that l p 1

p 2 j -1 , l p 2 j 2 0 = l and l p 2 n 2 2 j

 222222 +1 } that doesn't contain the empty clause (we set l p +1 = l ). The Max-SAT resolution step on v ar (l p ) ( j = 1) is of the form:

p 2 j ∨ l p 2 j 2 j when l p 2 j 2 j 2 2 ∨ l p 2 1 2 1 2 2 2 j

 2222222222 -1 clearly ensures the propagation of literal l p -1 ∈ nei g h(l p ) is set to True since l is propagated by the unit resolvent clause {l }. Also, the clause C = l ∨ l p , generated by the Max-SAT resolution step on v ar (l p 2 2 ), clearly ensures the propagation of l p when its neighbors l , l p ∈ nei g h(l p 2 1 ) are set to True. Thus, the transformation is UP-resilient for l p where 1 ≤ j ≤ n 2 .

Figure 5 . 6 :

 56 Figure 5.6: Implication graphs corresponding to the possible propagation sequences of ψ and the application of Max-SAT resolution steps relatively to RPO

Theorem 5 . 3 .

 53 Let k ≥ 2 and ψ be a k-UCS whose clauses are binary except for the conflict clause C of size |C | = s ≥ 3, recognized by the FUIP l in the implication graph G of an IS such that |succ(l )| = s. The transformation of ψ with respect to MPRO is UP-resilient. Proof. We suppose w.l.o.g that C = {l 1 , ..., l s }. By Lemma 5.1, there are exactly s disjoint paths p 1 = 〈l , l p 1 1 , ..., l p 1 n 1 , 〉, ..., p s = 〈l , l p s 1 , ..., l p s n s , 〉 from l to in the implication graph G, represented in Figure 5.7, such that s i =1 n i = k -1 and l p i n i = l i for i ∈ {1, ..., s}. Other than G, there are exactly s-1 s = s possible implication graphs all similar to the graph G represented in Figure 5.7.

Figure 5 . 7 :

 57 Figure 5.7: Implication graphs corresponding to the possible propagation sequences for k-UCSs with binary clauses except for the conflict clause

  p i n i -1 ∨ l p i n i obtained by the application of Max-SAT 146 5 Understanding Inference in Max-SAT BnB -5.5 UP-Resilience and UCS Patterns resolution on v ar (l p i n i -1 ) ensures the propagation of l p i

  be a clause of size s + 1. The first Max-SAT resolution step is represented on the right in Figure5.8. The resolvent clause is l ∨ l 2 ∨ • • • ∨ l s+1 and if we consider C = l 2 ∨• • •∨l s+1 of size s we ensure by induction the propagation of any literal l i where 2 ≤ i ≤ s + 1 with respect to the neighborhoods {l , l j } for j ∈ {2, .., s + 1} \ {i }. Thus, each compensation clauseCC k = l ∨ l 1 ∨ l 2 ∨ • • • ∨ l k ∨ l k+1 } for k ∈ {1, ..., s} ensures the propagation of literal l 1 with respect to the neighborhood {l , l k+1 } since, by induction, the propagation of literals l 2 , ..., l k is ensured in the same neighborhood. Now, we prove by induction on k ∈ {1, ..., s} that the clause CC k ensures the propagation of l k+1 with respect to the neighborhood {l , l 1 }:* If k = 1, CC 1 = l ∨ l 1 ∨ l 2 clearlyensures the propagation of l 2 with respect to the neighborhood {l , l 1 }.* Suppose for 1 ≤ k < k ≤ s, CC k ensures the propagation of l k +1 with respect to the neighborhood {l , l 1 }. CC k = l ∨l 1 ∨l 2 ∨• • •∨l k ∨l k+1 clearly ensures the propagation of literal l k+1 with respect to the neighborhood {l , l 1 } since, by induction, the propagation of l 2 , ..., l k is ensured in the same neighborhood by the clauses CC 1 , ...,CC k-1 .

Corollary 5 . 4 .

 54 Let k ≥ 2 and ψ be a k-UCS whose clauses are binary except for a single clause C of size |C | = s ≥ 3 involved in the conflict, recognized by the FUIP l in the implication graph G of an IS such that succ(l ) = s. There exists a UP-resilient transformation of ψ. 5 Understanding Inference in Max-SAT BnB -5.5 UP-Resilience and UCS Patterns

v ar (l 1 )Figure 5 . 8 :

 158 Figure 5.8: Application of Max-SAT resolution steps on the variables of the non binary clause C by induction on its size

Lemma 6 . 1 .

 61 Given a non-read-once regular tree resolution refutation π and a non-readonce clause C in π, there exists a variable x ∉ v ar (C ) such that it is possible to partition the branches starting from C into two non-empty subsets of branches, the branches in the first subset accepting the substitution of C by C ∨ x and the branches in the second accepting the substitution of C by C ∨ x.

Figure 6 . 2 :

 62 Figure 6.2: Semi-tree-like resolution refutation

Figure 6 . 4 :

 64 Figure 6.4: Unrestricted resolution refutation

Figure 6 . 6 :

 66 Figure 6.6: Adapting an unrestricted resolution refutation to a max-refutation

Definition 6 . 3 (Example 6 . 4 .

 6364 Ensuing Derivation). Let φ be a CNF formula and π a resolution derivation of clause C from φ. The ensuing derivation of a non read-once clause C in π, denoted E D(C ), is the sub-derivation of π formed by all the resolution steps in the paths starting from C in π until their first junction node. We call the clause derived in the junction node, the ensued clause of C , denoted EC (C ). We consider the resolution derivation π represented in Figure6.7 of clause C = x 6 from the formula φ

Figure 6 . 7 :

 67 Figure 6.7: Ensuing derivations in a crossing-free resolution proof

Proposition 6 . 2 .

 62 Let A, B,C and {l } be four sets of literals s.t. |C | > 0. The following deductions can be done in O(|C |) inference steps: 6 Bridging the Gap between SAT and Max-SAT Inference -6.3 From SAT Refutations to Max-SAT Resolution Refutations(a) (A ∨C ) ∧ (B ∨C ) M axRes A ∨ B (b) (l ∨ A ∨C ) ∧ (l ∨ B ) M axRes A ∨ B ∨C (c) (l ∨ A ∨C ) ∧ (l ∨ B ∨C ) M axRes A ∨ B ∨CProof. We provide the proof for case (a) by induction on |C | = n:• If n = 1, then C = {l }. Clearly, (A ∨ l ) ∧ (B ∨ l ) M axRes A ∨ B by application of aMax-SAT resolution step on literal v ar (l ).• Suppose n > 1 and let l ∈ C . By the induction hypothesis, we can deduce(A ∨ C ) ∧ (B ∨ C \ {l }) M axRes A ∨ B ∨ l in n -1 inference steps. Furthermore, B ∨ C = (B ∨C \ {l })∧(B∨l ) by expansion and (A∨B ∨l )∧(B ∨l ) M axRes A∨B by application of a Max-SAT resolution step on variable v ar (l ). Therefore, we conclude that we can deduce (A ∨C ) ∧ (B ∨C )} M axRes A ∨ B in O(n) inference steps. Proofs for cases (b) and (c) are similar by induction on |C |.

Figure 6 . 9 :

 69 Figure 6.9: Dragging the non read-once clause while unfolding a read-once linear section of the proof. Solid lines represent the application of the Max-SAT resolution rule whereas dashed lines represent compaction or expansion. Unused compensation clauses are omitted.

Figure 6 .

 6 Figure 6.10: Inferring C l ∨ A ∨ B in a junction node of E D(C l ). Solid lines represent the application of the Max-SAT resolution rule, bold double arcs represent the application of Max-SAT resolution to delete opposed sets of literals and dashed lines represent compaction or expansion. Unused compensation clauses are omitted.

Figure 6 . 11 :

 611 Figure 6.11: Inferring C l ∨C in case A is empty in a junction node of E D(C l ). Solid lines represent the application of the Max-SAT resolution rule whereas dashed lines represent compaction and expansion. Unused compensation clauses are omitted.

Figure 6 .

 6 Figure 6.12: Inferring C l ∨ C in case A = B in a junction node of E D(C l ). Solid lines represent the application of the Max-SAT resolution rule whereas dashed lines represent compaction and expansion. Unused compensation clauses are omitted.

Figure 6 . 13 :

 613 Figure 6.13: Adaptation of a crossing-free resolution derivation. Solid lines represent the application of the Max-SAT resolution rule whereas dashed lines represent compaction and expansion. Unused compensation clauses are omitted.

Figure 6 . 14 :

 614 Figure 6.14: Adaptation of a crossing-free resolution proof to a Max-SAT resolution proof. Unused compensation clauses are omitted.

Figure 6 . 15 :

 615 Figure 6.15: Two possible adaptations of the crossing-free resolution refutation represented in Figure 2.7 depending on the ordering of the resolution steps involving the non-read-once clause x 1 . Unused compensation clauses are omitted.

Figure 6 . 16 :Figure 6 . 17 :Figure 6 . 18 :

 616617618 Figure 6.16: Diamond pattern (x, y, A)

Figure 6 . 19 :

 619 Figure 6.19: Simplified representation of a 3-stacked diamond pattern

Figure 6 . 20 :Figure 6 . 21 :

 620621 Figure 6.20: Adaptation of a diamond pattern as a regular tree resolution proof using the split rule

6Proposition 6 . 4 .

 64 Bridging the Gap between SAT and Max-SAT Inference -6.5 Certificates & Explanations for Max-SAT respectively the preprocessing mechanism and the generation of certificates by the proof builder. Let φ be an unsatisfiable CNF formula, π be a resolution refutation of φ and C be a non-read-once unit clause in π s.t. every path in π from C to contains no irregularity on v ar (C ). There exists a resolution refutation of φ such that C is read-once containing O(|π|) inference steps.Proof. We assume w.l.o.g. that C = x. Since every path in π from C to contains no irregularity on v ar (C ), we can delete the resolution steps on clause C and prune the refutation accordingly to deduce the clause C = x instead of . We can now add a resolution step on clauses C and C to get a resolution refutation of φ containing O(|P |) inference steps.

Figure 6 . 23 :

 623 Figure 6.23: Adaptation of a resolution refutation in MS-Builder

6

  Bridging the Gap between SAT and Max-SAT Inference -6.5 Certificates & Explanations for Maxs i m u l a t e [ B L 2 0 ] r -p -s i m u l a t e [ B L 2 0 ] symmetric cut + splitips i m u l a t eMax-SAT resolution r-p-simulate[START_REF] Bonet | Equivalence Between Systems Stronger Than Resolution[END_REF]

Figure 6 .

 6 Figure 6.24: Relationship between ExC and other proof systems

x 1 Figure 6 . 25 :Theorem 6 . 6 .

 162566 Figure 6.25: Explanation of clause C = x 1 in φ

  1.1 Algorithm for Primality Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1 Davis-Putnam-Logemann-Loveland (DPLL) Algorithm . . . . . . . . . . . . . 2.2 Conflict Driven Clause Learning (CDCL) Algorithm . . . . . . . . . . . . . . . . 2.3 Stochastic Local Search for SAT . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4 Multi-Armed Bandit Framework . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.5 -Greedy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.6 Thompson Sampling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.7 Exponential-Weight Algorithm for Exploration and Exploitation (EXP3) . . . . 2.8 Upper Confidence Bound (UCB1) . . . . . . . . . . . . . . . . . . . . . . . . . . 2.9 Minimax Optimal Strategy in the Stochastic Case . . . . . . . . . . . . . . . . .

3.1 Branch and Bound (BnB) for Max-SAT . . . . . . . . . . . . . . . . . . . . . . . . 3.2 Max-SAT resolution transformation of an IS in Max-SAT BnB . . . . . . . . . . 3.3 Augmenting a set of clauses with relaxation variables . . . . . . . . . . . . . . . 101 3.4 Linear SAT-UNSAT (LSU) algorithm for Max-SAT . . . . . . . . . . . . . . . . . 103 3.5 Binary search algorithm for Max-SAT . . . . . . . . . . . . . . . . . . . . . . . . 103 3.6 Bit-based search algorithm for Max-SAT . . . . . . . . . . . . . . . . . . . . . . 103 3.7 Fu and Malik Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 3.8 PMRes Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 3.9 Implicit Hitting Sets for Max-SAT . . . . . . . . . . . . . . . . . . . . . . . . . . . 110

  and l ∉ C }

	We	can	extend	this	notation	to	any	assignment	α	as	follows:

  ; DG84]. Similar cases, referred to as traceable classes, have been disclosed in the literature [Lew78; CH91; BHS94; Sch+95]. (Horn Formula). A Horn formula φ is a CNF formula s.t. each clause C ∈ φ is Horn, i.e., contains at most one positive literal.

	2 Satisfiability -2.2 Algorithms
	Definition 2.3 (k-Satisfiability). Let k be a natural number. The k-satisfiability (k-SAT)
	problem is defined as follows:
	k-SAT
	Input: a k-CNF formula φ
	Question: is φ satisfiable?
	Definition 2.4 Definition 2.5 (Horn-Satisfiability). Let k be a natural number. The Horn-satisfiability
	(Horn-SAT) problem is defined as follows:
	Horn-SAT
	Input: a Horn CNF formula φ
	Question: is φ satisfiable?

Definition 2.2 (k-CNF Formula).

Let k be a natural number. A k-CNF formula φ is a CNF formula s.t. each clause C ∈ φ contains at most k literals.

  The CDCL algorithm performs a similar search to DPLL by branching over the variables in the formula to enumerate all possible assignments. CDCL also relies on Unit Propagation (UP) as in DPLL to deduce information and prune the search space when possible. Furthermore, CDCL has one major additional feature compared to DPLL: clause learning.

	Modern complete SAT solver are mainly based on the Conflict Driven Clause Learning
	(CDCL) algorithm which is a refinement of the DPLL procedure [MLM09]. Notable CDCL
	solvers include GRASP [Mar95; SS96], (z)Chaff [Mos+01; Zha+01; MFM05], MiniSat 11 [ES03a],
	Glucose 12 [AS09a], Lingeling 13 [Bie10b], MapleSAT solver series 14 [Lia+16a; Lia+16b;
	Lia+16c], Cadical 15 [Bie17] and Kissat 16 [Bie+20] among many others [PD07b; Bie08b;
	SNC09a; Xia+19a].

end while 18: return True

	Algorithm 2.2: Conflict Driven Clause Learning (CDCL) Algorithm
	Input: a CNF formula φ
	Output: Tr ue if φ is satisfiable, F al se otherwise
	1: α ←-	Assignment
	2: δ ←-0	Decision Level
	3: while True do
	4:	if Unit_Propagation(φ, α) then	Inference
	5:	if δ = 0 then
	6:	return F al se
	7:	C , β ←-Analyze_Conflict(φ, α)	Analysis
	8:	φ ←-φ ∪ {C }	Learning
	9:	Backtrack(φ, α, β)	Backtracking
	10:	δ ←-β
	11:	else if |α| = |v ar (φ)| then
	12:	break
	13:	else
	14:	l ←-Branching_Heuristic(φ, α)	Branching
	15:	α ←-α ∪ {l }
	16:	δ ←-δ + 1
	17:

  2. 55 http://fmv.jku.at/booleforce/index.html 56 http://fmv.jku.at/tracecheck/index.html 57 https://www.cs.utexas.edu/~marijn/drup/ 58 https://www.cs.utexas.edu/~marijn/drat-trim/ Definition 2.29 (Read-Once Resolution [IM95]). A resolution proof is read-once if each clause is used at most once in the proof.

  with a clause D i from φ or with a clause C k for some k < i .

	Example 2.14. We consider the same unsatisfiable CNF formula φ in Example 2.13. The two
	resolution refutations of φ represented in Figure 2.7 are both linear since each deduced clause
	is used as premise in the next resolution step.

  , Auer et al. proved that -greedy can achieve logarithmic regret in T if is set as a decreasing sequence t parametrized by t ∈ {1, ..., T }. More specifically, if t = mi n{1, K (d 2 t ) }, then the regret can be bound by O( K .l n(T ) d 2 ) provided that 0 < d ≤ mi n µ∈{µ 1 ,...,µ K }, µ<µ * µ * -µ. Finally, note that other RL policies based on the -Greedy strategy were introduced in the literature including for different variations of MAB [Tok10; Tra+10; BBG12; GSL19].

	Algorithm 2.5: -Greedy

Input: set of arms

A, trial number t ∈ {1, . . . , T }, parameter ∈ [0, 1] Output: an arm a t ∈ A to use in the trial t 1: with probability do 2:

  term is similar to UCB1 while the right one, meant for exploration, additionally takes into account the number of arms and the number of executed trials. An important property of MOSS is its regret bound of O( K .T ) which is optimal for stochastic MAB [AB09] since a similar lower bound was proved by Lai and Robbins in[START_REF] Leung | Asymptotically efficient adaptive allocation rules[END_REF].

	). This strategy achieves a regret bound of O( K .T.l nT ). Many variations of this strategy were introduced in the literature for different MAB contexts and specifications [AMS09; Chu+11b; GC11; KCG12; Val+13; Bou+19]. One particular variation which we present next achieves optimal regret bound [AB09]. n t (a) l n max t K .n t (a) , 1 a t ←-a 3: else Select 4: a t ←-ar g max a∈A r t (a) + 4 n t (a) l n max t K .n t (a) , 1 5: return a t where the left 2: 2.4.3 Applications in SAT and Beyond

Algorithm 2.8: Upper Confidence Bound (UCB1) Input: set of arms A, trial number t ∈ {1, . . . , T } Output: an arm a t ∈ A to use in the trial t 1: if ∃a ∈ A s.t. n t (a) = 0 then Initialize 2: a t ←a 3: else Select 4: a t ←ar g max a∈A r t (a) + 4l n(t ) n t (a) 5: return a t Minimax Optimal Strategy in the Stochastic Case (MOSS) [AB09] This strategy, described in Algorithm 2.9, is a variation of UCB1 which selects the arm a ∈ A maximizing MOSS(a) defined as follows: MOSS(a) = r t (a) + 4 Algorithm 2.9: Minimax Optimal Strategy in the Stochastic Case Input: set of arms A, trial number t ∈ {1, . . . , T } Output: an arm a t ∈ A to use in the trial t Output: an arm a t ∈ A to use in the trial t 1: if ∃a ∈ A s.t. n t (a) = 0 then Initialize Reinforcement learning, particularly in the context of MAB, has many applications in various real-life domains such as healthcare, finance and telecommunication among others[BRA20]. In recent years, there has also been a surge of interest in applying reinforcement learning techniques in the context of combinatorial problems and particularly SAT solving [YP19; SB19; Kur+19; Kur+20; Vae+20]. However, very few research studies integrate MABbased or MAB-inspired techniques in the context of SAT. A recent example is the heuristic CHB [Lia+16a] and its variant LRB [Lia+16b], presented in Section 2.2.1.3.2, which are based on the Exoponentioal Recency Weighted Average (ERWA) [SB98]. Note that ERWA, which is used to update the variable scores in those heuristics, is used in non-stationary MAB problems to estimate the average rewards for each arm. Another more explicit application of MAB is the work of Lazaar et al. in

  Definition and Variants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 3.2 Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 3.2.1 Branch and Bound . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 Other Complete Approaches . . . . . . . . . . . . . . . . . . . . . . . . . 3.2.4 Beyond Complete Methods . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3 Proofs and Certificates for Max-SAT . . . . . . . . . . . . . . . . . . . . . . . . . Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

	Contents
	3.1

3.2.1.1 Outline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 3.2.1.2 Inference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 3.2.1.3 Lower Bound Estimation . . . . . . . . . . . . . . . . . . . . . . 91 3.2.1.4 Learning Schemes . . . . . . . . . . . . . . . . . . . . . . . . . . 95 3.2.1.5 UP-Resilience . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 3.2.2 SAT-Based Approaches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2.2.1 Iterative Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . 3.2.2.2 Core-Guided Algorithms . . . . . . . . . . . . . . . . . . . . . . 3.2.2.3 Implicit Hitting Set Approach . . . . . . . . . . . . . . . . . . . 3.2.3 3.3.1 Proof Systems for Max-SAT . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.2 Max-SAT Resolution Calculus . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.3 Weighted Max-SAT Resolution Calculus . . . . . . . . . . . . . . . . . . . 3.4

Table 3 .

 3 is a set of new relaxation variables. The execution of algorithms 3.4, 3.5 and 3.6 are summarized in Table3.1. The returned optimum value is opt (φ) = 2.

		LSU		Binary			Bit-Based
	cost SAT cost SAT (cmin,cmax) cost SAT (k,cost)
	6	True			(-1,7)			(2,0)
	...	True	3	True	(-1,3)	4	True	(1,2)
	2	True	1	False	(1,3)	2	False	(0,3)
	1	False	2	True	(2,3)	3	True	(-1,2)

1: Iterative Search methods for Max-SAT. The column SAT refers to the value returned by the oracle call on the formula φ r el axed ∪C N F ( r ∈R r ≤ cost ) (with a strict bound in Bit search), i.e., True if the formula is satisfiable and False otherwise. For the Binary and Bit-based algorithms we additionally specify the values of the receptive pairs (cmi n, cmax) and (k, cost ) at the beginning of each iteration in the main loop.

  d eci si ons t ) d eci d edV ar s t d eci si ons t and d eci d edV ar s t respectively denote the number of decisions and the number of variables fixed by branching in the run t . Consequently, the earlier conflicts are encountered in the search tree and the fewer variables are instantiated, the greater the assigned reward value will be for the corresponding heuristic. This reward function is closely related to the explored sub-tree measure introduced in [PW20].

Table 4 . 1 :

 41 Comparison between VSIDS, CHB, the different strategies and the VBS (over VSIDS and CHB) in terms of the number of solved instances in Kissat. For each row, the best results without considering the VBS are written in bold.

			VSIDS CHB RD D RD R	SS RR UCB1 MOSS VBS
	Competition 2018 (400 instances)	SAT UNSAT TOTAL	160 159 160 164 163 165 167 168 169 111 109 109 110 113 110 110 110 113 271 268 268 274 276 275 277 278 282
	Race 2019 (400 instances)	SAT UNSAT TOTAL	158 149 155 158 154 162 161 162 162 97 95 95 96 96 96 96 97 99 255 244 250 254 250 258 257 259 261
	Competition 2020 (400 instances)	SAT UNSAT TOTAL	131 146 146 151 147 152 154 156 157 121 119 117 120 118 120 120 122 123 252 265 263 271 265 272 274 278 280
	TOTAL (1,200 instances)	SAT UNSAT 329 323 321 326 327 326 326 329 335 449 454 461 473 464 479 482 486 488 TOTAL 778 777 782 799 791 805 808 815 823

randomly choose a heuristic among VSIDS and CHB respectively in each decision and in each restart. The average results (over 10 runs with different seeds) of RD D and RD R on the whole benchmark are reported in Table

4

.1 and indicate that RD R outperforms RD D

  doesn't contain the empty clause.

	Similarly, for l	p 2 n 2 , we have nei g h(l	p 2 n 2 ) = {l	p i n 2 -1 , l }. The Max-SAT resolution step on
	v ar (l

5

  Understanding Inference in Max-SAT BnB -5.5 UP-Resilience and UCS Patterns characterization established in Lemma 5.1. A clause involved in the conflict is either the falsified clause or contains the conflict literal, i.e., the last propagated literal. Unfortunately, although PRCO has the advantage of ensuring a linear input transformation, we couldn't generalize it to obtain the wanted result. Nevertheless, we managed to prove our result using a generalization of PRO to a multitude of paths. MPRO) of p 1 , ..., p s is defined inductively on s as follows:-If s = 2, M P RO(p 1 , p 2 ) = P RO(p 1 , p 2 )-Else M P RO(p 1 , ..., p s ) = P RO(〈l , M P RO(p 1 , ..., p s-1 ), 〉, p s ).

	Definition 5.3 (Multiple Path Resolvent Order). Let s ≥ 2 and p 1 = 〈l , l p 1 1 , ..., l p 1 n 1 , 〉, ..., p s = 〈l , l p 2 1 , ..., l p s n s , 〉 denote s disjoint paths from l to . The Multiple
	Path Resolvent Order (

  Definition 6.1 (Semi-Tree Resolution Refutation).A resolution refutation is semi-tree-like if, for any branch of the refutation, at most one clause is non-read-once. Given an unsatisfiable formula φ and a semi-tree resolution refutation π of φ, there exists a max-refutation of φ containing O(|π|) inference steps.

	Corollary 6.2.

Example 6.2. We consider the resolution refutation π in Figure

6

.2. π is clearly semi-tree-like since in each branch at most one clause is non-read-once. Note that π is not tree-like since (x 1 ) is an intermediate non-read-once clause. To adapt this semi-tree resolution refutation to a max-refutation, we put aside the top resolution on variable x 1 taking clauses (x 1 ∨ x 4 )

6

  Bridging the Gap between SAT and Max-SAT Inference -6.2 From SAT Refutations to Max-Refutations Definition 6.2. Let π be a resolution refutation. The number of multi-uses of intermediate non-read-once clauses, denoted µ(π), is defined as follows: Given an unsatisfiable formula φ and an unrestricted resolution refutation π of φ, there exists a max-refutation of φ with O(2 µ(π) × |π|) inference steps.Proof. Let π be a resolution refutation of φ. We iteratively make the intermediate nonread-once clauses read-once. Each time, we pick the first intermediate non-read-once clause C and duplicate the sub-proof deriving C exactly d + (C ) -1 times. Each iteration decrements the number of intermediate non-read-once clauses by 1 until the resolution refutation becomes tree-like. Clearly, for each duplication, the size of the proof is doubled in the worst case and we perform exactly µ(π) duplications. The size of the obtained tree resolution refutation π is thus bounded by O(2

	µ(π) =	(d + (C ) -1)
	C intermediate non-read-once in π
	where d + (C ) denotes the number of uses of the clause C , i.e., the number of outgoing arcs
	from C in the DAG representation of π.
	Theorem 6.2.

µ(π) × |π|). Then, using Theorem 6.1, we obtain a max-refutation of size O(2 µ(π) × |π|).

  6.8: Induction step to infer C i at the i t h step. Solid lines represent the application of the Max-SAT resolution rule whereas dashed lines represent compaction or expansion. Unused compensation clauses are omitted. can be trivially inferred by compaction. Furthermore, if D 1 is a unit clause, CC 1|1 is not generated. However, we can simply add the tautological clauses l

  .8 requires O(|B i |) Max-SAT resolution steps and, thus, every step in π is clearly adapted in O(w(π)) inference steps to generate C and C 1 ∨ C m . Therefore, we conclude that we can deduce φ M axRes C ∧ (C 1 ∨C

m ) in O(s(π).w(π)) inference steps.

  Definition 6.7 (Explainable Clause). Let φ be a CNF formula and C be a non-tautological clause, we say that C is explainable in φ if there exists a CNF formula φ such that φ ≡ C ∧ φ otherwise we say that C is unexplainable in φ. Let φ be a CNF formula and C be a non-tautological clause. C is explainable in φ if and only if ∃C ∈ φ such that C doesn't oppose C and ∀x ∉ v ar (C ), C ∨ x and C ∨ x are both explainable in φ. Definition 6.8 (Expansion). Given a clause C and a set of literals B = {b 1 , . . . , b k }, the expansion rule applied on C w.r.t B is defined as follows:

	Theorem 6.4.

results available on https://satcompetition.github.io/2021/

results available on https://satcompetition.github.io/2022/

in such case, we are dealing with a search variant of the optimization problem which may also be associated with a different third category of computational problems called search problems.

refer to Example 1.2

Muhammad IbnM ūsā Al-

refer to Example 1.1

The modulo (mod) operator returns the remainder of the Euclidean division of n by i . Therefore, checking if n mod i = 0 stands is equivalent to testing if i divides n.

occurs when δ is not defined on the current (state,symbol) pair

refer to Examples 1.1 and 1.5

More specifically, it is represented by its digits in the binary base which amount to s = l og 2 n +1 = O(l og n).

Richard ManningKarp (born in 1935)

one of the Millennium Prize problems selected by the Clay Mathematics Institute which are stated at https://www.claymath.org/millennium-problems

Preliminaries -1.5 Propositional Logic

Figure made by Behnam Esfahbod, available under the Creative Commons Licence Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0).

also referred to as Propositional/Boolean Satisfiability problem

https://satcompetition.github.io/

Other previous and current tracks include the no-limits track, the parallel track, the cloud track and the random track.

http://www.satcompetition.org/2009/format-benchmarks2009.html

Refer to Section 2.3 for solution certification

named after Martin Davis (born in 1928), Hilary Putnam (1926-2016), George Logemann (1938-2012) and Donald W. Loveland (born in 1934)

Satisfiability -2.2 Algorithms

We give a more detailed overview of resolution as a proof system for SAT in Section 2.3.

α = 1 and β = 2 in[START_REF] Buro | Report on a SAT competition[END_REF]

α = 1.5 in[START_REF] Dubois | SAT versus UNSAT[END_REF]

k has a fairly high value initially which can be decreased during the search in[START_REF] William | Improvements to propositional satisfiability search algorithms[END_REF] whereas it is fixed to 1024 in[START_REF] Crawford | Experimental results on the crossover point in random 3-SAT[END_REF][START_REF] Chu | Heuristics Based on Unit Propagation for Satisfiability Problems[END_REF].

The backbone of a satisfiable formula is the set of variables having the same truth value in every model [Mon+99; WGS03; Kil+05]. The reader can refer to Section 2.2.3 for more details on structural properties of SAT formulas.

Ternary clauses contain exactly three literals.

γ = 3.3 in[START_REF] Mijnders | Symbiosis of search and heuristics for random 3-SAT[END_REF]

often implemented as a binary heap[START_REF] Thomas | Introduction to Algorithms[END_REF]

f = 0.5 and m = 256 in Chaff

Although this variation is often credited to MiniSAT, it is largely inspired by the branching heuristic of the Berkmin solver which uses VSIDS as an auxiliary heuristic with a similar variation[START_REF] Goldberg | A Fast and Robust Sat-Solver, 2002 Design[END_REF].

m = 1 and f = 0.95 in MiniSat

the floating point number limit is used in MiniSat

https://www2.cs.sfu.ca/research/groups/CL/software/siege/

m = 8 in[START_REF] Ryan | Efficient algorithms for clause-learning SAT solvers[END_REF]

ERWA is originally used in the context of the Multi-Armed Bandit (MAB) problem which will be introduced in Section 2.4

f is set to 0.95 in[START_REF] Hui Liang | Learning Rate Based Branching Heuristic for SAT Solvers[END_REF] and the authors suggest performing the decays in batch, i.e., multiply the score of a variable a single time by f k after k conflicts where it remains unassigned instead of performing k multiplications.

f is set to 0.95 in[START_REF] Xiao | A branching heuristic for SAT solvers based on complete implication graphs[END_REF].

In Maple_LCM, the distance heuristic is only used in the 5 * 10 4 first conflicts.

The LBD of a learnt clause is the number of distinct decision levels of its literals. The reader can refer to Section 2.2.1.3.3 for more details.

or a combination of measures to break ties as in the latest versions of Glucose[START_REF] Audemard | On the glucose SAT solver[END_REF]

For instance, MiniSat 2.2.0 implements both geometric and Luby restarts with a default base cutoff value of 100 conflicts and an increase factor of 2 for the geometric sequence.

refer to Section 3

http://lcs.ios.ac.cn/~caisw/SAT.html

refer to Section 2.2.1.3.5 for processing techniques

Refer to Section 2.1

in contrast to weak backdoors which are restricted to satisfiable formulas

In parameterized complexity[START_REF] Rodney | Fundamentals of parameterized complexity[END_REF], a problem is called Fixed-Parameter Tractable (FPT) if there exists an algorithm deciding the problem in time f (k).n c where n is the input size, k is the parameter, f is a computable function and c is a constant.

also called primal graph

These graphs are weighted so as to ensure that the sum of weights of edges generated by a given clause always equals one.

This measure intuitively represents the closeness of a graph to a tree. Note however that the attempt in[START_REF] Mateescu | Treewidth in Industrial SAT Benchmarks[END_REF] was not successful as the authors concluded that the treewidth of the primal graph is not a good indicator for the hardness of SAT instances.

This feature intuitively means that rescaling a graph by replacing groups of nodes with single nodes does not change its structure.

This feature is closely related to the variable entropy measure in[START_REF] Cohen | The Impact of Entropy and Solution Density on Selected SAT Heuristics[END_REF].

The following definition is equivalent to Definition 1.17

Refer to Section 2.2.1.2

Intuitively, effective simulation corresponds to simulation modulo preprocessing, i.e., an initial encoding on the original formula.

also called pseudo-regret in the context of stochastic MAB

Satisfiability -2.4 Bandits for Satisfiability and Beyond

The reader can refer to the Handbook of Constraint Programming[START_REF]Handbook of constraint programming[END_REF] for a detailed overview of this problem which is closely related to SAT.

CNF formulas are represented as multisets of clauses in the context of Max-SAT

in which case returning the value |φ|-opt (φ) corresponds to an equivalent output of the original definition

The cost of an assignment cost α (φ) corresponds the number of clauses in φ falsified by α, as specified in Definition 2.11.

refer to Section 2.1

In particular, we may abuse the term weighted Max-SAT to refer to both weighted variants with or without infinite weights.

refer to Definition 2.10

A detailed overview of Max-SAT applications can be found in[START_REF] Bacchus | Maximum Satisfiabiliy[END_REF].

https://maxsat-evaluations.github.io/

refer to Example 1.4

refer to Section 3.2.4

refer to Section 2.2.1.3.2

clauses that contain exactly three literals

refer to Section 3 for soundness notions

refer to Section 2.2.1.1

We give a more detailed overview of Max-SAT resolution as a proof system in Section 3.3.

refer to Section 3.3.3

clause-learning techniques using rules described above during lower bound estimation will be accounted for in the following sections

refer to Section 2.2.1.2

refer to Definition 3.11

A similar algorithm, called WMSU1, was also introduced independently in[START_REF] Vasco | Algorithms for Weighted Boolean Optimization[END_REF].

http://sat.inesc-id.pt/open-wbo/

OLL was originally introduced in the context of Answer Set Programming (ASP)[And+12].

refer to Section 2.3

refer to Section 3.3.2 for more details.

refer to Definition 3.9

C can be considered as a soft clause in this step since hard clauses can be used as a premise in the Max-SAT resolution rule multiple times without being deleted. In the weighted case, this corresponds to the scission of an infinite weight clause to generate a clause of weight 1 using the unfold rule in Definition 3.13

Note that some of the mentioned techniques can also be applied in other SAT-based approaches.

These features are detailed in[START_REF] Nudelman | Understanding Random SAT: Beyond the Clauses-to-Variables Ratio[END_REF].

refer to Section 2.2.1.4

refer to Section 2.2.2.1 on SLS for SAT

refer to Section 3.2 for more details.

In PHP, the goal is to assign m + 1 pigeons to m holes without any pair of pigeons sharing their hole.

Data available on http://fmv.jku.at/kissat/

refer to Section 2.2.1.3.2

If an instance is solved by one heuristic, we report its results in the VBS. If both heuristics manage to solve an instance, we report the best result in the VBS. The VBS over VSIDS and CHB thus gives an estimate on the best performance that can be expected from a solver employing both heuristics.

Results and source code available on https://satcompetition.github.io/2021/.

Results and source code available on https://satcompetition.github.io/2022/.

We recall that this heuristic is an adaptation of the CHB heuristic in the context of CSP and similarly includes a step parameter as explained for CHB in Section 2.2.1.3.2.

refer to Section 3.2

refer to Section

3.2.1.5

Understanding Inference in Max-SAT BnB -5.5 UP-Resilience and UCS Patterns

Understanding Inference in Max-SAT BnB -5.6 Conclusion & Future Work

refer to Section 3.2.2

refer to Section 3.2

Refer to Section

3.3.2

Bridging the Gap between SAT and Max-SAT Inference -6.2 From SAT Refutations to

Bridging the Gap between SAT and Max-SAT Inference -6.3 From SAT Refutations to

refer to Section 3.3.2

c.f. Remark 13 in[START_REF] Larrosa | A logical approach to efficient Max-SAT solving[END_REF]

We similarly avoid the p-simulation terminology in this case although the definition can be relaxed to allow such a subtlety.

c.f. Example 1 in[START_REF] Maria | A Complete Calculus for Max-SAT[END_REF] or Example 3 in[START_REF] Maria | Resolution for Max-SAT[END_REF]

refer to Section 2.2.1

https://maxsat-evaluations.github.io/2022/rules.html

Source code available on https://pageperso.lis-lab.fr/matthieu.py/en/software.html

http://fmv.jku.at/booleforce/index.html

https://maxsat-evaluations.github.io/2020/

refer to Definition 3.12

Note that the expansion rule used here is different from the expansion rewriting used in Section 6.3.2.

refer toDefinition 2.22

refer to Definition 3.24

refer to Section 3.3.2

refer to Section 3.2.2.2

/ 12 https://www.labri.

Conflict History-Based (CHB) Heuristic [Lia+16a] This heuristic, implemented in

Contributions