291 |
Analýza algoritmů booleovských operací nad obecnými polygony / Analysis of General Polygon Boolean Operation AlgorithmsDaněk, Tomáš January 2008 (has links)
This thesis deals with general polygon boolean operation algorithms. Boolean operations are e.g. intersection, union or difference. A general polygon can be e.g. a selfinterecting polygon with inner hole. Clipping of polygons against a rectangular window is probably the most familiar boolean operation on polygons. At first, basic definitions are listed. Then the principles of a selected set of boolean operation algorithms are reviewed. Finally, a complex comparison of the algorithms is undertaken. Performance as well as the ability to handle degenerate cases are tested. The output of this thesis is an overall evaluation of algorithm properties and a dynamic library that contains the implementation of all of the tested algorithms.
|
292 |
Automated Generation of EfficientBitslice Implementations forArbitrary Sboxes / Automatiserad generering av effektiva bitvisaimplementeringar för godtyckliga lådorBariant, Augustin January 2023 (has links)
Whitebox cryptography aims at protecting standard cryptographic algorithmsthat execute in attacker-controlled environments. In these, the attacker is ableto read a secret key directly from memory. Common implementations mask alldata at runtime and operate on masked data by using many small precomputedtables. Practical whiteboxes involve trade-offs between security and executionspeed, to limit their footprints and enable applications such as real-time videostreaming.To improve this compromise, we study the use of bitslicing (or bitparallelism)to implement whiteboxes. Bitslicing is commonly used to writefast constant-time implementations of cryptographic algorithms and relies onthe synthesis of boolean circuits implementing the corresponding algorithms.The synthesis of optimal circuits for lookup tables is resource intensive andgenerally only performed once. In a whitebox context however, many randomlookup tables are generated at compile-time. We therefore require the booleancircuit generation to be time efficient.In this master thesis, we review the existing circuit-synthesis algorithms,and analyse their usability in the whitebox context. In particular, we studythe technique of Binary Decision Diagrams to generate efficient circuits ina cheap and adaptable manner. We implemented a flexible version of thisalgorithm as a C++ library. Eventually, we go through different techniques toevaluate the generated circuits and analyse the performances of our algorithm,and recommand the best parameters for the whitebox context. / Vit-låda kryptografi syftar till att skydda kryptografiska standardalgoritmersom körs i miljöer som kontrolleras av angripare, där angriparen kan läsa enhemlig nyckel direkt från minnet. Vanliga tillämpningar maskerar alla data vidkörning och bearbetar maskerade data med hjälp av många små förberäknadetabeller. Praktiska vit-låda innebär att man måste göra avvägningar mellansäkerhet och exekveringshastighet, för att begränsa deras fotavtryck och möjliggöratillämpningar som till exempel videoströmning i realtid.För att förbättra denna kompromiss studerar vi användningen av bitslicing(eller bit-parallelism) för att genomföra vit-låda. Bitslicing används vanligenför att skriva snabba konstanttidsimplementationer av kryptografiska algoritmeroch kräver syntes av boolska kretsar som implementerar motsvarande funktioner.Syntesen av optimala kretsar för uppslagstabeller är resurskrävande och utförsi allmänhet bara en gång. I ett vit-låda-sammanhang genereras dock mångaslumpmässiga uppslagstabeller vid kompilering, och därför kräver vi attgenereringen av boolska kretsar är tidseffektiv.I denna masteruppsats går vi igenom de befintliga algoritmerna för kretssyntesoch analyserar deras användbarhet i vit-låda-sammanhang. Vi studerar särskilttekniken med binära beslutsdiagram för att generera effektiva kretsar på ettbilligt och anpassningsbart sätt. Vi har implementerat en flexibel version avdenna algoritm som ett C++-bibliotek. Slutligen går vi igenom olika teknikerför att utvärdera de genererade kretsarna och analysera vår algoritms prestandaoch rekommenderar de bästa parametrarna för whitebox-kontexten. / La cryptographie en boîte blanche est connue comme protection pour desalgorithmes cryptographiques s’exécutant dans des environnements contrôléspar l’attaquant. L’approche classique consiste à remplacer les opérations pardes accès à des tables précalculées, ce qui a un coût en performance. Il estdifficile d’obtenir un bon compromis entre sécurité et vitesse d’exécution pourdes applications lourdes telles que la diffusion de contenus vidéos en tempsréel.Le parallélisme au bit ou bitslicing est utilisé en cryptographie traditionnellepour accélérer les implémentations, mais aussi en boîte blanche. Cettetechnique d’implémentation demande la synthèse d’un circuit booléen pourchaque table, recherche qui peut être très coûteuse en temps. En pratique, ilest commun de regénérer régulièrement toutes les tables utilisées dans uneboîte blanche pour renouveler sa défense, ce qui complique l’application dubit-parallélisme.Nous présentons dans cette thèse de master notre effort pour une synthèseefficace de circuits booléens à l’usage de la compilation de boîtes blanchesparallèles au bit. Nous publierons avec cet article une bibliothèque C++ etun module de compilation LLVM pour l’écriture d’implémentation bitslicée,avec un objectif de performance et de lisibilité.
|
293 |
On Statistical Properties of Arbiter Physical Unclonable FunctionsGajland, Phillip January 2018 (has links)
The growing interest in the Internet of Things (IoT) has led to predictions claiming that by 2020 we can expect to be surrounded by 50 billion Internet connected devices. With more entry points to a network, adversaries can potentially use IoT devices as a stepping stone for attacking other devices connected to the network or the network itself. Information security relies on cryptographic primitives that, in turn, depend on secret keys. Furthermore, the issue of Intellectual property (IP) theft in the field of Integrated circuit (IC) design can be tackled with the help of unique device identifiers. Physical unclonable functions (PUFs) provide a tamper-resilient solution for secure key storage and fingerprinting hardware. PUFs use intrinsic manufacturing differences of ICs to assign unique identities to hardware. Arbiter PUFs utilise the differences in delays of identically designed paths, giving rise to an unpredictable response unique to a given IC. This thesis explores the statistical properties of Boolean functions induced by arbiter PUFs. In particular, this empirical study looks into the distribution of induced functions. The data gathered shows that only 3% of all possible 4-variable functions can be induced by a single 4 stage arbiter PUF. Furthermore, some individual functions are more than 5 times more likely than others. Hence, the distribution is non-uniform. We also evaluate alternate PUF designs, improving the coverage vastly, resulting in one particular implementation inducing all 65,536 4-variable functions. We hypothesise the need for n XORed PUFs to induce all 22n possible n-variable Boolean functions.
|
294 |
Logic-based techniques for program analysis and specification synthesisFeliú Gabaldón, Marco Antonio 19 November 2013 (has links)
La Tesis investiga técnicas ágiles dentro del paradigma declarativo para dar solución a dos problemas: el análisis de programas y la inferencia de especificaciones a partir de programas escritos en lenguajes multiparadigma y en lenguajes imperativos con tipos, objetos, estructuras y punteros. Respecto al estado actual de la tesis, la parte de análisis de programas ya está consolidada, mientras que la parte de inferencia de especificaciones sigue en fase de desarrollo activo.
La primera parte da soluciones para la ejecución de análisis de punteros especificados en Datalog. En esta parte se han desarrollado dos técnicas de ejecución de especificaciones en dicho lenguaje Datalog: una de ellas utiliza resolutores de sistemas de ecuaciones booleanas, y la otra utiliza la lógica de reescritura implementada eficientemente en el lenguaje Maude.
La segunda parte desarrolla técnicas de inferencia de especificaciones a partir de programas. En esta parte se han desarrollado dos métodos de inferencia de especificaciones. El primer método se desarrolló para el lenguaje lógico-funcional Curry y permite inferir especificaciones ecuacionales mediante interpretación abstracta de los programas. El segundo método está siendo desarrollado para lenguajes imperativos realistas, y se ha aplicado a un subconjunto del lenguaje de programación C. Este método permite inferir especificaciones en forma de reglas que representan las distintas relaciones entre las propiedades que el estado de un programa satisface antes y después de su ejecución. Además, estas propiedades son expresables en términos de las abstracciones funcionales del propio programa, resultando en una especificación de muy alto nivel y, por lo tanto, de más fácil comprensión. / Feliú Gabaldón, MA. (2013). Logic-based techniques for program analysis and specification synthesis [Tesis doctoral]. Universitat Politècnica de València. https://doi.org/10.4995/Thesis/10251/33747
|
295 |
Functional analysis of High-Throughput data for dynamic modeling in eukaryotic systemsFlöttmann, Max 20 June 2013 (has links)
Das Verhalten Biologischer Systeme wird durch eine Vielzahl regulatorischer Prozesse beeinflusst, die sich auf verschiedenen Ebenen abspielen. Die Forschung an diesen Regulationen hat stark von den großen Mengen von Hochdurchsatzdaten profitiert, die in den letzten Jahren verfügbar wurden. Um diese Daten zu interpretieren und neue Erkenntnisse aus ihnen zu gewinnen, hat sich die mathematische Modellierung als hilfreich erwiesen. Allerdings müssen die Daten vor der Integration in Modelle aggregiert und analysiert werden. Wir präsentieren vier Studien auf unterschiedlichen zellulären Ebenen und in verschiedenen Organismen. Zusätzlich beschreiben wir zwei Computerprogramme die den Vergleich zwischen Modell und Experimentellen Daten erleichtern. Wir wenden diese Programme in zwei Studien über die MAP Kinase (MAP, engl. mitogen-acticated-protein) Signalwege in Saccharomyces cerevisiae an, um Modellalternativen zu generieren und unsere Vorstellung des Systems an Daten anzupassen. In den zwei verbleibenden Studien nutzen wir bioinformatische Methoden, um Hochdurchsatz-Zeitreihendaten von Protein und mRNA Expression zu analysieren. Um die Daten interpretieren zu können kombinieren wir sie mit Netzwerken und nutzen Annotationen um Module identifizieren, die ihre Expression im Lauf der Zeit ändern. Im Fall der humanen somatischen Zell Reprogrammierung führte diese Analyse zu einem probabilistischen Boolschen Modell des Systems, welches wir nutzen konnten um neue Hypothesen über seine Funktionsweise aufzustellen. Bei der Infektion von Säugerzellen (Canis familiaris) mit dem Influenza A Virus konnten wir neue Verbindungen zwischen dem Virus und seinem Wirt herausfinden und unsere Zeitreihendaten in bestehende Netzwerke einbinden. Zusammenfassend zeigen viele unserer Ergebnisse die Wichtigkeit von Datenintegration in mathematische Modelle, sowie den hohen Grad der Verschaltung zwischen verschiedenen Regulationssystemen. / The behavior of all biological systems is governed by numerous regulatory mechanisms, acting on different levels of time and space. The study of these regulations has greatly benefited from the immense amount of data that has become available from high-throughput experiments in recent years. To interpret this mass of data and gain new knowledge about studied systems, mathematical modeling has proven to be an invaluable method. Nevertheless, before data can be integrated into a model it needs to be aggregated, analyzed, and the most important aspects need to be extracted. We present four Systems Biology studies on different cellular organizational levels and in different organisms. Additionally, we describe two software applications that enable easy comparison of data and model results. We use these in two of our studies on the mitogen-activated-protein (MAP) kinase signaling in Saccharomyces cerevisiae to generate model alternatives and adapt our representation of the system to biological data. In the two remaining studies we apply Bioinformatic methods to analyze two high-throughput time series on proteins and mRNA expression in mammalian cells. We combine the results with network data and use annotations to identify modules and pathways that change in expression over time to be able to interpret the datasets. In case of the human somatic cell reprogramming (SCR) system this analysis leads to the generation of a probabilistic Boolean model which we use to generate new hypotheses about the system. In the last system we examined, the infection of mammalian (Canis familiaris) cells by the influenza A virus, we find new interconnections between host and virus and are able to integrate our data with existing networks. In summary, many of our findings show the importance of data integration into mathematical models and the high degree of connectivity between different levels of regulation.
|
296 |
Binary Decision Diagrams for Random Boolean FunctionsGröpl, Clemens 03 May 1999 (has links)
Binary Decision Diagrams (BDDs) sind eine Datenstruktur für Boolesche Funktionen, die auch unter dem Namen branching program bekannt ist. In ordered binary decision diagrams (OBDDs) müssen die Tests einer festen Variablenordnung genügen. In free binary decision diagrams (FBDDs) darf jede Variable höchstens einmal getestet werden. Die Effizienz neuer Varianten des BDD-Konzepts wird gewöhnlich anhand spektakulärer (worst-case) Beispiele aufgezeigt. Wir verfolgen einen anderen Ansatz und vergleichen die Darstellungsgrößen für fast alle Booleschen Funktionen. Während I. Wegener bewiesen hat, daß für die `meisten' n die erwartete OBDD-Größe einer zufälligen Booleschen Funktion von n Variablen gleich der worst-case Größe bis auf Terme kleinerer Ordnung ist, zeigen wir daß dies nicht der Fall ist für n innerhalb von Intervallen konstanter Länge um die Werte n = 2h + h. Ferner gibt es Bereiche von n, in denen minimale FBDDs fast immer um mindestens einen konstanten Faktor kleiner sind als minimale OBDDs. Unsere Hauptsätze ha ben doppelt exponentielle Wahrschein- lichkeitsschranken (in n). Außerdem untersuchen wir die Entwicklung zufälliger OBDDs und ihrer worst-case Größe und decken dabei ein oszillierendes Verhalten auf, das erklärt, warum gewisse Aussagen im allgemeinen nicht verstärkt werden können. / Binary Decision Diagrams (BDDs) are a data structure for Boolean functions which are also known as branching programs. In ordered binary decision diagrams (OBDDs), the tests have to obey a fixed variable ordering. In free binary decision diagrams (FBDDs), each variable can be tested at most once. The efficiency of new variants of the BDD concept is usually demonstrated with spectacular (worst-case) examples. We pursue another approach and compare the representation sizes of almost all Boolean functions. Whereas I. Wegener proved that for `most' values of n the expected OBDD size of a random Boolean function of n variables is equal to the worst-case size up to terms of lower order, we show that this is not the case for n within intervals of constant length around the values n = 2h + h. Furthermore, ranges of n exist for which minimal FBDDs are almost always at least a constant factor smaller than minimal OBDDs. Our main theorems have doubly exponentially small probability bounds (in n). We also investigate the evolution of random OBDDs and their worst-case size, revealing an oscillating behaviour that explains why certain results cannot be improved in general.
|
297 |
Pathways, Networks and Therapy: A Boolean Approach to Systems BiologyLayek, Ritwik 2012 May 1900 (has links)
The area of systems biology evolved in an attempt to introduce mathematical systems theory principles in biology. Although we believe that all biological processes are essentially chemical reactions, describing those using precise mathematical rules is not easy, primarily due to the complexity and enormity of biological systems. Here we introduce a formal approach for modeling biological dynamical relationships and diseases such as cancer. The immediate motivation behind this research is the urgency to find a practicable cure of cancer, the emperor of all maladies. Unlike other deadly endemic diseases such as plague, dengue and AIDS, cancer is characteristically heterogenic and hence requires a closer look into the genesis of the disease. The actual cause of cancer lies within our physiology. The process of cell division holds the clue to unravel the mysteries surrounding this disease. In normal scenario, all control mechanisms work in tandem and cell divides only when the division is required, for instance, to heal a wound platelet derived growth factor triggers cell division. The control mechanism is tightly regulated by several biochemical interactions commonly known as signal transduction pathways. However, from mathematical point of view, these pathways are marginal in nature and unable to cope with the multi-variability of a heterogenic disease like cancer.
The present research is possibly one first attempt towards unraveling the mysteries surrounding the dynamics of a proliferating cell. A novel yet simple methodology is developed to bring all the marginal knowledge of the signaling pathways together to form the simplest mathematical abstract known as the Boolean Network. The malfunctioning in the cell by genetic mutations is formally modeled as stuck-at faults in the underlying Network. Finally a mathematical methodology is discovered to optimally find out the possible best combination drug therapy which can drive the cell from an undesirable condition of proliferation to a desirable condition of quiescence or apoptosis. Although, the complete biological validation was beyond the scope of the current research, the process of in-vitro validation has been already initiated by our collaborators. Once validated, this research will lead to a bright future in the field on personalized cancer therapy.
|
298 |
Dicomplemented Lattices / A Contextual Generalization of Boolean Algebras / Treillis Dicomplementes. Une Generalisation Contextuelle des Algebres de Boole. / Dikomplementaere Verbaende. Eine Kontextuelle Verallgemeinerung Boolescher AlgebrenKwuida, Leonard 23 October 2004 (has links) (PDF)
Das Ziel dieser Arbeit ist es die mathematische Theorie der Begriffsalgebren zu entwickeln. Wir betrachten dabei hauptsaechlich das Repraesentationsproblem dieser vor Kurzem eingefuehrten Strukturen. Motiviert durch die Suche nach einer geeigneten Negation sind die Begriffsalgebren entstanden. Sie sind nicht nur fuer die Philosophie oder die Wissensrepraesentation von Interesse, sondern auch fuer andere Felder, wie zum Beispiel Logik oder Linguistik. Das Problem Negationen geeignet einzufuehren, ist sicher eines der aeltesten der wissenschaftlichen oder philosophischen Gemeinschaft und erregt auch zur Zeit die Aufmerksamkeit vieler Wissenschaftler. Verschiedene Typen von Logik (die sich sehr stark durch die eigefuehrte Negation unterscheiden) unterstreichen die Wichtigkeit dieser Untersuchungen. In dieser Arbeit beschaeftigen wir uns hauptsaechlich mit der kontextuellen Logik, eine Herangehensweise der Formalen Begriffsanalyse, basierend auf der Idee, den Begriff als Einheit des Denkens aufzufassen. / The aim of this investigation is to develop a mathematical theory of concept algebras. We mainly consider the representation problem for this recently introduced class of structures. Motivated by the search of a "negation" on formal concepts, "concept algebras" are of considerable interest not only in Philosophy or Knowledge Representation, but also in other fields as Logic or Linguistics. The problem of negation is surely one of the oldest problems of the scientific and philosophic community, and still attracts the attention of many researchers. Various types of Logic (defined according to the behaviour of the corresponding negation) can attest this affirmation. In this thesis we focus on "Contextual Logic", a Formal Concept Analysis approach, based on concepts as units of thought.
|
299 |
Dicomplemented Lattices: A Contextual Generalization of Boolean AlgebrasKwuida, Leonard 29 June 2004 (has links)
Das Ziel dieser Arbeit ist es die mathematische Theorie der Begriffsalgebren zu entwickeln. Wir betrachten dabei hauptsaechlich das Repraesentationsproblem dieser vor Kurzem eingefuehrten Strukturen. Motiviert durch die Suche nach einer geeigneten Negation sind die Begriffsalgebren entstanden. Sie sind nicht nur fuer die Philosophie oder die Wissensrepraesentation von Interesse, sondern auch fuer andere Felder, wie zum Beispiel Logik oder Linguistik. Das Problem Negationen geeignet einzufuehren, ist sicher eines der aeltesten der wissenschaftlichen oder philosophischen Gemeinschaft und erregt auch zur Zeit die Aufmerksamkeit vieler Wissenschaftler. Verschiedene Typen von Logik (die sich sehr stark durch die eigefuehrte Negation unterscheiden) unterstreichen die Wichtigkeit dieser Untersuchungen. In dieser Arbeit beschaeftigen wir uns hauptsaechlich mit der kontextuellen Logik, eine Herangehensweise der Formalen Begriffsanalyse, basierend auf der Idee, den Begriff als Einheit des Denkens aufzufassen. / The aim of this investigation is to develop a mathematical theory of concept algebras. We mainly consider the representation problem for this recently introduced class of structures. Motivated by the search of a "negation" on formal concepts, "concept algebras" are of considerable interest not only in Philosophy or Knowledge Representation, but also in other fields as Logic or Linguistics. The problem of negation is surely one of the oldest problems of the scientific and philosophic community, and still attracts the attention of many researchers. Various types of Logic (defined according to the behaviour of the corresponding negation) can attest this affirmation. In this thesis we focus on "Contextual Logic", a Formal Concept Analysis approach, based on concepts as units of thought.
|
300 |
Modélisation procédurale par composantsLeblanc, Luc 08 1900 (has links)
Le réalisme des images en infographie exige de créer des objets (ou des scènes) de plus en plus complexes, ce qui entraîne des coûts considérables. La modélisation procédurale peut aider à automatiser le processus de création, à simplifier le processus de modification ou à générer de multiples variantes d'une instance d'objet. Cependant même si plusieurs méthodes procédurales existent, aucune méthode unique permet de créer tous les types d'objets complexes, dont en particulier un édifice complet. Les travaux réalisés dans le cadre de cette thèse proposent deux solutions au problème de la modélisation
procédurale: une solution au niveau de la géométrie de base, et l’autre sous forme d'un système général adapté à la modélisation des objets complexes.
Premièrement, nous présentons le bloc, une nouvelle primitive de modélisation simple et générale, basée sur une forme cubique généralisée. Les blocs sont disposés et connectés entre eux pour constituer la forme de base des objets, à partir de laquelle est extrait un maillage de contrôle pouvant produire des arêtes lisses et vives. La nature volumétrique des blocs permet une spécification simple de la topologie, ainsi que le support des opérations de CSG entre les blocs. La paramétrisation de la surface, héritée des faces des blocs, fournit un soutien pour les textures et les fonctions de déplacements afin d'appliquer des détails de surface. Une variété d'exemples illustrent la généralité des blocs dans des contextes de modélisation à la fois interactive et procédurale.
Deuxièmement, nous présentons un nouveau système de modélisation procédurale qui unifie diverses techniques dans un cadre commun. Notre système repose sur le concept de composants pour définir spatialement et sémantiquement divers éléments. À travers une série de déclarations successives exécutées sur un sous-ensemble de composants obtenus à l'aide de requêtes, nous créons un arbre de composants définissant ultimement un objet dont la géométrie est générée à l'aide des blocs.
Nous avons appliqué notre concept de modélisation par composants à la génération d'édifices complets, avec intérieurs et extérieurs cohérents. Ce nouveau système s'avère général et bien adapté pour le partionnement des espaces, l'insertion d'ouvertures (portes et fenêtres), l'intégration d'escaliers, la décoration de façades et de murs, l'agencement de meubles, et diverses autres opérations nécessaires lors de la construction d'un édifice complet. / The realism of computer graphics images requires the creation of objects (or scenes) of increasing complexity, which leads to considerable costs. Procedural modeling can help to automate the creation process, to simplify the modification process or to generate multiple variations of an object instance. However although several procedural methods exist, no single method allows the creation of all types of complex objects, including in particular a complete building. This thesis proposes two solutions to the problem of procedural modeling: one solution addressing the geometry level, and the other introducing a general system suitable for complex object modeling.
First, we present a simple and general modeling primitive, called a block, based on a generalized cuboid shape. Blocks are laid out and connected together to constitute the base shape of complex objects, from which is extracted a control mesh that can contain both smooth and sharp edges. The volumetric nature of the blocks allows for easy topology specification, as well as CSG operations between blocks. The surface parameterization inherited from the block faces provides support for texturing and displacement functions to apply surface details. A variety of examples illustrate the generality of our blocks in both interactive and procedural modeling contexts.
Second, we present a novel procedural modeling system which unifies some techniques into a common framework. Our system relies on the concept of components to spatially and semantically define various elements. Through a series of successive statements executed on a subset of queried components, we grow a tree of components ultimately defining an object whose geometry is made from blocks.
We applied our concept and representation of components to the generation of complete buildings, with coherent interiors and exteriors. It proves general and well adapted to support partitioning of spaces, insertion of openings (doors and windows), embedding of staircases, decoration of façades and walls, layout of furniture, and various other operations required when constructing a complete building.
|
Page generated in 0.0482 seconds