8,567 research outputs found
A foundation for synthesising programming language semantics
Programming or scripting languages used in real-world systems are seldom designed
with a formal semantics in mind from the outset. Therefore, the first step for developing well-founded analysis tools for these systems is to reverse-engineer a formal
semantics. This can take months or years of effort.
Could we automate this process, at least partially? Though desirable, automatically reverse-engineering semantics rules from an implementation is very challenging,
as found by Krishnamurthi, Lerner and Elberty. They propose automatically learning
desugaring translation rules, mapping the language whose semantics we seek to a simplified, core version, whose semantics are much easier to write. The present thesis
contains an analysis of their challenge, as well as the first steps towards a solution.
Scaling methods with the size of the language is very difficult due to state space
explosion, so this thesis proposes an incremental approach to learning the translation
rules. I present a formalisation that both clarifies the informal description of the challenge by Krishnamurthi et al, and re-formulates the problem, shifting the focus to the
conditions for incremental learning. The central definition of the new formalisation is
the desugaring extension problem, i.e. extending a set of established translation rules
by synthesising new ones.
In a synthesis algorithm, the choice of search space is important and non-trivial,
as it needs to strike a good balance between expressiveness and efficiency. The rest
of the thesis focuses on defining search spaces for translation rules via typing rules.
Two prerequisites are required for comparing search spaces. The first is a series of
benchmarks, a set of source and target languages equipped with intended translation
rules between them. The second is an enumerative synthesis algorithm for efficiently
enumerating typed programs. I show how algebraic enumeration techniques can be applied to enumerating well-typed translation rules, and discuss the properties expected
from a type system for ensuring that typed programs be efficiently enumerable.
The thesis presents and empirically evaluates two search spaces. A baseline search
space yields the first practical solution to the challenge. The second search space is
based on a natural heuristic for translation rules, limiting the usage of variables so that
they are used exactly once. I present a linear type system designed to efficiently enumerate translation rules, where this heuristic is enforced. Through informal analysis
and empirical comparison to the baseline, I then show that using linear types can speed
up the synthesis of translation rules by an order of magnitude
LIPIcs, Volume 251, ITCS 2023, Complete Volume
LIPIcs, Volume 251, ITCS 2023, Complete Volum
Barrier-Based Test Synthesis for Safety-Critical Systems Subject to Timed Reach-Avoid Specifications
We propose an adversarial, time-varying test-synthesis procedure for
safety-critical systems without requiring specific knowledge of the underlying
controller steering the system. From a broader test and evaluation context,
determination of difficult tests of system behavior is important as these tests
would elucidate problematic system phenomena before these mistakes can engender
problematic outcomes, e.g. loss of human life in autonomous cars, costly
failures for airplane systems, etc. Our approach builds on existing,
simulation-based work in the test and evaluation literature by offering a
controller-agnostic test-synthesis procedure that provides a series of
benchmark tests with which to determine controller reliability. To achieve
this, our approach codifies the system objective as a timed reach-avoid
specification. Then, by coupling control barrier functions with this class of
specifications, we construct an instantaneous difficulty metric whose minimizer
corresponds to the most difficult test at that system state. We use this
instantaneous difficulty metric in a game-theoretic fashion, to produce an
adversarial, time-varying test-synthesis procedure that does not require
specific knowledge of the system's controller, but can still provably identify
realizable and maximally difficult tests of system behavior. Finally, we
develop this test-synthesis procedure for both continuous and discrete-time
systems and showcase our test-synthesis procedure on simulated and hardware
examples
Posthuman Creative Styling can a creative writer’s style of writing be described as procedural?
This thesis is about creative styling — the styling a creative writer might use to make their writing
unique. It addresses the question as to whether such styling can be described as procedural. Creative
styling is part of the technique a creative writer uses when writing. It is how they make the text more
‘lively’ by use of tips and tricks they have either learned or discovered. In essence these are rules, ones
the writer accrues over time by their practice. The thesis argues that the use and invention of these
rules can be set as procedures. and so describe creative styling as procedural.
The thesis follows from questioning why it is that machines or algorithms have, so far, been
incapable of producing creative writing which has value. Machine-written novels do not abound on
the bookshelves and writing styled by computers is, on the whole, dull in comparison to human-crafted
literature. It came about by thinking how it would be possible to reach a point where writing by people
and procedural writing are considered to have equal value. For this reason the thesis is set in a
posthuman context, where the differences between machines and people are erased.
The thesis uses practice to inform an original conceptual space model, based on quality dimensions
and dynamic-inter operation of spaces. This model gives an example of the procedures which a
posthuman creative writer uses when engaged in creative styling. It suggests an original formulation
for the conceptual blending of conceptual spaces, based on the casting of qualities from one space to
another. In support of and informing its arguments are ninety-nine examples of creative writing
practice which show the procedures by which style has been applied, created and assessed. It provides
a route forward for further joint research into both computational and human-coded creative writing
Guided rewriting and constraint satisfaction for parallel GPU code generation
Graphics Processing Units (GPUs) are notoriously hard to optimise for manually due to their scheduling and memory hierarchies. What is needed are good automatic code generators and optimisers for such parallel hardware. Functional approaches such as Accelerate, Futhark and LIFT leverage a high-level algorithmic Intermediate Representation (IR) to expose parallelism and abstract the implementation details away from the user. However, producing efficient code for a given accelerator remains challenging. Existing code generators depend on the user input to choose a subset of hard-coded optimizations or automated exploration of implementation search space. The former suffers from the lack of extensibility, while the latter is too costly due to the size of the search space. A hybrid approach is needed, where a space of valid implementations is built automatically and explored with the aid of human expertise.
This thesis presents a solution combining user-guided rewriting and automatically generated constraints to produce high-performance code. The first contribution is an automatic tuning technique to find a balance between performance and memory consumption. Leveraging its functional patterns, the LIFT compiler is empowered to infer tuning constraints and limit the search to valid tuning combinations only.
Next, the thesis reframes parallelisation as a constraint satisfaction problem. Parallelisation constraints are extracted automatically from the input expression, and a solver is used to identify valid rewriting. The constraints truncate the search space to valid parallel mappings only by capturing the scheduling restrictions of the GPU in the context of a given program. A synchronisation barrier insertion technique is proposed to prevent data races and improve the efficiency of the generated parallel mappings.
The final contribution of this thesis is the guided rewriting method, where the user encodes a design space of structural transformations using high-level IR nodes called rewrite points. These strongly typed pragmas express macro rewrites and expose design choices as explorable parameters. The thesis proposes a small set of reusable rewrite points to achieve tiling, cache locality, data reuse and memory optimisation.
A comparison with the vendor-provided handwritten kernel ARM Compute Library and the TVM code generator demonstrates the effectiveness of this thesis' contributions. With convolution as a use case, LIFT-generated direct and GEMM-based convolution implementations are shown to perform on par with the state-of-the-art solutions on a mobile GPU. Overall, this thesis demonstrates that a functional IR yields well to user-guided and automatic rewriting for high-performance code generation
A BIM - GIS Integrated Information Model Using Semantic Web and RDF Graph Databases
In recent years, 3D virtual indoor and outdoor urban modelling has become an essential geospatial information framework for civil and engineering applications such as emergency response, evacuation planning, and facility management. Building multi-sourced and multi-scale 3D urban models are in high demand among architects, engineers, and construction professionals to achieve these tasks and provide relevant information to decision support systems. Spatial modelling technologies such as Building Information Modelling (BIM) and Geographical Information Systems (GIS) are frequently used to meet such high demands. However, sharing data and information between these two domains is still challenging. At the same time, the semantic or syntactic strategies for inter-communication between BIM and GIS do not fully provide rich semantic and geometric information exchange of BIM into GIS or vice-versa. This research study proposes a novel approach for integrating BIM and GIS using semantic web technologies and Resources Description Framework (RDF) graph databases. The suggested solution's originality and novelty come from combining the advantages of integrating BIM and GIS models into a semantically unified data model using a semantic framework and ontology engineering approaches. The new model will be named Integrated Geospatial Information Model (IGIM). It is constructed through three stages. The first stage requires BIMRDF and GISRDF graphs generation from BIM and GIS datasets. Then graph integration from BIM and GIS semantic models creates IGIMRDF. Lastly, the information from IGIMRDF unified graph is filtered using a graph query language and graph data analytics tools. The linkage between BIMRDF and GISRDF is completed through SPARQL endpoints defined by queries using elements and entity classes with similar or complementary information from properties, relationships, and geometries from an ontology-matching process during model construction. The resulting model (or sub-model) can be managed in a graph database system and used in the backend as a data-tier serving web services feeding a front-tier domain-oriented application. A case study was designed, developed, and tested using the semantic integrated information model for validating the newly proposed solution, architecture, and performance
Staged Specifications for Automated Verification of Higher-Order Imperative Programs
Higher-order functions and imperative references are language features
supported by many mainstream languages. Their combination enables the ability
to package references to code blocks with the captured state from their
environment. Higher-order imperative programs are expressive and useful, but
complicate formal specification and reasoning due to the use of
yet-to-be-instantiated function parameters, especially when their invocations
may mutate memory captured by or reachable from their arguments.
Existing state-of-the-art works for verifying higher-order imperative
behaviors are restricted in two ways: achieving strong theoretical results
without automated implementations, or achieving automation with the help of
strong assumptions from dedicated type systems (e.g. Rust). To enable an
automated verification solution for imperative languages without the above
restrictions, we introduce Higher-order Staged Separation Logic (HSSL), an
extension of Hoare logic for call-by-value higher-order functions with ML-like
local references.
In this paper, we design a novel staged specification logic, prove its
soundness, develop a new automated higher-order verifier, Heifer, for a core
OCaml-like language, report on experimental results, and present various case
studies investigating its capabilities
Strategies for defending the Principle of Identity of Indiscernibles: a critical survey and a new approach
The Principle of Identity of Indiscernibles (PII) is the focus of much controversy in the history of Metaphysics and in contemporary Physics. Many questions rover the debate about its truth or falsehood, for example, to which objects the principle applies? Which properties can be counted as discerning properties? Is the principle necessary? In other words, which version of the principle is the correct and is this version true? This thesis aims to answer this questions in order to show that PII is a necessarily true principle of metaphysics. To accomplish this task, the reader will find, in this thesis, an encyclopaedical introduction to the history of PII and to the reasons it matters so much, followed by a presentation of the most famous arguments against it and the defences used against these arguments. Then, the reader finds in-depth discussion of the minutiae involved in postulating the principle as to make clear what is in fact being attacked and defended. With these preliminaries solved, a deeper analysis of these defences is presented aiming to discover which is the most appropriate example to use against the attacks to the principle. This analysis allowed a classification of these defences in four families with different strategies within them. Finally, with these defensive strategies at hand we are able to confront alleged counterexamples to PII in Mathematics with the intention to test these defences
"Le present est plein de l’avenir, et chargé du passé" : Vorträge des XI. Internationalen Leibniz-Kongresses, 31. Juli – 4. August 2023, Leibniz Universität Hannover, Deutschland. Band 2
[No abstract available]Deutschen Forschungsgemeinschaft (DFG)/Projektnr. 517991912VGH VersicherungNiedersächsisches Ministerium für Wissenschaft und Kultur (MWK
- …