97 research outputs found

    Deadlock detection of active objects with synchronous and asynchronous method calls

    Get PDF
    Open distributed systems are essential in today’s softwaresolutions. However, not all programming paradigms providenatural support for such systems. The setting of concurrentobjects is attractive since it supports independent units ofcomputation. In particular we consider concurrent objectscommunicating by asynchronous method calls supporting non-blocking as well as blocking method calls. In this settingwaiting time can be reduced, allowing efficient cooperationbetween objects. With this concurrency model, deadlock isavoided if blocking calls are avoided. However, blocking callsare sometimes needed to control the order of computation. Thenon-hierarchical nature of concurrent objects systems gives riseto non-trivial deadlock situations. Deadlocks may occur if thereis a call chain with at least one blocking call.We propose amethod for static detection of deadlocks, and demonstrate itsuse on a non-trivial example

    A simple sequent calculus for partial functions

    Get PDF
    AbstractUsually, the extension of classical logic to a three-level valued logic results in a complicated calculus, with side-conditions on the rules of logic in order to ensure consistency. One reason for the necessity of side-conditions is the presence of nonmonotonic operators. Another reason is the choice of consequence relation. Side-conditions severely violate the symmetry of the logic. By limiting the extension to monotonic cases and by choosing an appropriate consequence relation, a simple calculus for three-valued logic arises. The logic has strong correspondences to ordinary classical logic and, in particular, the symmetry of the Genzen sequent calculus (LK) is preserved, leading to a simple proof for cut elimination

    An approach to compositional reasoning about concurrent objects and futures

    Get PDF
    Distributed and concurrent object-oriented systems are difficult to analyze due to the complexity of their concurrency, communication, and synchronization mechanisms. Rather than performing analysis at the code level of mainstream objectoriented languages such as Java and C++, we consider an imperative, objectoriented language with a simpler concurrency model. This language, based on concurrent objects communicating by asynchronous method calls and futures, avoids some difficulties of mainstream object-oriented programming languages related to compositionality and aliasing. In particular, reasoning about futures is handled by means of histories. Compositional verification systems facilitate system analysis, allowing components to be analyzed independently of their environment. In this paper, a compositional proof system in dynamic logic for partial correctness is established based on communication histories and class invariants. The soundness and relative completeness of this proof system follow by construction using a transformational approach from a sequential language with a non-deterministic assignment operator

    XACML2mCRL2 : automatic transformation of XACML policies into mCRL2 specifications

    Get PDF
    The eXtensible Access Control Markup Language (XACML) is a popular OASIS standard for the specification of fine-grained access control policies. However, the standard does not provide a proper solution for the verification of XACML access control policies before their deployment. The first step for the formal verification of XACML policies is to formally specify such policies. Hence, this paper presents XACML2mCRL2, a tool for the automatic translation of XACML access control policies into mCRL2. The mCRL2 specifications generated by our tool can be used for formal verification of important properties of access control policies, such as completeness or inconsistency, using the well-known mCRL2 toolset

    A Type-Safe Model of Adaptive Object Groups

    Full text link
    Services are autonomous, self-describing, technology-neutral software units that can be described, published, discovered, and composed into software applications at runtime. Designing software services and composing services in order to form applications or composite services requires abstractions beyond those found in typical object-oriented programming languages. This paper explores service-oriented abstractions such as service adaptation, discovery, and querying in an object-oriented setting. We develop a formal model of adaptive object-oriented groups which offer services to their environment. These groups fit directly into the object-oriented paradigm in the sense that they can be dynamically created, they have an identity, and they can receive method calls. In contrast to objects, groups are not used for structuring code. A group exports its services through interfaces and relies on objects to implement these services. Objects may join or leave different groups. Groups may dynamically export new interfaces, they support service discovery, and they can be queried at runtime for the interfaces they support. We define an operational semantics and a static type system for this model of adaptive object groups, and show that well-typed programs do not cause method-not-understood errors at runtime.Comment: In Proceedings FOCLASA 2012, arXiv:1208.432

    Privacy-preserving transactive energy systems: Key topics and open research challenges

    Full text link
    This manuscript aims to formalize and conclude the discussions initiated during the PriTEM workshop 22-23 March 2023. We present important ideas and discussion topics in the context of transactive energy systems. Moreover, the conclusions from the discussions articulate potential aspects to be explored in future studies on transactive energy management. Particularly, these conclusions cover research topics in energy technology and energy informatics, energy law, data law, energy market and socio-psychology that are relevant to the seamless integration of renewable energy resources and the transactive energy systems-in smart microgrids-focusing on distributed frameworks such as peer-to-peer (P2P) energy trading. We clarify issues, identify barriers, and suggest possible solutions to open questions in diversified topics, such as block-chain interoperability, consumer privacy and data sharing, and participation incentivization. Furthermore, we also elaborate challenges associated with cross-disciplinary collaboration and coordination for transactive energy systems, and enumerate the lessons learned from our work so far

    Towards an object-oriented modeling language for probabalistic open distributed systems

    Get PDF
    In this paper, we propose a probabilistic extension of the Creol modeling language, called PCreol, for which we give the operational semantics in Probabilistic Rewrite Logic. We give details on the implementation of a prototype PCreol interpreter, executable in Maude, on top of the existing one for Creol. We also achieved the integration of PCreol with the VeStA tool, which allows for statistical model checking and statistical quantitative analysis of PCreol programs. We give two example PCreol programs and show how VeStA can be used to study their properties. The paper is concluded with a number of future research directions
    corecore