Dissertations / Theses on the topic 'Separation logic'
Create a spot-on reference in APA, MLA, Chicago, Harvard, and other styles
Consult the top 50 dissertations / theses for your research on the topic 'Separation logic.'
Next to every source in the list of references, there is an 'Add to bibliography' button. Press on it, and we will generate automatically the bibliographic reference to the chosen work in the citation style you need: APA, MLA, Harvard, Chicago, Vancouver, etc.
You can also download the full text of the academic publication as pdf and read online its abstract whenever available in the metadata.
Browse dissertations / theses on a wide variety of disciplines and organise your bibliography correctly.
Wright, Adam. "Structural separation logic." Thesis, Imperial College London, 2013. http://hdl.handle.net/10044/1/17838.
Full textCoughlin, Devin. "Type-Intertwined Separation Logic." Thesis, University of Colorado at Boulder, 2015. http://pqdtopen.proquest.com/#viewpdf?dispub=3704668.
Full textStatic program analysis can improve programmer productivity and software reliability by definitively ruling out entire classes of programmer mistakes. For mainstream imperative languages such as C, C++, and Java, static analysis about the heap---memory that is dynamically allocated at run time---is particularly challenging because heap memory acts as global, mutable state. This dissertation describes how to soundly combine two static analyses that each take vastly different approaches to reasoning about the heap: type systems and separation logic. Traditional type systems take an alias-agnostic, global view of the heap that affords both fast verification and light-weight annotation of invariants holding over the entire program. Separation logic, in contrast, provides an alias-aware, local view of the heap in which invariants can vary at each program point. In this work, I show how type systems and separation logic can be safely and efficiently combined. The result is type-intertwined separation logic, an analysis that applies traditional type-based reasoning to some regions of the program and separation logic to others---converting between analysis representations at region boundaries---and summarizes some portions of the heap with coarse type invariants and others with precise separation logic invariants. The key challenge that this dissertation addresses is the communication and preservation of heap invariants between analyses. I tackle this challenge with two core contributions. The first is type-consistent summarization and materialization, which enables type-intertwined separation logic to both leverage and selectively violate the global type invariant. This mechanism allows the analysis to efficiently and precisely verify invariants that hold almost everywhere. Second, I describe gated separating conjunction, a non-commutative strengthening of standard separating conjunction that expresses local dis-pointing relationships between sub-heaps. Gated separation enables local heap reasoning by permitting the separation logic to frame out portions of memory and prevent the type system from interfering with its contents---an operation that would be unsound in type-intertwined analysis with only standard separating conjunction. With these two contributions, type-intertwined separation logic combines the benefits of both type-like global reasoning and separation-logic-style local reasoning in a single analysis.
Sims, Elodie-Jane. "Pointer analysis and separation logic." Diss., Manhattan, Kan. : Kansas State University, 2007. http://hdl.handle.net/2097/506.
Full textRaza, Mohammad. "Resource Reasoning and Labelled Separation Logic." Thesis, Imperial College London, 2010. http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.523755.
Full textTuerk, Thomas. "A separation logic framework for HOL." Thesis, University of Cambridge, 2011. http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.609585.
Full textWinterstein, Felix. "Separation logic for high-level synthesis." Thesis, Imperial College London, 2016. http://hdl.handle.net/10044/1/33371.
Full textBrochenin, Rémi. "Separation logic : expressiveness, complexity, temporal extension." Phd thesis, École normale supérieure de Cachan - ENS Cachan, 2013. http://tel.archives-ouvertes.fr/tel-00956587.
Full textLong, Byron L. "Validity in a variant of separation logic." [Bloomington, Ind.] : Indiana University, 2009. http://gateway.proquest.com/openurl?url_ver=Z39.88-2004&rft_val_fmt=info:ofi/fmt:kev:mtx:dissertation&res_dat=xri:pqdiss&rft_dat=xri:pqdiss:3378369.
Full textTitle from PDF t.p. (viewed on Jul 9, 2010). Source: Dissertation Abstracts International, Volume: 70-10, Section: B, page: 6348. Adviser: Daniel Leivant.
Hussain, Akbar. "Session types, concurrent separation logic & algebra." Thesis, Queen Mary, University of London, 2013. http://qmro.qmul.ac.uk/xmlui/handle/123456789/8503.
Full textKrishnaswami, Neelakantan R. "Verifying Higher-Order Imperative Programs with Higher-Order Separation Logic." Research Showcase @ CMU, 2012. http://repository.cmu.edu/dissertations/164.
Full textDang, Han Hing [Verfasser], and Bernhard [Akademischer Betreuer] Möller. "Algebraic Calculi for Separation Logic / Han Hing Dang. Betreuer: Bernhard Möller." Augsburg : Universität Augsburg, 2015. http://d-nb.info/1077704933/34.
Full textHurlin, Clément. "Specification and verification of multithreaded object-oriented programs with separation logic." Nice, 2009. http://www.theses.fr/2009NICE4064.
Full textEn premier lieu, nous développons des règles de vérification en logique de séparation pour les primitives en rapport avec le parallélisme : les primitives fork et join qui contrôlent le départ et l’attente des processus, et les verrous rééentrants qui sont utilisés en Java. En second lieu, nous développons trois analyses utilisant la logique de séparation. La première analyse permet de spécifier les séquences d’appels de méthodes autorisées et de vérifier leur cohérence. La deuxième analyse permet de montrer qu’une formula de logique de séparation n’en implique pas une autre. La troisième analyse montre comment paralléliser et optimiser des programmes en réécrivant leurs preuves. Cette thèse développe un système de vérification en logique de séparation pour des programmes orientés-objets parallèles et de nouvelles analyses utilisant la logique de séparation. La logique de séparation est une variante de la logique linéaire qui connaît un récent succès pour la vérification de programmes. Dans la littérature, la logique de séparation a été appliquée à des programmes while simples, des programmes while parallèles, et des programmes objets séquentiels. Dans cette thèse nous continuons ces travaux en adaptant la logique de séparation aux programmes objets parallèles similaires à Java. Dans ce but, nous développons de nouvelles règles de vérification pour les primitives de Java concernant le parallélisme. Pour se faire, nous élaborons un langage modèle similaire à Java qui sert de base à la première partie de la thèse. Ensuite, nous mettons en œuvre un système de vérification en logique de séparation pour les programmes écrits dans ce langage modèle. Dans la première partie de la thèse, nous proposons des règles de vérification pour les primitives fork et join. La primitive fork démarre un nouveau thread et la primitive join permet d'attendre la terminaison d'un thread. Ces primitives sont utilisées par un certain nombre de langages: Java, C++, python, et C#. Ensuite, nous décrivons des règles de vérification pour les verrous réentrants i. E. Les verrous utilisés en Java. Les verrous réentrants – contrairement aux verrous Posix – peuvent être acquis plusieurs fois. Cette propriété simplifie la tâche du programmeur mais complique la vérification. La suite de la thèse présente trois nouvelles analyses utilisant la logique de séparation. La première analyse continue le travail de Cheon et al. Sur les séquences d'appels de méthodes autorisées (aka protocoles). Nous étendons ces travaux aux programmes parallèles et inventons une technique afin de vérifier que les spécifications des méthodes d'une classe sont conformes au protocole de cette classe. La deuxième analyse propose un algorithme pour montrer qu'une formule de logique de séparation n'en implique pas une autre. Cet algorithme fonctionne de la manière suivante: étant donné deux formules A et B, la taille des modèles potentiels de A et B est calculée approximativement, puis; si les tailles obtenues sont incompatibles, l'algorithme conclut que A n'implique pas B. Cet algorithme est utile dans les vérificateurs de programmes car ceux-ci doivent souvent décider des implications. Enfin, la troisième analyse montre comment paralléliser et optimiser des programmes en observant leurs preuves en logique de séparation. Cet algorithme est mis en œuvre dans l'outil éterlou. Pour finir, nous concluons et proposons des pistes pour compléter les résultats de la présente thèse
Matheja, Christoph [Verfasser], Joost-Pieter [Akademischer Betreuer] Katoen, and Radu [Akademischer Betreuer] Iosif. "Automated reasoning and randomization in separation logic / Christoph Matheja ; Joost-Pieter Katoen, Radu Iosif." Aachen : Universitätsbibliothek der RWTH Aachen, 2020. http://d-nb.info/1216175748/34.
Full textMansutti, Alessio. "Reasoning with separation logics : complexity, expressive power, proof systems." Electronic Thesis or Diss., université Paris-Saclay, 2020. http://www.theses.fr/2020UPASG050.
Full textThis thesis proposes an in-depth study of classical decision problems, such as satisfiability and validity, for separation logics: well-known assertion languages developed to verify heap-manipulating programs. The first part of the thesis focus on the notion of reachability in separation logics. Our motivation is twofold: on one side, we want to understand the decidability frontier for fragments of the otherwise undecidable first-order separation logic; on the other side, we want to devise a very expressive separation logic featuring reachability predicates, whose satisfiability problem is decidable with a relatively low complexity (PSpace).In the second part, we take advantage of some of the techniques developed in the first part of the thesis in order to design Hilbert-style axiomatisations for separation logics and other spatial logics. In particular, we introduce the first sound and complete internal proof system for quantified-free separation logic and, by relying on the same technique, we design an axiomatisation for a modal logic enriched with the composition operator from ambient logic (a logic to verify distributed systems). The two proof systems reveal interesting connections between separation logics and ambient logics.In the third part of the thesis, we dig deep in the connections between separation logics and ambient logics, and find surprising similarities and differences, in terms of expressive power and computational complexity, between the separating conjunction of separation logic and the composition operator of ambient logic. In order to carry out our comparison, we devise a suitable framework based on modal logic, which gives us a common ground to study the two logics
Magill, Stephen. "Instrumentation Analysis: An Automated Method for Producing Numeric Abstractions of Heap-Manipulating Programs." Research Showcase @ CMU, 2010. http://repository.cmu.edu/dissertations/73.
Full textLively, Matthew C. "The Extraction of Shock Waves and Separation and Attachment Lines From Computational Fluid Dynamics Simulations Using Subjective Logic." BYU ScholarsArchive, 2012. https://scholarsarchive.byu.edu/etd/3287.
Full textJansen, Christina Verfasser], Joost-Pieter [Akademischer Betreuer] [Katoen, Marieke [Akademischer Betreuer] Huisman, and Thomas [Akademischer Betreuer] Noll. "Static Analysis of Pointer Programs - Linking Graph Grammars and Separation Logic / Christina Jansen ; Joost-Pieter Katoen, Marieke Huisman, Thomas Noll." Aachen : Universitätsbibliothek der RWTH Aachen, 2017. http://d-nb.info/1161809023/34.
Full textJansen, Christina [Verfasser], Joost-Pieter [Akademischer Betreuer] Katoen, Marieke [Akademischer Betreuer] Huisman, and Thomas [Akademischer Betreuer] Noll. "Static Analysis of Pointer Programs - Linking Graph Grammars and Separation Logic / Christina Jansen ; Joost-Pieter Katoen, Marieke Huisman, Thomas Noll." Aachen : Universitätsbibliothek der RWTH Aachen, 2017. http://d-nb.info/1161809023/34.
Full textDias, Ricardo Jorge Freire. "Maintaining the correctness of transactional memory programs." Doctoral thesis, Faculdade de Ciências e Tecnologia, 2013. http://hdl.handle.net/10362/11092.
Full textThis dissertation addresses the challenge of maintaining the correctness of transactional memory programs, while improving its parallelism with small transactions and relaxed isolation levels. The efficiency of the transactional memory systems depends directly on the level of parallelism, which in turn depends on the conflict rate. A high conflict rate between memory transactions can be addressed by reducing the scope of transactions, but this approach may turn the application prone to the occurrence of atomicity violations. Another way to address this issue is to ignore some of the conflicts by using a relaxed isolation level, such as snapshot isolation, at the cost of introducing write-skews serialization anomalies that break the consistency guarantees provided by a stronger consistency property, such as opacity. In order to tackle the correctness issues raised by the atomicity violations and the write-skew anomalies, we propose two static analysis techniques: one based in a novel static analysis algorithm that works on a dependency graph of program variables and detects atomicity violations; and a second one based in a shape analysis technique supported by separation logic augmented with heap path expressions, a novel representation based on sequences of heap dereferences that certifies if a transactional memory program executing under snapshot isolation is free from writeskew anomalies. The evaluation of the runtime execution of a transactional memory algorithm using snapshot isolation requires a framework that allows an efficient implementation of a multi-version algorithm and, at the same time, enables its comparison with other existing transactional memory algorithms. In the Java programming language there was no framework satisfying both these requirements. Hence, we extended an existing software transactional memory framework that already supported efficient implementations of some transactional memory algorithms, to also support the efficient implementation of multi-version algorithms. The key insight for this extension is the support for storing the transactional metadata adjacent to memory locations. We illustrate the benefits of our approach by analyzing its impact with both single- and multi-version transactional memory algorithms using several transactional workloads.
Fundação para a Ciência e Tecnologia - PhD research grant SFRH/BD/41765/2007, and in the research projects Synergy-VM (PTDC/EIA-EIA/113613/2009), and RepComp (PTDC/EIAEIA/ 108963/2008)
Bodin, Martin. "Certified semantics and analysis of JavaScript." Thesis, Rennes 1, 2016. http://www.theses.fr/2016REN1S087/document.
Full textJavaScript is a trending programming language. It is not used in applications in which security may be an important issue. It thus becomes important to be able to control the quality of softwares written in JavaScript. This thesis explores a formal proof approach, which aims at giving a mathematical proof that a given program behaves as expected. To build this proof, we use proof assistants such as Coq—a trusted program enabling to check formal proofs. To state that a JavaScript program is behaving as expected, we first need a semantics of the JavaScript language. This thesis is thus part of the JSCert project, whose aim it to prove a formal semantics for JavaScript. Because of the size of JavaScript's semantics, it is crucial to know how it can be trusted: a typing mistake could compromise the whole semantics. To trust JSCert, we based ourselves on two trust sources. On one hand, JSCert has been designed to be the most similar it can be from the official JavaScript specification, the ECMAScript standard: they use the same data structures, and it is possible to relate each derivation rule in JSCert to a line of ECMAScript. On the other hand, we defined and proved correct with respect to JSCert an interpreter named JSRef. We have been able to run JSRef on JavaScript test suites. The JSCert semantics is not the first formal semantics of JavaScript, but it is the first to propose two distinct ways to relate the formal semantics to the JavaScript language: by having a semantics close to the official specification, and by testing this semantics and comparing it to other interpreters. Instead of independently proving that each JavaScript program behaves as expected, we chose to analyse programs using abstract interpretation. It consists of interpreting the semantics of a programming language with abstract domains. For instance, the concrete value 1 can be replaced by the abstract value +. Abstract interpretation is split into two steps : first, an abstract semantics is built and proven correct with respect to its concrete semantics, then, analysers are built from this abstract semantics. We only focus on the first step in this thesis. The JSCert semantics is huge - more than height hundred derivation rules. Building an abstract semantics using traditional techniques does not scale towards such sizes. We thus designed a new way to build abstract semantics from concrete semantics. Our approach is based on a careful analysis on the structure of derivation rules. It aims at minimising the proof effort needed to build an abstract semantics. We applied our method on several languages. With the goal of applying our approach to JavaScript, we built a domain based on separation logic. This logic require several adaptations to be able to apply in the context of abstract interpretation. This thesis precisely studies these interactions and introduces a new approach to solve them in our abstract interpretation framework. Our domains, although very simple compared to the memory model of JavaScript, seems to enable the proof of already existing analysers. This thesis has thus three main contributions : a trusted formal semantics for the JavaScript, a generic framework to build abstract semantics, and a non-trivial domain for this formalism
Tuch, Harvey Computer Science & Engineering Faculty of Engineering UNSW. "Formal memory models for verifying C systems code." Publisher:University of New South Wales. Computer Science & Engineering, 2008. http://handle.unsw.edu.au/1959.4/41233.
Full textBoudou, Joseph. "Procédures de décision pour des logiques modales d'actions, de ressources et de concurrence." Thesis, Toulouse 3, 2016. http://www.theses.fr/2016TOU30145/document.
Full textThe concepts of action and resource are ubiquitous in computer science. The main characteristic of an action is to change the current state of the modeled system. An action may be the execution of an instruction in a program, the learning of a new fact, a concrete act of an autonomous agent, a spoken word or a planned task. The main characteristic of resources is to be divisible, for instance in order to be shared. Resources may be memory cells in a computer, performing agents, different meanings of a phrase, time intervals or access rights. Together, actions and resources often constitute the temporal and spatial dimensions of a modeled system. Consider for instance the instructions of a computer executed at memory cells or a set of cooperating agents. We observe that in these cases, an interesting modeling of concurrency arises from the combination of actions and resources: concurrent actions are actions performed simultaneously on disjoint parts of the available resources. Modal logics have been successful in modeling both concepts of actions and resources. The relational semantics of a unary modality is a binary relation which allows to access another state from the current state. Hence, unary modalities are convenient to model actions. Similarly, the relational semantics of a binary modality is a ternary relation which allows to access two states from the current state. By interpreting these two states as substates of the current state, binary modalities allow to divide states. Hence, binary modalities are convenient to model resources. In this thesis, we study modal logics used to reason about actions, resources and concurrency. Specifically, we analyze the decidability and complexity of the satisfiability problem of these logics. These problems consist in deciding whether a given formula can be true in any model. We provide decision procedures to prove the decidability and state the complexity of these problems. Namely, we study modal logics with a binary modality used to reason about resources. We are particularly interested in the associativity property of the binary modality. This property is desirable since the separation of resources is usually associative too. But the associativity of a binary modality generally makes the logic undecidable. We propose in this thesis to constrain the valuation of propositional variables to make modal logics with an associative binary modality decidable. The main part of the thesis is devoted to the study of variants of the Propositional Dynamic Logic (PDL). These logics features an infinite set of unary modalities representing actions, structured by some operators like sequential composition, iteration and non-deterministic choice. We first study branching time variants of PDL and prove that the satisfiability problems of these logics have the same complexity as the corresponding branching-time temporal logics. Then we thoroughly study extensions of PDL with an operator for parallel composition of actions called separating parallel composition and based on the semantics of binary modalities. This operator allows to reason about resources, in addition to actions. Moreover, the combination of actions and resources provides a convenient expression of concurrency. In particular, these logics can express situations of cooperation where some actions can be executed only in parallel with some other actions. Finally, our main contribution is to prove that the complexity of the satisfiability problem of a practically useful variant of PDL with separating parallel composition is the same as the satisfiability problem of plain PDL
Serban, Cristina. "Raisonnement automatisé pour la logique de séparation avec des définitions inductives." Thesis, Université Grenoble Alpes (ComUE), 2018. http://www.theses.fr/2018GREAM030/document.
Full textThe main contribution of this thesis is a sound and complete proof system for entailments between inductive predicates, which are frequently encountered when verifying programs that work with dynamically allocated recursive data structures. We introduce a generalized proof system for first-order logic, and then adapt it to separation logic, a framework that addresses many of the difficulties posed by reasoning about dynamically allocated heaps. Soundness and completeness are ensured through four semantic restrictions and we also propose a proof-search semi-algorithm that becomes a decision procedure for the entailment problem when the semantic restrictions hold.This higher-order reasoning about entailments requires first-order decision procedures for the underlying logic when applying inference rules and during proof search. Thus, we provide two decision procedures for separation logic, considering the quantifier-free and the Exists*Forall*-quantified fragments, which were integrated in the open-source, DPLL(T)-based SMT solver CVC4.Finally, we also give an implementation of our proof system for separation logic, which uses these decision procedures. Given some inductive predicate definitions and an entailment query as input, a warning is issued when one or more semantic restrictions are violated. If the entailment is found to be valid, the output is a proof. Otherwise, one or more counterexamples are provided
Gueneau, Armaël. "Mechanized verification of the correctness and asymptotic complexity of programs : the right answer at the right time." Thesis, Université de Paris (2019-....), 2019. http://www.theses.fr/2019UNIP7110.
Full textThis dissertation is concerned with the question of formally verifying that the imple- mentation of an algorithm is not only functionally correct (it always returns the right result), but also has the right asymptotic complexity (it reliably computes the result in the expected amount of time).In the algorithms literature, it is standard practice to characterize the performance of an algorithm by indicating its asymptotic time complexity, typically using Landau’s “big-O” notation. We first argue informally that asymptotic complexity bounds are equally useful as formal specifications, because they enable modular reasoning: a O bound abstracts over the concrete cost expression of a program, and therefore abstracts over the specifics of its implementation. We illustrate—with the help of small illustrative examples—a number of challenges with the use of the O notation, in particular in the multivariate case, that might be overlooked when reasoning informally.We put these considerations into practice by formalizing the O notation in the Coq proof assistant, and by extending an existing program verification framework, CFML, with support for a methodology enabling robust and modular proofs of asymptotic complexity bounds. We extend the existing framework of Separation Logic with Time Credits, which allows to reason at the same time about correctness and time complexity, and introduce negative time credits. Negative time credits increase the expressiveness of the logic, and enable convenient reasoning principles as well as elegant specifications. At the level of specifications, we show how asymptotic complexity specifications using O can be integrated and composed within Separation Logic with Time Credits. Then, in order to establish such specifications, we develop a methodology that allows proofs of complexity in Separation Logic to be robust and carried out at a relatively high level of abstraction, by relying on two key elements: a mechanism for collecting and deferring constraints during the proof, and a mechanism for semi-automatically synthesizing cost expressions without loss of generality.We demonstrate the usefulness and practicality of our approach on a number of increasingly challenging case studies. These include algorithms whose complexity analysis is relatively simple (such as binary search, which is nonetheless out of the scope of many automated complexity analysis tools) and data structures (such as Okasaki’s binary random access lists). In our most challenging case study, we establish the correctness and amortized complexity of a state-of-the-art incremental cycle detection algorithm: our methodology scales up to highly non-trivial algorithms whose complexity analysis intimately depends on subtle functional invariants, and furthermore makes it possible to formally verify OCaml code which can then actually be used as part of real world programs
Li, Huisong. "Shape abstractions with support for sharing and disjunctions." Thesis, Paris Sciences et Lettres (ComUE), 2018. http://www.theses.fr/2018PSLEE060.
Full textShape analyses rely on expressive families of logical properties to infer complex structural invariants, such that memory safety, structure preservation and other memory properties of programs dealing with dynamic data structures can be automatically verified. Many such analyses manipulate abstract memory states that consist of separating conjunctions of basic predicates describing atomic blocks or summary predicates that describe unbounded heap regions like lists or trees using inductive definitions. Moreover, they use finite disjunctions of abstract memory states in order to take into account dissimilar shapes. Although existing analyses enable local reasoning of memory regions, they do, however, have the following issues: (1) The summary predicates are not expressive enough to describe precisely all the dynamic data structures. In particular, a fairly large number of data structures with unbounded sharing, such as graphs, cannot be described inductively in a local manner; (2) Abstract operations that read or write into summaries rely on materialization of memory cells. The materialization operation in general creates new disjunctions, yet the size of disjunctions should be kept small for the sake of efficiency. However, local predicates are not enough to determine the right set of disjuncts that should be clumped together and to define precise abstract join and widen operations. In this thesis, we study separating conjunction-based shape predicates and the related abstract operations, in particular, abstract joining and widening operations that lead to critical modifications of abstract states. We seek a lightweight way to enable some global reasoning in existing shape analyses such that shape predicates are more expressive for abstracting data structures with unbounded sharing and disjuncts can be clumped precisely and efficiently. We propose a shape abstraction based on set variables that when integrated with inductive definitions enables the specification and shape analysis of structures with unbounded sharing. We implemented the shape analysis domain by combining a separation logic-based shape abstract domain of the MemCAD analyzer and a set abstract domain, where the set abstractions are used to track unbounded pointer sharing properties. Based on this abstract domain, we analyzed a group of programs dealing with adjacency lists of graphs. We design a general semantic criterion to clump abstract memory states based on their silhouettes that express global shape properties, \ie, clumping abstract states when their silhouettes are similar. Silhouettes apply not only to the conservative union of disjuncts but also to the weakening of separating conjunctions of memory predicates into inductive summaries. Our approach allows us to define union and widening operators that aim at preserving the case splits that are required for the analysis to succeed. We implement this approach in the MemCAD analyzer and evaluate it on real-world C libraries for different data structures, including doubly-linked lists, red-black trees, AVL-trees and splay-trees. The experimental results show that our approach is able to keep the size of disjunctions small for scalability and preserve case splits that takes into account dissimilar shapes for precision
Nigron, Pierre. "Effectful programs and their proofs in type theory : application to certified compilation and certified packet processing." Electronic Thesis or Diss., Sorbonne université, 2022. http://www.theses.fr/2022SORUS480.
Full textOne way to reason about our programs is to write them directly into a proof assistant. Using the Curry-Howard correspondence, programs and proofs are then one. In order not to undermine the logical consistency of the proof assistant, the system is forced to restrict the programs to have no side effects. However, side effects are ubiquitous and essential in programming. Different techniques such as monads or algebraic effects have emerged to model them, thus offering a way to write imperative programs in purely functional languages. It is therefore quite natural that the results of decades of research invested in reasoning about imperative programs try to be adapted to reasoning about programs with effects. In this thesis, we are first interested in the use of separation logic to reason about programs with effects implemented in a proof assistant. We study an approach to describe the behaviour of effects using a predicate transformer. We focus first on freshness, then on packet processing and zero-copy. To study our approach, we rely on two concrete examples which are the SimplExpr module of CompCert and the decoder library Nom. Finally, in order to compile the packet parsers produced to C, we propose a refinement method removing the continuations introduced by the use of a free monad and performing some optimizations
Faye, Wagane. "The Casamance Separatism from independence claim to resource logic." Thesis, Monterey, Calif. : Springfield, Va. : Naval Postgraduate School ; Available from National Technical Information Service, 2006. http://library.nps.navy.mil/uhtbin/hyperion/06Jun%5FFaye.pdf.
Full textThesis Advisor(s): Letitia Lawson and Jessica Piombo. "June 2006." AD-A451 368. Includes bibliographical references. Also available via the World Wide Web.
Lengál, Ondřej. "Automaty v nekonečně stavové formální verifikaci." Doctoral thesis, Vysoké učení technické v Brně. Fakulta informačních technologií, 2015. http://www.nusl.cz/ntk/nusl-261279.
Full textBardou, Romain. "Vérification de programmes avec pointeurs à l'aide de régions et de permissions." Thesis, Paris 11, 2011. http://www.theses.fr/2011PA112220/document.
Full textDeductive verification consists in annotating programs by a specification, i.e. logic formulas which describe the behavior of the program, and prove that programs verify their specification. Tools such as the Why platform take a program and its specification as input and compute logic formulas such that, if they are valid, the program verifies its specification. These logic formulas can be proven automatically or using proof assistants.When a program is written in a language supporting pointer aliasing, i.e. if several variables may denote the same memory cell, then reasoning about the program becomes particularly tricky. It is necessary to specify which pointers may or may not be equal. Invariants of data structures, in particular, are harder to maintain.This thesis proposes a type system which allows to structure the heap in a modular fashion in order to control pointer aliases and data invariants. It is based on the notions of region and permission. Programs are then translated to Why such that pointers are separated as best as possible, to facilitate reasoning. This thesis also proposes an inference mechanism to alleviate the need to write region operations introduced by the language. A model is introduced to describe the semantics of the language and prove its safety. In particular, it is proven that if the type of a pointer tells that its invariant holds, then this invariant indeed holds in the model. This work has been implemented as a tool named Capucine. Several examples have been written to illustrate the language, and where verified using Capucine
Illous, Hugo. "Abstractions relationnelles de la mémoire pour une analyse compositionnelle de structures de données." Thesis, Paris Sciences et Lettres (ComUE), 2019. http://www.theses.fr/2019PSLEE015.
Full textStatic analyses aim at inferring semantic properties of programs. We distinguish two important classes of static analyses: state analyses and relational analyses. While state analyses aim at computing an over-approximation of reachable states of programs, relational analyses aim at computing functional properties over the input-output states of programs. Relational analyses offer several advantages, such as their ability to infer semantics properties more expressive compared to state analyses. Moreover, they offer the ability to make the analysis compositional, using input-output relations as summaries for procedures, which is an advantage for scalability. In the case of numeric programs, several analyses have been proposed that utilize relational numerical abstract domains to describe relations. On the other hand, designing abstractions for relations over input-output memory states and taking shapes into account is challenging. In this Thesis, we propose a set of novel logical connectives to describe such relations, which rely on separation logic. This logic can express that certain memory areas are unchanged, freshly allocated, or freed, or that only part of the memory is modified (and how). Using these connectives, we build an abstract domain and design a compositional static analysis by abstract interpretation that over-approximates relations over memory states containing inductive structures. We implement this approach as a plug-in of the FRAMA-C analyzer. We evaluate it on small programs written in C that manipulate singly linked lists and binary trees, but also on a bigger program that consists of a part of Emacs. The experimental results show that our approach allows us to infer more expressive semantic properties than states analyses, from a logical point of view. It is also much faster on programs with an important number of function calls without losing precision
Bambaci, Juliana. "Presidential discretion in separation of powers systems /." May be available electronically:, 2007. http://proquest.umi.com/login?COPT=REJTPTU1MTUmSU5UPTAmVkVSPTI=&clientId=12498.
Full textKilic, Alper, and Johan Åkesson. "Kartläggning av önskvärda egenskaper i arkitekturer samt ramverk för separation av användargränssnitt från logik." Thesis, Malmö universitet, Fakulteten för teknik och samhälle (TS), 2019. http://urn.kb.se/resolve?urn=urn:nbn:se:mau:diva-20669.
Full textSookbirsingh, Rudy. "Salt separation processes in salt cedar Tamarix ramosissima (Ledeb) /." To access this resource online via ProQuest Dissertations and Theses @ UTEP, 2009. http://0-proquest.umi.com.lib.utep.edu/login?COPT=REJTPTU0YmImSU5UPTAmVkVSPTI=&clientId=2515.
Full textLiang, Yifan. "Separation optimality and generalized source-channel coding for time-varying channels /." May be available electronically:, 2008. http://proquest.umi.com/login?COPT=REJTPTU1MTUmSU5UPTAmVkVSPTI=&clientId=12498.
Full textKhurana, Tarun K. "On-chip isotachophoresis assays for high sensitivity electrophoretic preconcentration, separation, and indirect detection /." May be available electronically:, 2008. http://proquest.umi.com/login?COPT=REJTPTU1MTUmSU5UPTAmVkVSPTI=&clientId=12498.
Full textDelgado, Guillermo Guadalupe. "Treatment of RO concentrate using VSEP technology." To access this resource online via ProQuest Dissertations and Theses @ UTEP, 2009. http://0-proquest.umi.com.lib.utep.edu/login?COPT=REJTPTU0YmImSU5UPTAmVkVSPTI=&clientId=2515.
Full textFernandez, Alvaro. "Moving from rocks to hydrologic systems are Cu, Fe, and Zn isotopes fractionated during weathering? /." To access this resource online via ProQuest Dissertations and Theses @ UTEP, 2008. http://0-proquest.umi.com.lib.utep.edu/login?COPT=REJTPTU0YmImSU5UPTAmVkVSPTI=&clientId=2515.
Full textDucroux, Amélie. "Le problème de la relation dans la poésie de T.S. Eliot." Thesis, Lyon 2, 2011. http://www.theses.fr/2011LYO20065.
Full textThe problem of relation has often been perceived by readers of Eliot as a lack of logical or grammatical relations, which makes it difficult to understand his poems. This perceived deficiency causes the reader to look for relations in the very structure of the poem, in the texts the poem alludes to, or in the mythical structures it relies upon. The reader becomes aware of the singularity of Eliot’s sometimes misleading intertextual practice. The poetry of T.S. Eliot plays with and distorts syntactic, logical and temporal relations. His poetics of indeterminacy precludes any attempt to establish logical relations within the poems. Yet the very ambiguity of Eliot’s syntax and the paradoxical nature of his dialectical poetics make of reading itself an unlimited and unrestrained process. The poet constantly addresses the problem of relation. The problem itself is inseparable from the poetic idiom which gives it voice. It is explored along the lines of a tension between conflicting relational dynamics, creating a new logic which relies on sensibility as well as on thought and rationality. Relations deconstruct the poem; they are pregnant while remaining “hints half guessed”. Through his poetry, T.S. Eliot never stopped questioning writing itself. The act of writing results from a decision; it is an articulation offering the possibility of continuity while marking a rupture at the same time. By giving birth to the poem, the poet links it to its own exteriority. But such linkage also reiterates the division inherent to language itself. The problem of this ambiguous relation to writing is expressed through the relations established, within the poems, between discordant voices, between the subject and its masks, and through a constant oscillation between conflicting discursive and metaphysical stances. The construction of the poem thus relies on the very possibility of its deconstruction. Eliot offers poems in deconstruction in which the subject itself can only emerge through an act of self-dispossession. Eliot does not merely reflect upon writing through his poetry. Writing itself becomes the means of his own definition as a poet. Writing comes first. It is the condition of Eliot’s poetic exploration of relation
Snell, Brandon Charles. "The Origins of Ethno/National Separatist Terrorism: A Cross-National Analysis of the Background Conditions of Terrorist Campaigns." Wright State University / OhioLINK, 2009. http://rave.ohiolink.edu/etdc/view?acc_num=wright1244481182.
Full textBobot, François. "Logique de séparation et vérification déductive." Phd thesis, Université Paris Sud - Paris XI, 2011. http://tel.archives-ouvertes.fr/tel-00652508.
Full textKimmel, Pierre. "Extensions modales des logiques de ressources : expressivité et calculs." Thesis, Université de Lorraine, 2018. http://www.theses.fr/2018LORR0299/document.
Full textThe design of new logical formalisms is at the heart of several problems in formal methods. Those formalisms must respond to requirements both concerning modelling (they must be able to describe certain systems) and computing (they must provide complete and sound calculus methods). In this context, we look at resource logics, and in particular BI and BBI logics, that deal with the separation and sharing of resources and have led to several separation logics whose applications to software verification have been widely developped recently. We propose in this thesis, starting from BI and BBI logics, to study some modal and epistemic separation logics by focusing on their modelling capacities and their expresiveness, as well as on the new proof calculi for those logics. A first study deals with the modelling of dynamic resource properties through new logic LTBI, which is a temporal separation logic, based on BI logic and temporal modalities. This logic notably offers interesting perspectives in temporal branching modelling, allowing for instance to characterize multi-thread processes. A complementary study concerns the modelling of access by agents to properties under the conditions of posessing some resources, through a new logic ERL, which is an epistemic separation logic, based on BBI logic and epistemic modalities. This logic allows many modellings of access control systems. In order to extend the expressivity of such separation logics, like BBI logic and its variants, a study on the internalization of resources symbols in the logic’s syntax has been developed through the new logics HRL and HBBI (hybrid version of BBI). Internalization allows both the extension of the expressivity of logics and the axiomatisation of BBI logic and some of its variants. In addition to the conception of those logics, the study of their semantics and their modelling capacities, a part of this thesis is dedicated to the definition of proof calculs, here tableaux calculus, for those new logics, as well as their proof of soundness and completeness
Piroska, Marian-Leonard. "Engineering artificial biomolecular condensates to study the aggregation of α-Synuclein." Electronic Thesis or Diss., Sorbonne université, 2023. https://accesdistant.sorbonne-universite.fr/login?url=https://theses-intra.sorbonne-universite.fr/2023SORUS542.pdf.
Full textNeurodegenerative diseases, such as Alzheimer's, Parkinson's, and Huntington's disease, are incurable illnesses characterized by the progressive degeneration of neurons, leading to cognitive and motor deficits in affected individuals. The development of effective treatments is currently limited by our incomplete understanding of the underlying mechanisms that drive disease initiation and progression. One prevailing characteristic observed in the tissues affected by neurodegenerative diseases is the presence of aggregated proteins, which have become hallmarks of diseases such as Parkinson’s and Alzheimer’s. Thus, the aggregation process is believed to play a pivotal role in disease pathogenesis. However, the specific mechanisms underlying the transition of soluble proteins to their aggregated state remain elusive. Recent research has proposed phase separation (PS) as a critical intermediate step in the formation of protein aggregates. PS is a physical phenomenon wherein certain proteins undergo a phase transition, forming distinct liquid-like droplets within the cellular environment. Biomolecular condensates are involved in various physiological cellular processes, but are also increasingly believed to be subject to aberrant behaviours that can trigger pathological conditions. Although promising, studying the role of PS in the context of neurodegenerative diseases is a challenging task, due to the intricate composition of cellular condensates. They consist of tens to hundreds of different biomolecules, including proteins, nucleic acids, and lipids, creating a complex milieu that demands innovative research approaches. To improve the study of LLPS in the context of neurodegenerative diseases, we have developed a method for the controlled formation and dissolution of biomolecular condensates enriched in proteins involved in pathological aggregation. First, we created condensates containing α-synuclein (α-Syn), the main pathological factor in Parkinson’s disease and other pathologies. α-Syn is known as a prion-like protein, meaning that its aggregates spreads from cell to cell and template the aggregation of soluble cytosolic α-Syn, promoting the progression of the disease. However, little is known about this phenomenon with respect to the condensed state of the protein. To simulate this phenomenon, we exposed cells expressing our α-Syn condensates to preformed α-Syn aggregates in fibrillar form. We observed that fibrils triggered the transition of condensates from their liquid-like state to an aggregated form with solid-like properties and exhibiting biochemical markers characteristic of amyloids. This allowed us to propose a model where the condensed phase of α-Syn speeds up the propagation of pathological aggregates, by providing a pool of concentrated protein that can undergo more easily an amyloid transition via the prion-like pathway. Subsequently, we have built artificial condensates enriched in α-Syn together with synapsin. In neurons, α-Syn and synapsin interact at the presynaptic termini, where they play an important role in the release of neurotransmitters by controlling the clustering, trafficking and release of membrane-enclosed neurotransmitter containers called synaptic vesicles. In our setting α-Syn/synapsin condensates were also subject to a liquid-to-solid transition mediated by α-Syn fibrils
Toudic, Hugo. "Inventer la république. L'héritage de Montesquieu dans la controverse constitutionnelle entre Antifédéralistes et Fédéralistes (1787-1789)." Electronic Thesis or Diss., Sorbonne université, 2024. https://accesdistant.sorbonne-universite.fr/login?url=https://theses-intra.sorbonne-universite.fr/2024SORUL033.pdf.
Full textCould it be that the influence of Montesquieu on the Founding Fathers' ideas has been largely overlooked? That is what this dissertation aims at both proving and correcting. A mere historiographic study of influential philosophical thought in the late eighteenth century shows that the predominant importance of Montesquieu's philosophy is not met with extensive and careful academic works capable of finding and then analyzing the way in which the Founding Fathers borrowed from his philosophy. Yet, such an analysis would permit us to understand why Montesquieu was considered an authority and even, according to the very words of the Founding Fathers, an oracle of the science of politics. Furthermore, this research would finally allow to lend cachet within the European academic world to a masterpiece of political philosophy, the Federalist papers, whom no less than Tocqueville once praised and which remains the very secular bible of the American Republic
Michalak, Thomas. "Les Assemblées parlementaires, juge pénal : analyse d’un paradigme irréalisable : (1789-1918)." Electronic Thesis or Diss., Paris 2, 2020. https://buadistant.univ-angers.fr/login?url=https://bibliotheque.lefebvre-dalloz.fr/secure/isbn/9782247218530.
Full textAt first glance, the title refers to the judicial activity of the Cour des pairs (1814-1848) and the Senate of the Third Republic (1875-1940). These are the most striking involvements of French legislative bodies in rendering justice. The trials of the ending Restauration ministers, and the one of Louis Malvy seem to be well known, but in reality these are only imperfectly so. In both cases, the upper house has turned away from its initial mission of legislator and supervisor of the government to transform itself, in a very incomplete way, into criminal courts. However, study only these two cases is not enough to define the mission of a parliamentary jurisdiction. The concept of Haute Cour de justice must therefore be understood in its entirety and in its history. A history which, like many others, is marked by the Revolution, which will influence the 19th and 20th centuries, and set a French prototype of political court. These Hautes Cours possess special competencies: ratione personae et ratione materiae. They judge politicians, but since the Revolution one foresees the difficulty of doing so with criminal law, which is hardly suited to the resolution of political disputes. Finally, the French Haute Cour is also a tribunal for major political crimes, namely, serious attacks on sovereignty. It is thereforce a question of recount the history of the “Tribunal supreme” in order to reveal the concept of political justice as an aporia
Quinart, Emilien. "L'émancipation du pouvoir réglementaire (1914-1958)." Electronic Thesis or Diss., Université de Lille (2018-2021), 2019. https://buadistant.univ-angers.fr/login?url=https://bibliotheque.lefebvre-dalloz.fr/secure/isbn/9782247210275.
Full textAt the end of the 19th century, the Parliamentary Republic took root by exalting the principles of 1789 French Revolution and rejecting personal power. Following this ideal, the Executive’s power to make regulations is dreaded – only allowed when strictly subordinate to the law supremacy. In the 20th century, the situation has changed. Wars and crises caused an essential transformation of the activities of the State, which disturbed the exercise of legislative functions and republican ideals. This thesis aims to explain how, between 1914 and 1958, the Executive Branch recovered a power to make regulations, that exceeds the mere implementation of legislation. The data show that this emancipation process stemmed from both disruption of practices and constitutional violations, gradually establishing a new law – thanks to the influence of law professors and advisory departments of the Conseil d’Etat. This dynamic relied on the need for Executive regulation to protect the security and the continuity of the State. Progressively, that kind of regulation got an autonomous constitutional basis, and the Executive enjoyed an increased level of discretion to enact it. The result is that, already under the Third and Fourth French Republics, the implementation of legislation no longer defined the source and the scope of the power to make regulations. Finally, these findings allow to challenge the current understanding of the Constitution of the Fifth Republic : the articles 16, 21, 34, 37, 38, 41 and 92 should no longer be considered as “innovations”, but only as a formalisation and a systematisation what previous constitutional law introduced
Van, Rooijen Lorijn. "Une approche combinatoire du problème de séparation pour les langages réguliers." Thesis, Bordeaux, 2014. http://www.theses.fr/2014BORD0229/document.
Full textThe separation problem, for a class S of languages, is the following: given two input languages, does there exist a language in S that contains the first language and that is disjoint from the second langage ?For regular input languages, the separation problem for a class S subsumes the classical membership problem for this class, and provides more detailed information about the class. This separation problem first emerged in an algebraic context in the form of pointlike sets, and in a profinite context as a topological separation problem. These problems have been studied for specific classes of languages, using involved techniques from the theory of profinite semigroups.In this thesis, we are not only interested in showing the decidability of the separation problem for several subclasses of the regular languages, but also in constructing a separating language, if it exists, and in the complexity of these problems.We provide a generic approach, based on combinatorial arguments, to proving the decidability of this problem for a given class. Using this approach, we prove that the separation problem is decidable for the classes of piecewise testable languages, unambiguous languages, and locally (threshold) testable languages. These classes are defined by different fragments of first-order logic, and are among the most studied classes of regular languages. Furthermore, our approach yields a description of a separating language, in case it exists
Kaděrka, Petr. "Systém pro zobrazování černobílých snímků v nepravých barvách (Pseudocolor)." Master's thesis, Vysoké učení technické v Brně. Fakulta elektrotechniky a komunikačních technologií, 2008. http://www.nusl.cz/ntk/nusl-217184.
Full textHou, Zhe. "Labelled sequent calculi and automated reasoning for assertions in separation logic." Phd thesis, 2015. http://hdl.handle.net/1885/155766.
Full textSaravia, Andrés Román. "Cálculo de tableaux para fórmulas elementales en lógicas de separación." Bachelor's thesis, 2020. http://hdl.handle.net/11086/15302.
Full textEn este trabajo final investigamos métodos computacionales de razonamiento para lenguajes modales dinámicos. Por lenguajes dinámicos nos referimos a formalismos que permitan cambiar la estructura subyacente a medida que se evalúa una fórmula. En particular, estudiaremos lenguajes que combinan operadores de la lógica modal, con operadores dinámicos de las lógicas de separación llamados lógicas modales de separación (MSL). Nos centraremos en el desarrollo de un cálculo de tableaux etiquetado para una lógica que combina el operador modal <> clásico, la conjunción de separación * y la constante 'emp'. Para dicho desarrollo, nos basaremos en las llamadas 'fórmulas elementales', un conjunto de fórmulas que describen propiedades básicas sobre la estructura de los modelos, y que son más fáciles de manipular. Gracias a que el lenguaje de las fórmulas elementales es lógicamente equivalente a la MSL mencionada antes, el cálculo obtenido es también completo para esta lógica.
In this work we investigate computational reasoning methods for dynamic modal languages. By dynamic languages we mean formalisms that allow the underlying structure to change as a formula is being evaluated. In particular, we will study languages that combine operators from modal logic with operators from separation logic. The obtained family of logics is called modal separation logic (MSL). We will focus on developing a labeled tableaux calculus for a logic that combines the classic modal <> operator, the conjunction of separation * and the constant 'emp'. This fragment is denoted by MSL(<>,*). For this development, we will base ourselves on the so-called 'elementary formulas', a set of formulas that describe basic properties on the structure of the models. These formulas are easier to manipulate. Since the language of the elementary formulas is logically equivalent to the aforementioned fragment MSL(<>,*), the calculus obtained is also complete for this logic.
Fil: Saravia, Andrés Román. Universidad Nacional de Córdoba. Facultad de Matemática, Astronomía, Física y Computación; Argentina.
Rearte, Lucas Agustín. "Analizando la forma de estructuras de datos no lineales en memoria dinámica con Separation Logic." Bachelor's thesis, 2017. http://hdl.handle.net/11086/5838.
Full textPresentamos un shape analysis con garantı́as de terminación para programas que manipulan estructuras de datos no lineales como árboles binarios. El análisis se basa en una ejecución simbólica de los programas sobre estados abstractos compuestos por fórmulas de un conjunto restringido de la Separation Logic. Dada una precondición, calcula automáticamente una postcondición e invariantes concisos para los ciclos del programa. El uso de un nivel de relevancia para las variables según el tipo de manipulación que sufren permite lograr un balance entre precisión y abstracción en las fórmulas. Mostramos los resultados obtenidos por un prototipo que implementa nuestro análisis sobre una variedad de ejemplos.
We present a terminating shape analysis for programs manipulating non- linear data structures such as binary trees. The analysis is based on symbolic execution of programs over abstract states composed by formulæ of a restricted subset of Separation Logic. Given a precondition, it automatically calculates concise postconditions and invariants for program loops. The use of relevan- ce level of program variables depending on the manipulations applied on them gives us a balance between precision and abstraction in the formulæ. We re- port experimental results obtained from running a prototype implementing our analysis on a variety of examples.