58 research outputs found

    Combining clause learning and resolution for multimodal reasoning

    Get PDF
    Dissertação (mestrado)—Universidade de Brasília, Instituto de Ciências Exatas, Departamento de Ciência da Computação, 2019.Vários aspectos de sistemas computacionais complexos podem ser modelados utilizando linguagens lógicas, que permitem a caracterização de noções como probabilidades, pos- sibilidades, noções temporais, conhecimento e crenças [32, 37, 38, 64]. Lógicas modais, mais especificamente, têm sido amplamente estudadas em Ciência da Computação, pois possibilitam modelar de forma natural, por exemplo, noções de conhecimento e crença em sistemas multiagentes [16, 32, 64] e aspectos temporais na verificação formal de problemas relacionados a sistemas concorrentes e distribuídos [37, 38]. Apesar de sua simplicidade, linguagens modais são expressivas para raciocinar sobre relações entre diferentes contextos ou interpretações [15]. Uma vez que um sistema é especificado em uma linguagem lógica, é possível usar mé- todos de prova para verificar as propriedades desse sistema. Em geral, se I é o conjunto de fórmulas que representam a implementação e S é o conjunto que caracteriza a especi- ficação, o processo de verificação consiste em mostrar que é possível derivar os aspectos especificados em S a partir de I. Cada método de prova corresponde a um conjunto de regras de inferência acompanhado de uma metodologia de como lidar com as fórmulas. Geralmente, a literatura sobre um sistema de prova contém análises de melhor e pior casos. Também pode-se encontrar na literatura comparações entre diferentes métodos de prova para uma linguagem lógica específica. Para lógicas modais, por exemplo, uma aná- lise empírica de desempenho de quatro sistemas de prova diferentes pode ser encontrada em [42]. Ainda é possível combinar métodos de prova para se beneficiar do melhor cenário de cada método. Frequentemente, métodos de prova são projetados para serem implementados como provadores de teoremas automatizados, ou seja, aspectos relacionados à busca por uma prova também são considerados no projeto de um método de prova específico. Na lite- ratura, existem vários provadores de teoremas para lógicas modais [4, 67, 76, 77]. Neste trabalho, o foco é o provador de teoremas para a lógica multimodal básica Kn: KSP [61], que implementa o método baseado em resolução proposto em [60]. Kn é a linguagem que estende a lógica proposicional clássica com a adição dos operadores modais de necessidade, denotado por a , e de possibilidade, denotado por ♦a , ambos indexados por um agente a. v A semântica dos operatores é dada por “é necessário do ponto de vista do agente a” e “é possível do ponto de vista do agente a”, respectivamente. O KSP traduz as fórmulas de entrada para uma forma normal clausal na qual cláusulas são rotuladas pelo nível modal em que ocorrem, ajudando a restringir aplicações desneces- sários das regras de inferência do cálculo que o KSP implementa. Para reduzir o espaço de busca para uma prova, vários refinamentos e estratégias de simplificação são implemen- tadas como parte do provador KSP. Para obter o melhor desempenho para uma fórmula específica, ou classe de fórmulas, é importante escolher as estratégias e otimizações mais adequadas. De acordo com [61], o KSP apresenta um ótimo desempenho se o conjunto de símbolos proposicionais for uniformemente distribuído pelos níveis modais. No entanto, quando há um grande número de símbolos proposicionais em apenas um nível específico, a eficiência diminui. A razão é que a tradução para a forma normal usada sempre gera conjuntos satisfatíveis de cláusulas proposicionais, ou seja, cláusulas sem operadores modais. Como resolução depende da saturação do conjunto de cláusulas, isso pode custar muito tempo. Este trabalho contribui para o KSP com a implementação de uma opção adicional à lista de estratégias disponíveis do provador. O objetivo dessa nova opção é tentar reduzir o tempo que o KSP gasta saturando o conjunto de cláusulas, e, possivelmente, aumentar a velocidade na qual as regras de inferência que lidam com o raciocínio modal podem ser aplicadas. Portanto, a contribuição deste trabalho consiste, principalmente, na adição de duas novas regras ao cálculo implementado pelo KSP. Um dos resultados apresentados é a demonstração de que as regras são corretas e a adição de ambas não interfere na completude do provador. Nossa implementação utiliza um provador de satisfatibilidade booleana baseado em aprendizagem de cláusulas conduzida por análise de conflitos (CDCL SAT solver). O problema de satisfatibilidade booleana (SAT) é o problema de determinar se existe al- guma valoração para as variáveis de uma fórmula proposicional que torne esta fórmula verdadeira. Provadores para este problema (SAT solvers) são em geral conhecidos por serem muito eficientes. Esses provadores comumente são capazes de resolver problemas considerados difíceis, com mais de um milhão de variáveis e milhões de restrições [35]. Uma das principais razões para o amplo uso de SAT em muitas aplicações é que os CDCL SAT solvers são muito eficientes na prática [35]. A principal idéia por trás da aprendiza- gem de cláusulas implementada nesses solvers é adicionar as causas de um dado conflito, derivado de atribuições parciais de valores de verdade a símbolos proposicionais, como cláusulas aprendidas. Então essas informações são usadas para podar a árvore de busca por uma valoração satisfatível em diferentes partes. vi Competições anuais também influenciaram o desenvolvimento de implementações in- teligentes e eficientes dos provadores baseados em SAT, como Chaff [56], MiniSat [73] e Glucose [5]. Essas competições permitem que muitas técnicas sejam exploradas e criam uma extensa coleção de instâncias de problemas do mundo real e problemas projetados como desafiadores, formando um grande banco referência de casos de teste [35]. Além da análise de conflitos, os provadores modernos incluem técnicas como estruturas de dados com avaliação preguiçosa, reinicializações de busca, heurísticas de ramificação controlada por conflitos e estratégias de exclusão de cláusulas [14]. Em 2005, mais especificamente, Sörensson e Een desenvolveram um provador SAT com minimização de cláusulas de con- flito, chamado MiniSat [73], que permaneceu por um tempo como o SAT solver do estado da arte. O MiniSat é um provador popular, com um desempenho surpreendente, que implementa de forma sucinta muitas heurísticas conhecidas. Ele ganhou vários prêmios na competição SAT 2005 e tem a vantagem de ser código aberto. Mantém até hoje sua importância como uma ferramenta usada como parte integrada de diferentes siste- mas [26, 27, 28, 75]. Aproveitamos os esforços teóricos e práticos que foram direcionados em melhorar a eficiência de tais provadores para ajudar a acelerar o processo de saturação dentro dos procedimentos já implementados no KSP. Nossa implementação modifica o provador KSP para realizar uma chamada externa ao MiniSat. O provador modificado pode ser encontrado em [1]. A idéia principal por trás dessa combinação é criar uma consulta para o SAT solver contendo cláusulas especiais criadas a partir de cada nível modal. Se o provador baseado em CDCL aprender uma ou mais cláusulas pelo procedimento de análise de conflitos, adicionamos-as ao conjunto de cláusulas proposicionais da respectiva instância do KSP, pois sabemos que essas cláusulas aprendidas são consequências do conjunto que passamos ao MiniSat. Além disso, se o MiniSat concluir que o conjunto dado como entrada é insatisfatível, também aprendemos uma cláusula que, por construção, deve ser uma das premissas das regras de inferência que lidam com raciocínio modal. Aprendendo esta cláusula, nossa hipótese é que a aplicação dessas regras será possível sem que o KSP dependa da saturação do conjunto de cláusulas proposicionais. A combinação implementada foi testada com três grandes bancos de problemas clás- sicos, LWB [11], MQBF [43, 53] e 3CNF [53], em um Ubuntu 18.04 com um processador Intel i7 e 16 GB de memória. Assim como o KSP sozinho, nossa combinação não conseguiu resolver nenhuma instância dos problemas pertecentes ao 3CNF no limite de tempo de 20 minutos. Para os demais bancos, o limite de tempo dado foi de 100 segundos. Os resul- tados experimentais de nossa implementação executando com os bancos MQBF e LWB não apresentaram, em geral, um ganho em tempo de execução, provavelmente devido à sobrecarga que inserimos com a chamada ao MiniSat. vii Entretanto, nossa implementação foi capaz de avançar o KSP na resolução de entradas insatisfatíveis de uma das famílias mais difíceis do banco LWB. Essa família corresponde ao princípio da casa dos pombos estabelecido como fórmulas em Kn. Essas fórmulas são projetadas com um grande número de símbolos proposicionais distribuídos em um máximo de dois níveis modais, o que representa exatamente o cenário para o qual desejávamos me- lhorar a eficiência do KSP. O provador sozinho é capaz de resolver cinco instâncias dessa família, enquanto nossa combinação conseguiu resolver até a nona entrada. Outros pro- vadores na literatura também apresentam grande dificuldade em resolver instâncias dessa família [61]. Além disso, a execução do KSP combinado com o MiniSat para essas entra- das em particular mostrou que o uso do MiniSat permitiu uma diminuição significativa no número de inferências necessárias para que o KSP encontrasse uma prova. Isso é re- levante quando consideramos uso de memória como parâmetro de eficiência. Este último resultado indica que nossa combinação teve um impacto positivo na execução do KSP. Acreditamos que um refinamento nas mudanças implementadas no provador, buscando um meio termo entre a sobrecarga da chamada ao MiniSat e minimizar o número de inferências feitas, poderia levar a resultados ainda melhores.Conselho Nacional de Desenvolvimento Científico e Tecnológico (CAPES).Modal logics have been widely studied in Computer Science for allowing the character- isation of complex systems that express notions in terms of knowledge, belief etc. In this work, we focus on the theorem prover for the basic multimodal language Kn: KSP, which implements a clausal resolution method. Clauses are labelled by the modal level at which they occur, helping to restrict unnecessary applications of the resolution inference rules. KSP performs well if the set of propositional symbols are uniformly distributed over the modal levels. However, when there is a high number of variables in just one particular level, the performance deteriorates. One reason is that the specific normal form we use al- ways generates satisfiable sets of propositional clauses. As resolution relies on saturation, this can be very time consuming. Our work contributes to KSP with the implementation of an additional option to the list of available strategies. This option attempts to reduce the time KSP spends during saturation, or even to increase the rate in which inference rules that deal with modal reasoning can be applied. We modified KSP to externally call MiniSat, a popular SAT solver based on clause learning. The output from MiniSat, as well as the clauses it might learn in the proof search, gives us important information about the set of clauses at each modal level. Although the proposed combination did not improve KSP performance in average, it allowed KSP to solve more instances of the ph family than before. This is one of the hardest families of the LWB benchmark, which corresponds to the pigeonhole principle established as a formula in Kn

    CadiBack: Extracting Backbones with CaDiCaL

    Get PDF
    The backbone of a satisfiable formula is the set of literals that are true in all its satisfying assignments. Backbone computation can improve a wide range of SAT-based applications, such as verification, fault localization and product configuration. In this tool paper, we introduce a new backbone extraction tool called CadiBack. It takes advantage of unique features available in our state-of-the-art SAT solver CaDiCaL including transparent inprocessing and single clause assumptions, which have not been evaluated in this context before. In addition, CaDiCaL is enhanced with an improved algorithm to support model rotation by utilizing watched literal data structures. In our comprehensive experiments with a large number of benchmarks, CadiBack solves 60% more instances than the state-of-the-art backbone extraction tool MiniBones. Our tool is thoroughly tested with fuzzing, internal correctness checking and cross-checking on a large benchmark set. It is publicly available as open source, well documented and easy to extend

    Improving Model Finding for Integrated Quantitative-qualitative Spatial Reasoning With First-order Logic Ontologies

    Get PDF
    Many spatial standards are developed to harmonize the semantics and specifications of GIS data and for sophisticated reasoning. All these standards include some types of simple and complex geometric features, and some of them incorporate simple mereotopological relations. But the relations as used in these standards, only allow the extraction of qualitative information from geometric data and lack formal semantics that link geometric representations with mereotopological or other qualitative relations. This impedes integrated reasoning over qualitative data obtained from geometric sources and “native” topological information – for example as provided from textual sources where precise locations or spatial extents are unknown or unknowable. To address this issue, the first contribution in this dissertation is a first-order logical ontology that treats geometric features (e.g. polylines, polygons) and relations between them as specializations of more general types of features (e.g. any kind of 2D or 1D features) and mereotopological relations between them. Key to this endeavor is the use of a multidimensional theory of space wherein, unlike traditional logical theories of mereotopology (like RCC), spatial entities of different dimensions can co-exist and be related. However terminating or tractable reasoning with such an expressive ontology and potentially large amounts of data is a challenging AI problem. Model finding tools used to verify FOL ontologies with data usually employ a SAT solver to determine the satisfiability of the propositional instantiations (SAT problems) of the ontology. These solvers often experience scalability issues with increasing number of objects and size and complexity of the ontology, limiting its use to ontologies with small signatures and building small models with less than 20 objects. To investigate how an ontology influences the size of its SAT translation and consequently the model finder’s performance, we develop a formalization of FOL ontologies with data. We theoretically identify parameters of an ontology that significantly contribute to the dramatic growth in size of the SAT problem. The search space of the SAT problem is exponential in the signature of the ontology (the number of predicates in the axiomatization and any additional predicates from skolemization) and the number of distinct objects in the model. Axiomatizations that contain many definitions lead to large number of SAT propositional clauses. This is from the conversion of biconditionals to clausal form. We therefore postulate that optional definitions are ideal sentences that can be eliminated from an ontology to boost model finder’s performance. We then formalize optional definition elimination (ODE) as an FOL ontology preprocessing step and test the simplification on a set of spatial benchmark problems to generate smaller SAT problems (with fewer clauses and variables) without changing the satisfiability and semantic meaning of the problem. We experimentally demonstrate that the reduction in SAT problem size also leads to improved model finding with state-of-the-art model finders, with speedups of 10-99%. Altogether, this dissertation improves spatial reasoning capabilities using FOL ontologies – in terms of a formal framework for integrated qualitative-geometric reasoning, and specific ontology preprocessing steps that can be built into automated reasoners to achieve better speedups in model finding times, and scalability with moderately-sized datasets

    Effective SAT solving

    Get PDF
    A growing number of problem domains are successfully being tackled by SAT solvers. This thesis contributes to that trend by pushing the state-of-the-art of core SAT algorithms and their implementation, but also in several important application areas. It consists of five papers: the first details the implementation of the SAT solver MiniSat and the other four papers discuss specific issues related to different application domains. In the first paper, catering to the trend of extending and adapting SAT solvers, we present a detailed description of MiniSat, a SAT solver designed for that particular purpose. The description additionally bridges a gap between theory and practice, serving as a tutorial on modern SAT solving algorithms. Among other things, we describe how to solve a series of related SAT problems efficiently, called incremental SAT solving. For finding finite first order models the MACE-style method that is based on SAT solving is well-known. In the second paper we improve the basic method with several techniques that can be loosely classified as either transformations that make the reduction to SAT result in fewer clauses or techniques that are designed to speed up the search of the SAT solver. The resulting tool, called Paradox, won the SAT/Models division of the CASC competition in 2003 and has not been beaten since by a single general purpose model finding tool. In the last decade the interest in methods for safety property verification that are based on SAT solving has been steadily growing. One example of such a method is temporal induction. The method requires a sequence of increasingly stronger induction proofs to be performed. In the third paper we show how this sequence of proofs can be solved efficiently using incremental SAT solving. The last two papers consider two frequently occurring types of encodings: (1) the problem of encoding circuits into CNF, and (2) encoding 0-1 integer linear programming into CNF and how to use incremental SAT to solve the intended ptimization problem. There are several encoding patterns that occur over and over again in this thesis but also elsewhere. The most noteworthy are: incremental SAT, lazy encoding of constraints, and bit-wise encoding of arithmetic influenced by hardware designs for adders and multipliers. The general conclusion is: deploying SAT solvers effectively requires implementations that are efficient, yet easily adaptable to specific application needs. Moreover, to get the best results, it is worth spending effort to make sure that one uses the best codings possible for an application. However, it is important to note that this is not absolutely necessary. For some applications naive problem codings work just fine which is indeed part of the appeal of using SAT solving

    Resolution-based methods for linear temporal reasoning

    Get PDF
    The aim of this thesis is to explore the potential of resolution-based methods for linear temporal reasoning. On the abstract level, this means to develop new algorithms for automated reasoning about properties of systems which evolve in time. More concretely, we will: 1) show how to adapt the superposition framework to proving theorems in propositional Linear Temporal Logic (LTL), 2) use a connection between superposition and the CDCL calculus of modern SAT solvers to come up with an efficient LTL prover, 3) specialize the previous to reachability properties and discover a close connection to Property Directed Reachability (PDR), an algorithm recently developed for model checking of hardware circuits, 4) further improve PDR by providing a new technique for enhancing clause propagation phase of the algorithm, and 5) adapt PDR to automated planning by replacing the SAT solver inside with a planning-specific procedure. We implemented the proposed ideas and provide experimental results which demonstrate their practical potential on representative benchmark sets. Our system LS4 is shown to be the strongest LTL prover currently publicly available. The mentioned enhancement of PDR substantially improves the performance of our implementation of the algorithm for hardware model checking in the multi-property setting. It is expected that other implementations would benefit from it in an analogous way. Finally, our planner PDRplan has been compared with the state-of-the-art planners on the benchmarks from the International Planning Competition with very promising results.Das Ziel dieser Doktorarbeit ist es, das Potential resolutionsbasierter Methoden zur linearer, temporaler Beweisführung zu untersuchen. Von einem abstrakten Gesichtspunkt aus gesehen bedeutet dies, neue Algorithmen über die Eigenschaften von sich zeitlich entwicklenden Systemen im Bereich des automatischen Theorembeweisens zu entwickeln. Konkreter gesagt werden wir 1) aufzeigen, wie sich das Rahmenprogramm der Superposition so anpassen lässt, damit es Theoreme in propositionaler Linear Temporal Logic (LTL) beweist, 2) eine Verbindung zwischen der Superposition und dem CDCL-Kalkül moderner SAT-Solver nutzen, um mit einem effizienten LTL-Prover aufzuwarten, 3) das Vorangegangene auf Erreichbarkeitseigenschaften spezialisieren, und eine starke Verbindung zu der Property Directed Reachability (PDR), einem jüngst eintwickeltem Model-Checking-Algorithmus für Hardware-Schaltkreise, aufzudecken, 4) PDR durch die Einführung neuer Technik verbessern, die die Clause-Propagation-Phase des Algorithmus beschleunigt, und 5) PDR für das automatisierte Planen anpassen, indem wir den inneren SAT-Solver durch eine planungsspezifische Prozedur ersetzen. Wir haben die vorgeschlagenen Ideen implementiert, und es werden experimentelle Ergebnisse angegeben, die das praktische Potential dieser Ideen auf repräsentativen Benchmarks aufzeigt. Es hat sich herausgestellt, dass unser System LS4 der staerkste öffentlich zugängliche LTL-Prover ist. Die erwähnte Erweiterung von PDR verbessern die Leistungsfähigkeit unserer Implementierung des Hardware-Model-Checking-Algorithmus substantiell im Bereich der Multi-Property-Einstellungen. Wir erwarten, dass andere Implementierungen in ähnlicher Weise profitieren würden. Schließlich haben wir viel versprechende Ergebnisse durch den Vergleich unser Planer PDRplan mit anderen state-of-the-art Planer auf den Benchmarks der International Planning Competition erzielt

    Certifying Correctness for Combinatorial Algorithms : by Using Pseudo-Boolean Reasoning

    Get PDF
    Over the last decades, dramatic improvements in combinatorialoptimisation algorithms have significantly impacted artificialintelligence, operations research, and other areas. These advances,however, are achieved through highly sophisticated algorithms that aredifficult to verify and prone to implementation errors that can causeincorrect results. A promising approach to detect wrong results is touse certifying algorithms that produce not only the desired output butalso a certificate or proof of correctness of the output. An externaltool can then verify the proof to determine that the given answer isvalid. In the Boolean satisfiability (SAT) community, this concept iswell established in the form of proof logging, which has become thestandard solution for generating trustworthy outputs. The problem isthat there are still some SAT solving techniques for which prooflogging is challenging and not yet used in practice. Additionally,there are many formalisms more expressive than SAT, such as constraintprogramming, various graph problems and maximum satisfiability(MaxSAT), for which efficient proof logging is out of reach forstate-of-the-art techniques.This work develops a new proof system building on the cutting planesproof system and operating on pseudo-Boolean constraints (0-1 linearinequalities). We explain how such machine-verifiable proofs can becreated for various problems, including parity reasoning, symmetry anddominance breaking, constraint programming, subgraph isomorphism andmaximum common subgraph problems, and pseudo-Boolean problems. Weimplement and evaluate the resulting algorithms and a verifier for theproof format, demonstrating that the approach is practical for a widerange of problems. We are optimistic that the proposed proof system issuitable for designing certifying variants of algorithms inpseudo-Boolean optimisation, MaxSAT and beyond

    Efficient Automated Planning with New Formulations

    Get PDF
    Problem solving usually strongly relies on how the problem is formulated. This fact also applies to automated planning, a key field in artificial intelligence research. Classical planning used to be dominated by STRIPS formulation, a simple model based on propositional logic. In the recently introduced SAS+ formulation, the multi-valued variables naturally depict certain invariants that are missed in STRIPS, make SAS+ have many favorable features. Because of its rich structural information SAS+ begins to attract lots of research interest. Existing works, however, are mostly limited to one single thing: to improve heuristic functions. This is in sharp contrast with the abundance of planning models and techniques in the field. On the other hand, although heuristic is a key part for search, its effectiveness is limited. Recent investigations have shown that even if we have almost perfect heuristics, the number of states to visit is still exponential. Therefore, there is a barrier between the nice features of SAS+ and its applications in planning algorithms. In this dissertation, we have recasted two major planning paradigms: state space search and planning as Satisfiability: SAT), with three major contributions. First, we have utilized SAS+ for a new hierarchical state space search model by taking advantage of the decomposable structure within SAS+. This algorithm can greatly reduce the time complexity for planning. Second, planning as Satisfiability is a major planning approach, but it is traditionally based on STRIPS. We have developed a new SAS+ based SAT encoding scheme: SASE) for planning. The state space modeled by SASE shows a decomposable structure with certain components independent to others, showing promising structure that STRIPS based encoding does not have. Third, the expressiveness of planning is important for real world scenarios, thus we have also extended the planning as SAT to temporally expressive planning and planning with action costs, two advanced features beyond classical planning. The resulting planner is competitive to state-of-the-art planners, in terms of both quality and performance. Overall, our work strongly suggests a shifting trend of planning from STRIPS to SAS+, and shows the power of formulating planning problems as Satisfiability. Given the important roles of both classical planning and temporal planning, our work will inspire new developments in other advanced planning problem domains
    corecore