9 research outputs found

    A type-theoretic framework for software component synthesis

    Get PDF
    A language-agnostic approach for type-based component-oriented software synthesis is developed from the fundamental principles of abstract algebra and Combinatory Logic. It relies on an enumerative type inhabitation algorithm for Finite Combinatory Logic with Intersection Types (FCL) and a universal algebraic construction to translate terms of Combinatory Logic into any given target language. New insights are gained on the combination of semantic domains of discourse with intersection types. Long standing gaps in the algorithmic understanding of the type inhabitation question of FCL are closed. A practical implementation is developed and its applications by the author and other researchers are discussed. They include, but are not limited to, vast improvements in the context of synthesis of software product line members. An interactive theorem prover, Coq, is used to formalize and check all the theoretical results. This makes them more reusable for other developments and enhances confidence in their correctness.Es wird ein sprachunabhängiger Ansatz für die typbasierte und komponentenorientierte Synthese von Software entwickelt. Hierzu werden grundlegende Erkenntnisse über abstrakte Algebra und kombinatorische Logik verwendet. Der Ansatz beruht auf dem enumerativen Typinhabitationsproblem der endlichen kombinatorischen Logik mit Intersektionstypen, sowie einer universellen algebraischen Konstruktion, um Ergebnisterme in jede beliebe Zielsprache übersetzen zu können. Es werden neue Einblicke gewonnen, wie verschiedene semantische Domänen des Diskurses über Softwareeigenschaften miteinander verbunden werden können. Offene Fragestellungen im Zusammenhand mit der Algorithmik des Typinhabitationsproblems für Intersektionstypen werden beantwortet. Eine praktische Implementierung des Ansatzes wird entwickelt und ihre bisherigen Anwendungen durch den Autor und andere Wissenschaftler werden diskutiert. Diese beinhalten starke Verbesserungen im Zusammenhang mit der Synthese von Ausprägungen von Software Produktlinien. Ein interaktiver Theorembeweiser wir genutzt, um alle Ergebnisse der Arbeit zu formalisieren und mechanisch zu überprüfen. Dies trägt zum einen zur Wiederverwendbarkeit der theoretischen Ergebnisse in anderen Kontexten bei, und erhöht zum andern das Vertrauen in ihre Korrektheit

    Towards Applying Cryptographic Security Models to Real-World Systems

    Get PDF
    The cryptographic methodology of formal security analysis usually works in three steps: choosing a security model, describing a system and its intended security properties, and creating a formal proof of security. For basic cryptographic primitives and simple protocols this is a well understood process and is performed regularly. For more complex systems, as they are in use in real-world settings it is rarely applied, however. In practice, this often leads to missing or incomplete descriptions of the security properties and requirements of such systems, which in turn can lead to insecure implementations and consequent security breaches. One of the main reasons for the lack of application of formal models in practice is that they are particularly difficult to use and to adapt to new use cases. With this work, we therefore aim to investigate how cryptographic security models can be used to argue about the security of real-world systems. To this end, we perform case studies of three important types of real-world systems: data outsourcing, computer networks and electronic payment. First, we give a unified framework to express and analyze the security of data outsourcing schemes. Within this framework, we define three privacy objectives: \emph{data privacy}, \emph{query privacy}, and \emph{result privacy}. We show that data privacy and query privacy are independent concepts, while result privacy is consequential to them. We then extend our framework to allow the modeling of \emph{integrity} for the specific use case of file systems. To validate our model, we show that existing security notions can be expressed within our framework and we prove the security of CryFS---a cryptographic cloud file system. Second, we introduce a model, based on the Universal Composability (UC) framework, in which computer networks and their security properties can be described We extend it to incorporate time, which cannot be expressed in the basic UC framework, and give formal tools to facilitate its application. For validation, we use this model to argue about the security of architectures of multiple firewalls in the presence of an active adversary. We show that a parallel composition of firewalls exhibits strictly better security properties than other variants. Finally, we introduce a formal model for the security of electronic payment protocols within the UC framework. Using this model, we prove a set of necessary requirements for secure electronic payment. Based on these findings, we discuss the security of current payment protocols and find that most are insecure. We then give a simple payment protocol inspired by chipTAN and photoTAN and prove its security within our model. We conclude that cryptographic security models can indeed be used to describe the security of real-world systems. They are, however, difficult to apply and always need to be adapted to the specific use case

    Other things besides number: Abstraction, constraint propagation, and string variable types

    Full text link

    Optimization of refinery preheat trains undergoing fouling: control, cleaning scheduling, retrofit and their integration

    Get PDF
    Crude refining is one of the most energy intensive industrial operations. The large amounts of crude processed, various sources of inefficiencies and tight profit margins promote improving energy recovery. The preheat train, a large heat exchanger network, partially recovers the energy of distillation products to heat the crude, but it suffers of the deposition of material over time – fouling – deteriorating its performance. This increases the operating cost, fuel consumption, carbon emissions and may reduce the production rate of the refinery. Fouling mitigation in the preheat train is essential for a profitable long term operation of the refinery. It aims to increase energy savings, and to reduce operating costs and carbon emissions. Current alternatives to mitigate fouling are based on heuristic approaches that oversimplify the representation of the phenomena and ignore many important interactions in the system, hence they fail to fully achieve the potential energy savings. On the other hand, predictive first principle models and mathematical programming offer a comprehensive way to mitigate fouling and optimize the performance of preheat trains overcoming previous limitations. In this thesis, a novel modelling and optimization framework for heat exchanger networks under fouling is proposed, and it is based on fundamental principles. The models developed were validated against plant data and other benchmark models, and they can predict with confidence the main effect of operating variables on the hydraulic and thermal performance of the exchangers and those of the network. The optimization of the preheat train, an MINLP problem, aims to minimize the operating cost by: 1) dynamic flow distribution control, 2) cleaning scheduling and 3) network retrofit. The framework developed allows considering these decisions individually or simultaneously, although it is demonstrated that an integrated approach exploits the synergies among decision levels and can reduce further the operating cost. An efficient formulation of the model disjunctions and time representation are developed for this optimization problem, as well as efficient solution strategies. To handle the combinatorial nature of the problem and the many binary decisions, a reformulation using complementarity constraints is proposed. Various realistic case studies are used to demonstrate the general applicability and benefits of the modelling and optimization framework. This is the first time that first principle predictive models are used to optimize various types of decisions simultaneously in industrial size heat exchanger networks. The optimization framework developed is taken further to an online application in a feedback loop. A multi-loop NMPC approach is designed to optimize the flow distribution and cleaning scheduling of preheat trains over two different time scales. Within this approach, dynamic parameter estimation problems are solved at frequent intervals to update the model parameters and cope with variability and uncertainty, while predictive first principle models are used to optimize the performance of the network over a future horizon. Applying this multi-loop optimization approach to a case study of a real refinery demonstrates the importance of considering process variability on deciding about optimal fouling mitigation approaches. Uncertainty and variability have been ignored in all previous model based fouling mitigation strategies, and this novel multi-loop NMPC approach offers a solution to it so that the economic savings are enhanced. In conclusion, the models and optimization algorithms developed in this thesis have the potential to reduce the operating cost and carbon emission of refining operations by mitigating fouling. They are based on accurate models and deterministic optimization that overcome the limitations of previous applications such as poor predictability, ignoring variability and dynamics, ignoring interactions in the system, and using inappropriate tools for decision making.Open Acces

    Proceedings of the 10th International Chemical and Biological Engineering Conference - CHEMPOR 2008

    Get PDF
    This volume contains full papers presented at the 10th International Chemical and Biological Engineering Conference - CHEMPOR 2008, held in Braga, Portugal, between September 4th and 6th, 2008.FC
    corecore