83,352 research outputs found

    Towards a General Framework for Formal Reasoning about Java Bytecode Transformation

    Full text link
    Program transformation has gained a wide interest since it is used for several purposes: altering semantics of a program, adding features to a program or performing optimizations. In this paper we focus on program transformations at the bytecode level. Because these transformations may introduce errors, our goal is to provide a formal way to verify the update and establish its correctness. The formal framework presented includes a definition of a formal semantics of updates which is the base of a static verification and a scheme based on Hoare triples and weakest precondition calculus to reason about behavioral aspects in bytecode transformationComment: In Proceedings SCSS 2012, arXiv:1307.802

    Conditions for interoperability

    Get PDF
    Interoperability for information systems remains a challenge both at the semantic and organisational levels. The original three-level architecture for local databases needs to be replaced by a categorical four-level one based on concepts, constructions, schema types and data together with the mappings between them. Such an architecture provides natural closure as further levels are superfluous even in a global environment. The architecture is traversed by means of the Godement calculus: arrows may be composed at any level as well as across levles. The necessary and sufficient conditions for interoperability are satisfied by composable (formal) diagrams both for intension and extension in categories that are cartesian closed and locally cartesian closed. Methods like partial categories and sketches in schema design can benefit from Freydā€™s punctured diagrams to identify precisely type-forcing natural transformations. Closure is better achieved in standard full categories. Global interoperability of extension can be achieved through semantic annotation but only if applied at run time

    Local and nonlocal boundary conditions for Ī¼\mu-transmission and fractional elliptic pseudodifferential operators

    Full text link
    A classical pseudodifferential operator PP on RnR^n satisfies the Ī¼\mu-transmission condition relative to a smooth open subset Ī©\Omega , when the symbol terms have a certain twisted parity on the normal to āˆ‚Ī©\partial\Omega . As shown recently by the author, the condition assures solvability of Dirichlet-type boundary problems for elliptic PP in full scales of Sobolev spaces with a singularity dĪ¼āˆ’kd^{\mu -k}, d(x)=distā”(x,āˆ‚Ī©)d(x)=\operatorname{dist}(x,\partial\Omega). Examples include fractional Laplacians (āˆ’Ī”)a(-\Delta)^a and complex powers of strongly elliptic PDE. We now introduce new boundary conditions, of Neumann type or more general nonlocal. It is also shown how problems with data on Rnāˆ–Ī©R^n\setminus \Omega reduce to problems supported on Ī©Ė‰\bar\Omega, and how the so-called "large" solutions arise. Moreover, the results are extended to general function spaces Fp,qsF^s_{p,q} and Bp,qsB^s_{p,q}, including H\"older-Zygmund spaces Bāˆž,āˆžsB^s_{\infty ,\infty}. This leads to optimal H\"older estimates, e.g. for Dirichlet solutions of (āˆ’Ī”)au=fāˆˆLāˆž(Ī©)(-\Delta)^au=f\in L_\infty (\Omega), uāˆˆdaCa(Ī©Ė‰)u\in d^aC^a(\bar\Omega) when 0<a<10<a<1, aā‰ 1/2a\ne 1/2 (in daCaāˆ’Ļµ(Ī©Ė‰)d^aC^{a-\epsilon}(\bar\Omega) when a=1/2a=1/2).Comment: Title slightly changed, 34 page

    Formal Verification of Security Protocol Implementations: A Survey

    Get PDF
    Automated formal verification of security protocols has been mostly focused on analyzing high-level abstract models which, however, are significantly different from real protocol implementations written in programming languages. Recently, some researchers have started investigating techniques that bring automated formal proofs closer to real implementations. This paper surveys these attempts, focusing on approaches that target the application code that implements protocol logic, rather than the libraries that implement cryptography. According to these approaches, libraries are assumed to correctly implement some models. The aim is to derive formal proofs that, under this assumption, give assurance about the application code that implements the protocol logic. The two main approaches of model extraction and code generation are presented, along with the main techniques adopted for each approac

    Mapping Fusion and Synchronized Hyperedge Replacement into Logic Programming

    Full text link
    In this paper we compare three different formalisms that can be used in the area of models for distributed, concurrent and mobile systems. In particular we analyze the relationships between a process calculus, the Fusion Calculus, graph transformations in the Synchronized Hyperedge Replacement with Hoare synchronization (HSHR) approach and logic programming. We present a translation from Fusion Calculus into HSHR (whereas Fusion Calculus uses Milner synchronization) and prove a correspondence between the reduction semantics of Fusion Calculus and HSHR transitions. We also present a mapping from HSHR into a transactional version of logic programming and prove that there is a full correspondence between the two formalisms. The resulting mapping from Fusion Calculus to logic programming is interesting since it shows the tight analogies between the two formalisms, in particular for handling name generation and mobility. The intermediate step in terms of HSHR is convenient since graph transformations allow for multiple, remote synchronizations, as required by Fusion Calculus semantics.Comment: 44 pages, 8 figures, to appear in a special issue of Theory and Practice of Logic Programming, minor revisio

    Graphical Encoding of a Spatial Logic for the pi-Calculus

    Get PDF
    This paper extends our graph-based approach to the verification of spatial properties of Ļ€-calculus specifications. The mechanism is based on an encoding for mobile calculi where each process is mapped into a graph (with interfaces) such that the denotation is fully abstract with respect to the usual structural congruence, i.e., two processes are equivalent exactly when the corresponding encodings yield isomorphic graphs. Behavioral and structural properties of Ļ€-calculus processes expressed in a spatial logic can then be verified on the graphical encoding of a process rather than on its textual representation. In this paper we introduce a modal logic for graphs and define a translation of spatial formulae such that a process verifies a spatial formula exactly when its graphical representation verifies the translated modal graph formula

    A Refinement Calculus for Logic Programs

    Get PDF
    Existing refinement calculi provide frameworks for the stepwise development of imperative programs from specifications. This paper presents a refinement calculus for deriving logic programs. The calculus contains a wide-spectrum logic programming language, including executable constructs such as sequential conjunction, disjunction, and existential quantification, as well as specification constructs such as general predicates, assumptions and universal quantification. A declarative semantics is defined for this wide-spectrum language based on executions. Executions are partial functions from states to states, where a state is represented as a set of bindings. The semantics is used to define the meaning of programs and specifications, including parameters and recursion. To complete the calculus, a notion of correctness-preserving refinement over programs in the wide-spectrum language is defined and refinement laws for developing programs are introduced. The refinement calculus is illustrated using example derivations and prototype tool support is discussed.Comment: 36 pages, 3 figures. To be published in Theory and Practice of Logic Programming (TPLP
    • ā€¦
    corecore