65 research outputs found

    Specification and Construction of Control Flow Semantics

    Get PDF
    In this paper we propose a visual language CFSL for specifying control flow semantics of programming languages. We also present a translation from CFSL to graph production systems (GPS) for flow graph construction; that is, any CFSL specification, say for a language L, gives rise to a GPS that constructs from any L-program (represented as an abstract syntax graph) the corresponding flow graph. The specification language is rich enough to capture complex language constructs, including all of Java

    Engineering Object-Oriented Semantics Using Graph Transformations

    Get PDF
    In this paper we describe the application of the theory of graph transformations to the practise of language design. We have defined the semantics of a small but realistic object-oriented language (called TAAL) by mapping the language constructs to graphs and their operational semantics to graph transformation rules. In the process we establish a mapping between UML models and graphs. TAAL was developed for the purpose of this paper, as an extensive case study in engineering object-oriented language semantics using graph transformation. It incorporates the basic aspects of many commonly used object-oriented programming languages: apart from essential imperative programming constructs, it includes inheritance, object creation and method overriding. The language specification is based on a number of meta-models written in UML. Both the static and dynamic semantics are defined using graph rewriting rules. In the course of the case study, we have built an Eclipse plug-in that automatically transforms arbitrary TAAL programs into graphs, in a graph format readable by another tool. This second tool is called Groove, and it is able to execute graph transformations. By combining both tools we are able to visually simulate the execution of any TAAL program

    A multicenter, prospective, randomized comparison of a novel signal transmission capsule endoscope to an existing capsule endoscope.

    Get PDF
    BACKGROUND: MiroCam, a capsule endoscope, uses a novel transmission technology, electric-field propagation, which uses the human body as a conduction medium for data transmission. OBJECTIVE: To compare the ability of the MiroCam (MC) and PillCam (PC) to identify sources of obscure GI bleeding (OGIB). DESIGN: Prospective, multicenter, comparative study. SETTING: Six academic hospitals. PATIENTS: A total of 105 patients with OGIB. INTERVENTION: Patients ingested both the MC and PC capsules sequentially in a randomized fashion. MAIN OUTCOME MEASUREMENTS: Concordance of rates in identifying a source of OGIB, operational times, and rates of complete small-bowel examination. RESULTS: Data analysis resulted in 43 (48%) abnormal cases identifying a source of OGIB by either capsule. Twenty-four cases (55.8%) were positive by both capsules. There was negative agreement in 46 of 58 cases (79.3%). The κ index was 0.547 (χ(2) = 1.32; P = .36). In 12 cases, MC positively identified a source that was not seen on PC, whereas in 7 cases, PC positively identified a source that was not seen on MC. MC had a 5.6% higher rate of detecting small-bowel lesions (P = .54). MC captured images at 3 frames per second for 11.1 hours, and PC captured images at 2 frames per second for 7.8 hours (P \u3c .0001). Complete small-bowel examination was achieved in 93.3% for MC and 84.3% for PC (P = .10). LIMITATIONS: Readers were not blinded to the particular capsule they were reading. CONCLUSION: A positive diagnostic finding for OGIB was identified by either capsule in 48% of cases. The concordance rate between the 2 capsules was comparable to that of prior studies in identifying sources of small-bowel bleeding. The longer operational time of the MC may result in higher rates of complete small-bowel examination, which may, in turn, translate into a higher rate of detecting small-bowel lesions. (Clinical trial registration number: NCT00878982.)

    Dynamic Partial Order Reduction Using Probe Sets

    Get PDF
    We present an algorithm for partial order reduction in the context of a countable universe of deterministic actions, of which finitely many are enabled at any given state. This means that the algorithm is suited for a setting in which resources, such as processes or objects, are dynamically created and destroyed, without an a priori bound. The algorithm relies on abstract enabling and disabling relations among actions, rather than associated sets of concurrent processes. It works by selecting so-called probe sets at every state, and backtracking in case the probe is later discovered to have missed some possible continuation. We show that this improves the potential reduction with respect to persistent sets. We then instantiate the framework by assuming that states are essentially sets of entities (out of a countable universe) and actions test, delete and create such entities. Typical examples of systems that can be captured in this way are Petri nets and (more generally) graph transformation systems. We show that all the steps of the algorithm, including the estimation of the missed actions, can be effectively implemented for this setting

    Model Checking Dynamic States in GROOVE

    No full text
    Much research has been done in the field of model-checking complex systems (either hardware or software). Approaches that use explicit state modelling mostly use bit vectors to represent the states of such systems. Unfortunately, that kind of representation does not extend smoothly to systems in which the states contain values from a domain other than primitive types, such as reference values commonly used in object-oriented systems. In this paper we report preliminary results on applying CTL model checking on state spaces generated using graph transformations. The states of such state spaces have an internal graph structure which makes it possible to represent complex system states without the need to know the exact structure beforehand as when using bit vectors
    corecore