Results 1 
5 of
5
Matching logic: A logic for structural reasoning
, 2014
"... AbstractMatching logic is a firstorder logic (FOL) variant to reason about structure. Its sentences, called patterns, are constructed using variables, symbols, connectives and quantifiers, but no difference is made between function and predicate symbols. In models, a pattern evaluates into a powe ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
(Show Context)
AbstractMatching logic is a firstorder logic (FOL) variant to reason about structure. Its sentences, called patterns, are constructed using variables, symbols, connectives and quantifiers, but no difference is made between function and predicate symbols. In models, a pattern evaluates into a powerset domain (the set of values that match it), in contrast to FOL where functions, predicates and connectives map into a domain. Matching logic generalizes several logical frameworks important for program analysis, such as: propositional logic, algebraic specification, FOL with equality, and separation logic. Patterns allow for specifying separation requirements at any level in any program configuration, not only in the heaps or stores, without any special logical constructs for that: the very nature of pattern matching is that if two structures are matched as part of a pattern, then they can only be spatially separated. Like FOL, matching logic can also be translated into pure predicate logic with equality, but it also admits its own sound and complete proof system.
Reachability Logic in K
"... Abstract. This paper presents a languageindependent proof system for reachability properties of programs written in nondeterministic (concurrent) languages, referred to as reachability logic. The proof system derives partialcorrectness properties with either allpath or onepath semantics, i.e., ..."
Abstract
 Add to MetaCart
Abstract. This paper presents a languageindependent proof system for reachability properties of programs written in nondeterministic (concurrent) languages, referred to as reachability logic. The proof system derives partialcorrectness properties with either allpath or onepath semantics, i.e., that states satisfying a given precondition reach states satisfying a given postcondition on all execution paths, respectively on one execution path. Reachability logic takes as axioms any unconditional operational semantics, and is sound (i.e., partially correct) and (relatively) complete, independent of the object language; the soundness has also been mechanized. The proof system is implemented in a tool for semanticsbased verification as part of the K framework, and evaluated on a few examples. 1
Verifying ReachabilityLogic Properties on RewritingLogic Specifications
"... Abstract. Reachability Logic is a recently introduced formalism, which is currently used for defining the operational semantics of programming languages and for stating properties about program executions. In this paper we show how Reachability Logic can be adapted for stating properties of transit ..."
Abstract
 Add to MetaCart
(Show Context)
Abstract. Reachability Logic is a recently introduced formalism, which is currently used for defining the operational semantics of programming languages and for stating properties about program executions. In this paper we show how Reachability Logic can be adapted for stating properties of transition systems described by RewritingLogic specifications. We propose an automatic procedure for verifying RewritingLogic specifications against ReachabilityLogic properties. We prove the soundness of the procedure and illustrate it by verifying a communication protocol specified in Maude. 1
Submitted to: THedu’14 c©W. Neuper This work is licensed under the Creative Commons Attribution License. GCD — a Case Study on LucasInterpretation
"... LucasInterpretation [5] combines computation and deduction such that a learner has free choice in interaction while solving problems in applied mathematics: a next step can be requested from the system and/or can be input with feedback from the system. Thus interactive support in stepwise problem ..."
Abstract
 Add to MetaCart
(Show Context)
LucasInterpretation [5] combines computation and deduction such that a learner has free choice in interaction while solving problems in applied mathematics: a next step can be requested from the system and/or can be input with feedback from the system. Thus interactive support in stepwise problem solving comes close to traditional paper and pencil work. Next steps are computed by a program, while interpretation works stepwise like in a debugger and maintains an environment together with a logical context. The latter provides automated provers with data to check user input by establishing (or not establishing) deductions of input formulas from the context. The prototype of LucasInterpretation in the ISAC project1 raises several open research questions. One of them are the limits of “nextstepguidance”: Which kinds of input guarantee the interpreter to resume execution? So far, there is one positive answer [2], lemma 7 on p.182. Another open question is revealed in the proof of the above mentioned lemma, which involves reachability, not yet tackled in Isabelle [8]: How relates logical consistency of a calculation with the operational semantics of the respective program? Interest on clarification of theoretical foundations for LucasInterpretation is motivated by a case study [7]: this study revealed that ISAC’s programming language is too complicated to hand over authoring to the public.