61,886 research outputs found
Source Code Verification for Embedded Systems using Prolog
System relevant embedded software needs to be reliable and, therefore, well
tested, especially for aerospace systems. A common technique to verify programs
is the analysis of their abstract syntax tree (AST). Tree structures can be
elegantly analyzed with the logic programming language Prolog. Moreover, Prolog
offers further advantages for a thorough analysis: On the one hand, it natively
provides versatile options to efficiently process tree or graph data
structures. On the other hand, Prolog's non-determinism and backtracking eases
tests of different variations of the program flow without big effort. A
rule-based approach with Prolog allows to characterize the verification goals
in a concise and declarative way.
In this paper, we describe our approach to verify the source code of a flash
file system with the help of Prolog. The flash file system is written in C++
and has been developed particularly for the use in satellites. We transform a
given abstract syntax tree of C++ source code into Prolog facts and derive the
call graph and the execution sequence (tree), which then are further tested
against verification goals. The different program flow branching due to control
structures is derived by backtracking as subtrees of the full execution
sequence. Finally, these subtrees are verified in Prolog.
We illustrate our approach with a case study, where we search for incorrect
applications of semaphores in embedded software using the real-time operating
system RODOS. We rely on computation tree logic (CTL) and have designed an
embedded domain specific language (DSL) in Prolog to express the verification
goals.Comment: In Proceedings WLP'15/'16/WFLP'16, arXiv:1701.0014
A finite simulation method in a non-deterministic call-by-need calculus with letrec, constructors and case
The paper proposes a variation of simulation for checking and proving contextual equivalence in a non-deterministic call-by-need lambda-calculus with constructors, case, seq, and a letrec with cyclic dependencies. It also proposes a novel method to prove its correctness. The calculus' semantics is based on a small-step rewrite semantics and on may-convergence. The cyclic nature of letrec bindings, as well as non-determinism, makes known approaches to prove that simulation implies contextual equivalence, such as Howe's proof technique, inapplicable in this setting. The basic technique for the simulation as well as the correctness proof is called pre-evaluation, which computes a set of answers for every closed expression. If simulation succeeds in finite computation depth, then it is guaranteed to show contextual preorder of expressions
Jointly Multiple Events Extraction via Attention-based Graph Information Aggregation
Event extraction is of practical utility in natural language processing. In
the real world, it is a common phenomenon that multiple events existing in the
same sentence, where extracting them are more difficult than extracting a
single event. Previous works on modeling the associations between events by
sequential modeling methods suffer a lot from the low efficiency in capturing
very long-range dependencies. In this paper, we propose a novel Jointly
Multiple Events Extraction (JMEE) framework to jointly extract multiple event
triggers and arguments by introducing syntactic shortcut arcs to enhance
information flow and attention-based graph convolution networks to model graph
information. The experiment results demonstrate that our proposed framework
achieves competitive results compared with state-of-the-art methods.Comment: accepted by EMNLP 201
Conditional Hardness for Approximate Coloring
We study the coloring problem: Given a graph G, decide whether
or , where c(G) is the chromatic number of G. We derive conditional
hardness for this problem for any constant . For , our
result is based on Khot's 2-to-1 conjecture [Khot'02]. For , we base our
hardness result on a certain `fish shaped' variant of his conjecture.
We also prove that the problem almost coloring is hard for any constant
\eps>0, assuming Khot's Unique Games conjecture. This is the problem of
deciding for a given graph, between the case where one can 3-color all but a
\eps fraction of the vertices without monochromatic edges, and the case where
the graph contains no independent set of relative size at least \eps.
Our result is based on bounding various generalized noise-stability
quantities using the invariance principle of Mossel et al [MOO'05]
12th International Workshop on Termination (WST 2012) : WST 2012, February 19â23, 2012, Obergurgl, Austria / ed. by Georg Moser
This volume contains the proceedings of the 12th International Workshop on Termination (WST 2012), to be held February 19â23, 2012 in Obergurgl, Austria. The goal of the Workshop on Termination is to be a venue for presentation and discussion of all topics in and around termination. In this way, the workshop tries to bridge the gaps between different communities interested and active in research in and around termination. The 12th International Workshop on Termination in Obergurgl continues the successful workshops held in St. Andrews (1993), La Bresse (1995), Ede (1997), Dagstuhl (1999), Utrecht (2001), Valencia (2003), Aachen (2004), Seattle (2006), Paris (2007), Leipzig (2009), and Edinburgh (2010). The 12th International Workshop on Termination did welcome contributions on all aspects of termination and complexity analysis. Contributions from the imperative, constraint, functional, and logic programming communities, and papers investigating applications of complexity or termination (for example in program transformation or theorem proving) were particularly welcome. We did receive 18 submissions which all were accepted. Each paper was assigned two reviewers. In addition to these 18 contributed talks, WST 2012, hosts three invited talks by Alexander Krauss, Martin Hofmann, and Fausto Spoto
- âŚ