53 research outputs found

    Compilation of Specifications

    Get PDF
    Computer software now controls critical systems worldwide. International standards require such programs to be produced from mathematically-precise specifications, but the techniques and tools involved are highly complex and unfamiliar to most programmers. We present a formal basis for extending a tool already used by software developers, the program compiler, to undertake much of the task automatically. This is done by devising a code generation strategy, based on program refinement theory, capable of translating specification constructs embedded in programs into executable code, without the need for programmer intervention

    Can space station software be specified through Ada?

    Get PDF
    Programming of the space station is to be done in the Ada programming language. A breadboard of selected parts of the work package for Marshall Space Flight Center is to be built, and programming this small part will be a good testing ground for Ada. One coding of the upper levels of the design brings out several problems with top-down design when it is to be carried out strictly within the language. Ada is evaluated on the basis of this experience, and the points raised are compared with other experience as related in the literature. Rapid prototyping is another approach to the initial programming; several different types of prototypes are discussed, and compared with the art of specification. Some solutions are proposed and a number of recommendations presented

    Cost of exploration for metallic minerals in Alaska

    Get PDF
    The high cost of exploration for metallic minerals in Alaska not only reflects a 20-50% increase in the cost of supplies, food and salaries over those "outside" but also some additional costs that are characteristic of most Alaskan exploration efforts. Transportation in particular often represents half of the exploration budget and is a major cost of almost all programs. Helicopters commonly are used as the basic mode of field transportation; their cost is high (about 125to125 to 300 per hour) and increasing, and their availability is becoming less certain with the accelerating demand for them. Salaries for field personnel are also considerably higher than those paid to personnel "outside". And the demand, both from within and without the mining industry, for those with Alaskan experience is so great as to drive those salaries even higher. Fuel and communication costs not only show the usual Alaskan mark-up but are also subject to local scarcity and almost unavoidable problems. Fuel will probably continue to be available in the major population centers but there have always been difficulties in providing or obtaining fuel in the bush; these will undoubtedly be magnified with the booming development of Alaska's petroleum resources and national scarcity. Communications with the field will undoubtedly continue to be uncertain at times and will frequently present major problems that money along cannot solve and result in much frustration and delay. Contract services such as drilling, geophysical work, and geochemical analyses are available within the state in varying degree or can be obtained "outside" at rates that do not seem to be unduly expensive. However, the cost of transportation, mobilization, and demobilization of the personnel and equipment used in performing these services may result in unusually high costs for projects of short duration. Early logistical planning has always been considered wise in Alaskan field work and it will undoubtedly continue to be important, if not essential. The lack of it may be alleviated in some cases with copious applications of money but with Alaska's present booming development, the lack of planning may lead to an uncertain ability to work in the field at all. The cost of Alaskan exploration programs vary greatly. Many of the reconnaissance geologic and geochemical programs are strikingly expensive chiefly because of the need for helicopter support. Other types of programs such as prospect evaluations are not nearly so expensive and Alaskan costs for projects of limited area or duration are nor necessarily prohibitive. In almost all cases, experience, imagination, and prior planning can reduce costs significantly

    A Visual Specification Language for Model-to-Model Transformations

    Get PDF
    Proceedings of: IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC 2010). Leganés-Madrid, Spain 21-25 Septemeber 2010.While interaction patterns are becoming widespread in the field of interface design, their definitions do not enjoy a common standard yet, as is for software patterns. Moreover, patterns are developed for diverse design aspects, reflecting the complexity of the field. As a consequence, research on formalization of interaction patterns is not developed, and few attempts have been made to extend techniques developed for design pattern formalization. We show here how an extension to our recent approach to pattern formalization can be usefully employed to formalize some classes of interaction patterns, to express relations among them, and to detect conflicts.Work funded by the Spanish Ministry of Science and Innovation through project TIN2008-02081 and mobility grants JC2009-00015 and PR2009-0019; and by the R&D programme of the Madrid Community, project S2009/TIC-1650.Publicad

    Verification of loop parallelisations

    Get PDF
    Writing correct parallel programs becomes more and more difficult as the complexity and heterogeneity of processors increase. This issue is addressed by parallelising compilers. Various compiler directives can be used to tell these compilers where to parallelise. This paper addresses the correctness of such compiler directives for loop parallelisation. Specifically, we propose a technique based on separation logic to verify whether a loop can be parallelised. Our approach requires each loop iteration to be specified with the locations that are read and written in this iteration. If the specifications are correct, they can be used to draw conclusions about loop (in)dependences. Moreover, they also reveal where synchronisation is needed in the parallelised program. The loop iteration specifications can be verified using permission-based separation logic and seamlessly integrate with functional behaviour specifications. We formally prove the correctness of our approach and we discuss automated tool support for our technique. Additionally, we also discuss how the loop iteration contracts can be compiled into specifications for the code coming out of the parallelising compiler

    Generation of interactive programming environments: GIPE

    Get PDF
    • …
    corecore