871 research outputs found

    On Sub-Propositional Fragments of Modal Logic

    Get PDF
    In this paper, we consider the well-known modal logics K\mathbf{K}, T\mathbf{T}, K4\mathbf{K4}, and S4\mathbf{S4}, and we study some of their sub-propositional fragments, namely the classical Horn fragment, the Krom fragment, the so-called core fragment, defined as the intersection of the Horn and the Krom fragments, plus their sub-fragments obtained by limiting the use of boxes and diamonds in clauses. We focus, first, on the relative expressive power of such languages: we introduce a suitable measure of expressive power, and we obtain a complex hierarchy that encompasses all fragments of the considered logics. Then, after observing the low expressive power, in particular, of the Horn fragments without diamonds, we study the computational complexity of their satisfiability problem, proving that, in general, it becomes polynomial

    Applying Formal Methods to Networking: Theory, Techniques and Applications

    Full text link
    Despite its great importance, modern network infrastructure is remarkable for the lack of rigor in its engineering. The Internet which began as a research experiment was never designed to handle the users and applications it hosts today. The lack of formalization of the Internet architecture meant limited abstractions and modularity, especially for the control and management planes, thus requiring for every new need a new protocol built from scratch. This led to an unwieldy ossified Internet architecture resistant to any attempts at formal verification, and an Internet culture where expediency and pragmatism are favored over formal correctness. Fortunately, recent work in the space of clean slate Internet design---especially, the software defined networking (SDN) paradigm---offers the Internet community another chance to develop the right kind of architecture and abstractions. This has also led to a great resurgence in interest of applying formal methods to specification, verification, and synthesis of networking protocols and applications. In this paper, we present a self-contained tutorial of the formidable amount of work that has been done in formal methods, and present a survey of its applications to networking.Comment: 30 pages, submitted to IEEE Communications Surveys and Tutorial

    A System for Deduction-based Formal Verification of Workflow-oriented Software Models

    Full text link
    The work concerns formal verification of workflow-oriented software models using deductive approach. The formal correctness of a model's behaviour is considered. Manually building logical specifications, which are considered as a set of temporal logic formulas, seems to be the significant obstacle for an inexperienced user when applying the deductive approach. A system, and its architecture, for the deduction-based verification of workflow-oriented models is proposed. The process of inference is based on the semantic tableaux method which has some advantages when compared to traditional deduction strategies. The algorithm for an automatic generation of logical specifications is proposed. The generation procedure is based on the predefined workflow patterns for BPMN, which is a standard and dominant notation for the modeling of business processes. The main idea for the approach is to consider patterns, defined in terms of temporal logic,as a kind of (logical) primitives which enable the transformation of models to temporal logic formulas constituting a logical specification. Automation of the generation process is crucial for bridging the gap between intuitiveness of the deductive reasoning and the difficulty of its practical application in the case when logical specifications are built manually. This approach has gone some way towards supporting, hopefully enhancing our understanding of, the deduction-based formal verification of workflow-oriented models.Comment: International Journal of Applied Mathematics and Computer Scienc

    Modal logics are coalgebraic

    Get PDF
    Applications of modal logics are abundant in computer science, and a large number of structurally different modal logics have been successfully employed in a diverse spectrum of application contexts. Coalgebraic semantics, on the other hand, provides a uniform and encompassing view on the large variety of specific logics used in particular domains. The coalgebraic approach is generic and compositional: tools and techniques simultaneously apply to a large class of application areas and can moreover be combined in a modular way. In particular, this facilitates a pick-and-choose approach to domain specific formalisms, applicable across the entire scope of application areas, leading to generic software tools that are easier to design, to implement, and to maintain. This paper substantiates the authors' firm belief that the systematic exploitation of the coalgebraic nature of modal logic will not only have impact on the field of modal logic itself but also lead to significant progress in a number of areas within computer science, such as knowledge representation and concurrency/mobility

    Building Logic Toolboxes

    Get PDF

    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

    Proceedings of the Joint Automated Reasoning Workshop and Deduktionstreffen: As part of the Vienna Summer of Logic – IJCAR 23-24 July 2014

    Get PDF
    Preface For many years the British and the German automated reasoning communities have successfully run independent series of workshops for anybody working in the area of automated reasoning. Although open to the general public they addressed in the past primarily the British and the German communities, respectively. At the occasion of the Vienna Summer of Logic the two series have a joint event in Vienna as an IJCAR workshop. In the spirit of the two series there will be only informal proceedings with abstracts of the works presented. These are collected in this document. We have tried to maintain the informal open atmosphere of the two series and have welcomed in particular research students to present their work. We have solicited for all work related to automated reasoning and its applications with a particular interest in work-in-progress and the presentation of half-baked ideas. As in the previous years, we have aimed to bring together researchers from all areas of automated reasoning in order to foster links among researchers from various disciplines; among theoreticians, implementers and users alike, and among international communities, this year not just the British and German communities
    corecore