6 research outputs found

    Combined Static and Dynamic Verification of Object Oriented Software Through Partial Proofs

    Get PDF
    When verifying software one can make use of several verification techniques. These techniques mostly fall in one of two categories: Static Verification and Dynamic Verification. Static verification deals with the analysis of either concrete source code, or a model of it. These kinds of techniques can verify properties over all possible runs of a program. Dynamic verification is concerned with the monitoring of software, providing guarantees that observed runs comply with specified properties. It is strong in analysing systems of a complexity that is difficult to address by static verification, e.g., systems with numerous interacting sub-units, concrete (as opposed to abstract) data, etc. On the other hand, its major drawbacks are the impossibility to extrapolate correct observations to all possible runs, and that the monitoring of a property introduces runtime overheads. It is quite clear that static and dynamic verification have largely disjoint strengths. Therefore, their combination can allow the verification process to deal with richer properties, with greater ease. The work presented in this thesis addresses this issue by introducing some manners to combine static and dynamic verification, where partial proofs are used as a means to accomplish the combination. The main novelty in these combinations consists in the fact that all of them consider the use of the partial proofs in the verification process, whereas, in general, other verification approaches discard them right away. The main contributions of this thesis are: (i) ppDATE, an automata-based formalism to specify both data- and control-oriented properties; (ii) structural operational semantics for ppDATE; (iii) a translation of ppDATE to DATE together with a proof of correctness; (iv) StaRVOOrS, a tool for combining (static) deductive verification and runtime verification of object oriented software; (v) a testing focused development methodology which integrates deductive and runtime verification in its workflow; and (vi) a methodology to infer global trace conditions for a system, from partial proofs local to the transitions of a model, obtained by performing low effort verification attempts to properties

    Static Analysis of Circuits for Security

    Get PDF
    The purpose of the present work is to define a methodology to analyze a system description given in VHDL code and test its security properties. In particular the analysis is aimed at ensuring that a malicious user cannot make a circuit output the secret data it contains

    Enhancing the usability of rely-guarantee conditions for atomicity refinement

    Get PDF
    Formal methods are a useful tool for increasing the confidence in the correctness of computer programs with respect to their specifications. Formal methods allow designers to model specifications and these formal models can then be reasoned about in a rigourous way. Formal methods for sequential processes are well-understood, however formal methods for concurrent programs are more difficult, because of the interference which may arise when programs run concurrently. Rely-guarantee reasoning is a well-established formal method for modelling concurrent programs. Rely-guarantee conditions offer a tractable and compositional approach to reasoning about concurrent programs, by allowing designers to reason about the interference inherent in concurrent systems. While useful, there are certain weaknesses in rely-guarantee conditions. In particular, the requirement for rely-guarantee conditions to describe whole-state updates can make large specifications unwieldy. Similarly, it can be difficult to describe problems which exhibit distinct phases of execution. The main contribution of this thesis is to show ways in which these two weaknesses of rely-guarantee reasoning can be addressed. In turn, this enhances the usability of rely-guarantee conditions. Atomicity refinement is a potentially useful tool for simplifying the development of concurrent programs. The central idea is that designers can record (possibly unrealistic) atomicity assumptions about the eventual implementation of a program. This fiction of atomicity simplifies the design process by avoiding the difficult issue of interference. It is then necessary to identify ways in which this atomicity can be relaxed and concurrent execution introduced. This thesis also argues that the choice of data representation plays an important role in achieving atomicity refinement. In addition, this thesis presents an argument that rely-guarantee conditions and VDM offer a potentially fruitful approach to atomicity refinement. Specifically, rely-conditions can be used to represent assumptions about atomicity and the refinement rules of VDM allow different data representations to be introduced. To this end, a more usable approach to rely-guarantee reasoning would benefit the search for a usable form of atomicity refinement. All of these points are illustrated with a novel development of Simpson’s Four-Slot, a mechanism for asynchronous communication between processes.EThOS - Electronic Theses Online ServiceEPSRCGBUnited Kingdo

    Deductive verification of object-oriented software : dynamic frames, dynamic logic and predicate abstraction

    Get PDF
    Software systems play a central role in modern society, and their correctness is often crucially important. Formal specification and verification are promising approaches for ensuring correctness more rigorously than just by testing. This work presents an approach for deductively verifying design-by-contract specifications of object-oriented programs. The approach is based on dynamic logic, and addresses the challenges of modularity and automation using dynamic frames and predicate abstraction

    Investment in capital markets

    Get PDF
    Investment in Capital Markets creates a strategic vision on the financial capital investment in the capital markets with the aim to get an increased return premium in the short and long time periods. The book is written with a main goal to explain the pros and cons of the financial capital investment in the capital markets, discussing the sophisticated investment concepts and techniques in the simple understandable readable general format language. We would like to highlight the three interesting facts about the book: 1. It is centered on the consideration of the modern investment products, the investment vehicles and the investment mediums for the financial capital investment in the capital markets; 2. It is focused on the financial risk calculation and mitigation techniques for the financial capital investment in the financial capital markets. 3. It is aimed to describe the quantum winning virtuous investment strategies creation and execution techniques during the financial capital investment in the capital markets. The investors, financiers, economists, financial analysts, financial traders, financial advisers, lawmakers, policy analysts, subject experts, professors, and students will certainly enjoy a breathtaking splendid learning journey with the explained new ideas, established concepts and outlined future prospects toward the financial capital investment in the capital markets with the aim to get an increased return premium in the short and long time periods

    Business Cycles in Economics

    Get PDF
    The business cycles are generated by the oscillating macro-/micro-/nano- economic output variables in the economy of the scale and the scope in the amplitude/frequency/phase/time domains in the economics. The accurate forward looking assumptions on the business cycles oscillation dynamics can optimize the financial capital investing and/or borrowing by the economic agents in the capital markets. The book's main objective is to study the business cycles in the economy of the scale and the scope, formulating the Ledenyov unified business cycles theory in the Ledenyov classic and quantum econodynamics
    corecore