1{"work_id": 4297781990, "title": "Leveraging Answer Set Programming for Continuous Monitoring, Fault Detection, and Explanation of Automated and Autonomous Driving Systems", "abstract": "Recent advancements in automated and autonomous driving systems have facilitated their integration into modern vehicles, enabling them to accurately perceive their surroundings and support or even fully undertake complex driving tasks. Given the complexity and unpredictable nature of driving environments and traffic situations, ensuring the correct behavior of such systems is essential to prevent hazardous situations, increase user acceptance, and avoid human harm. However, the increased complexity of these systems and the extensive search space of possible scenarios introduce significant challenges to testing and real-time fault management. Hence, besides rigorous testing during the development phase, there is a need for additional validation and verification during operation. This paper proposes utilizing Answer Set Programming (ASP), a form of declarative programming, for continuous real-time monitoring, fault detection, and explanation to ensure the correct functioning of automated and autonomous driving systems. Our approach aims to enhance the reliability and safety of such systems by detecting violations and providing explanations that can support fault-adaptive control or mitigation strategies. We demonstrate the effectiveness of our methodology across diverse scenarios executed within a simulation environment, discuss the main challenges encountered, and outline future research directions."}2{"work_id": 3103225940, "title": "An LLVM backend for the Open Modelica Compiler", "abstract": "This thesis presents the construction and evaluation of an LLVM based codegenerator, an LLVM backend. The introduction of an LLVM based backend into the OpenModelica compiler was done to examine the advantages and disadvantages of compiling Modelica and MetaModelica to LLVM IR instead of C. To answer this question, the LLVM backend was compared against the existing interpreter and C code generator using four different schemes with corresponding cases. This comparison was made both for both optimised and unoptimised code. From the experiments, it was concluded that an LLVM backend can be used to improve runtime and compile time performance in the OpenModelica Interactive environment."}3{"work_id": 7151510318, "title": "Unsupervised Translation of Programming Languages", "abstract": "Traduction Non Supervis\u00e9e de Langages de Programmation Un transcompilateur est un syst\u00e8me qui convertit le code source d'un langage de programmation de haut niveau (tel que C++ ou Python) vers un autre. Les transcompilateurs sont principalement utilis\u00e9s pour l'interop\u00e9rabilit\u00e9 et pour transf\u00e9rer des bases de code \u00e9crites dans un langage obsol\u00e8te (par exemple COBOL ou Python2) vers un langage plus moderne. Ils reposent g\u00e9n\u00e9ralement sur des r\u00e8gles de r\u00e9\u00e9criture manuelles, appliqu\u00e9es \u00e0 l'arbre de syntaxe abstraite du code source. Malheureusement, les traductions qui en r\u00e9sultent manquent souvent de lisibilit\u00e9, ne respectent pas les conventions du langage cible et n\u00e9cessitent des modifications manuelles pour fonctionner correctement. Le processus global de traduction prend du temps et n\u00e9cessite une expertise \u00e0 la fois dans les langages source et cible, ce qui rend les projets de traduction de code co\u00fbteux. Bien que les mod\u00e8les neuronaux surpassent consid\u00e9rablement leurs homologues bas\u00e9s sur des r\u00e8gles dans le cadre de la traduction en langues naturelles, leurs applications \u00e0 la transcompilation ont \u00e9t\u00e9 limit\u00e9es en raison de la raret\u00e9 des donn\u00e9es parall\u00e8les dans ce domaine. Nous proposons des m\u00e9thodes pour entra\u00eener des transcompilateurs neuronaux efficaces sans donn\u00e9es supervis\u00e9es. Les traducteurs de langues naturelles sont \u00e9valu\u00e9s avec des m\u00e9triques bas\u00e9es sur la cooccurrence de tokens entre la traduction et la r\u00e9f\u00e9rence. Nous remarquons que ces m\u00e9triques ne capturent pas la s\u00e9mantique des langages de programmation. Nous construisons et publions donc une base de donn\u00e9es de tests compos\u00e9e de 852 fonctions parall\u00e8les, ainsi que de tests unitaires pour v\u00e9rifier l'exactitude s\u00e9mantique des traductions. Nous exploitons d'abord les objectifs con\u00e7us pour les langues naturelles afin d'apprendre des repr\u00e9sentations multilingues du code source, et entra\u00eenons un mod\u00e8le \u00e0 traduire, en utilisant seulement le code monolingue de projets open source GitHub. Ce mod\u00e8le surpasse les m\u00e9thodes bas\u00e9es sur des r\u00e8gles pour la traduction de fonctions entre C++, Java et Python. Ensuite, nous d\u00e9veloppons une m\u00e9thode de pr\u00e9-entra\u00eenement, amenant le mod\u00e8le \u00e0 apprendre des repr\u00e9sentations s\u00e9mantiques du code. Cela conduit \u00e0 des performances am\u00e9lior\u00e9es sur plusieurs t\u00e2ches, y compris la traduction de code non supervis\u00e9e. Enfin, nous utilisons des tests unitaires automatis\u00e9s pour cr\u00e9er des exemples de traductions de programmes. Entra\u00eener un mod\u00e8le sur ces exemples conduit \u00e0 des am\u00e9liorations significatives des performances de nos transcompilateurs neuronaux. Nos m\u00e9thodes reposent exclusivement sur du code source monolingue, ne n\u00e9cessitent aucune expertise dans les langues source ou cible, et peuvent facilement \u00eatre g\u00e9n\u00e9ralis\u00e9es \u00e0 d'autres langages."}4{"work_id": 1586677474, "title": "Handbook of Satisfiability", "abstract": "'Satisfiability (SAT) related topics have attracted researchers from various disciplines: logic, applied areas such as planning, scheduling, operations research and combinatorial optimization, but also theoretical issues on the theme of complexity and much more, they all are connected through SAT. My personal interest in SAT stems from actual solving: The increase in power of modern SAT solvers over the past 15 years has been phenomenal. It has become the key enabling technology in automated verification of both computer hardware and software' - Edmund M. Clarke (FORE Systems University Professor of Computer Science and Professor of Electrical and Computer Engineering at Carnegie Mellon University). 'Bounded Model Checking (BMC) of computer hardware is now probably the most widely used model checking technique. The counterexamples that it finds are just satisfying instances of a Boolean formula obtained by unwinding to some fixed depth a sequential circuit and its specification in linear temporal logic. Extending model checking to software verification is a much more difficult problem on the frontier of current research. One promising approach for languages like C with finite word-length integers is to use the same idea as in BMC but with a decision procedure for the theory of bit-vectors instead of SAT. All decision procedures for bit-vectors that I am familiar with ultimately make use of a fast SAT solver to handle complex formulas' - Edmund M. Clarke (FORE Systems University Professor of Computer Science and Professor of Electrical and Computer Engineering at Carnegie Mellon University). 'Decision procedures for more complicated theories, like linear real and integer arithmetic, are also used in program verification. Most of them use powerful SAT solvers in an essential way. Clearly, efficient SAT solving is a key technology for 21st century computer science. I expect this collection of papers on all theoretical and practical aspects of SAT solving will be extremely useful to both students and researchers and will lead to many further advances in the field' - Edmund M. Clarke (FORE Systems University Professor of Computer Science and Professor of Electrical and Computer Engineering at Carnegie Mellon University)."}5{"work_id": 3115704172, "title": "Lineage-driven Fault Injection for Actor-based Programs", "abstract": "Lineage-driven fault injection (LDFI) is an approach for finding bugs or faults in distributed systems. Its current state-of-the-art implementation, Molly, takes programs written in the logic programming language Dedalus as its input. The problem is that Dedalus is a small and obscure language, used to serve as a proof of concept for Molly. Thus, the objective of this thesis is to extend and adapt Molly to a general-purpose, object-oriented language where distributed programs are written using the actor-based framework Akka. This thesis presents a novel concept for employing lineage-driven fault injection for actor-based programs in addition to implementing said concept to analyze existing Akka programs. The results show that the lineage-driven fault injector for Akka programs, ldfi-akka, is capable of successfully pinpointing the weaknesses of the programs that can be analyzed in a feasible amount of time. However, ldfi-akka struggles to analyze larger and complex programs as the underlying SAT-solver used is overwhelmed. The correctness of the analysis made by ldfi-akka is partially based on the subject programs\u2019 ability to a) be rewritten in such a way that logging can be added and b) exhibit deterministic behavior across multiple runs. Conclusively, this study presents a novel approach to employ lineage-driven fault injection on actor-based programs and ldfi-akka, an implementation of LDFI on Akka programs."}6{"work_id": 2890660842, "title": "Efficient Formal Safety Analysis of Neural Networks", "abstract": "Neural networks are increasingly deployed in real-world safety-critical domains such as autonomous driving, aircraft collision avoidance, and malware detection. However, these networks have been shown to often mispredict on inputs with minor adversarial or even accidental perturbations. Consequences of such errors can be disastrous and even potentially fatal as shown by the recent Tesla autopilot crash. Thus, there is an urgent need for formal analysis systems that can rigorously check neural networks for violations of different safety properties such as robustness against adversarial perturbations within a certain $L$-norm of a given image. An effective safety analysis system for a neural network must be able to either ensure that a safety property is satisfied by the network or find a counterexample, i.e., an input for which the network will violate the property. Unfortunately, most existing techniques for performing such analysis struggle to scale beyond very small networks and the ones that can scale to larger networks suffer from high false positives and cannot produce concrete counterexamples in case of a property violation. In this paper, we present a new efficient approach for rigorously checking different safety properties of neural networks that significantly outperforms existing approaches by multiple orders of magnitude. Our approach can check different safety properties and find concrete counterexamples for networks that are 10$\\times$ larger than the ones supported by existing analysis techniques. We believe that our approach to estimating tight output bounds of a network for a given input range can also help improve the explainability of neural networks and guide the training process of more robust neural networks."}7{"work_id": 3139485201, "title": "Towards automated construction of compiler optimizations", "abstract": "Thesis: Ph. D., Massachusetts Institute of Technology, Department of Electrical Engineering and Computer Science, September, 2020"}8{"work_id": 3214427835, "title": "Sparse tensor algebra compilation", "abstract": "Thesis: Ph. D., Massachusetts Institute of Technology, Department of Electrical Engineering and Computer Science, 2020"}9{"work_id": 3188948186, "title": "Speed Control of DC Motor Using Fuzzy PID Controller", "abstract": "In this project, we designed a DC motor whose speed can be controlled by a PID controller. The proportional, integral and derivative gains (KP, KI, KD) of the PID controller are adjusted according to Fuzzy logic. First of all, the fuzzy logic controller is designed according to rules so that the systems is basically robust. There are 25 rules for the auto-tuning of each parameter of the PID controller. The FLC (fuzzy logic controller) has two inputs. The first is the motor speed error between the reference (setpoint) and the actual speed. The second is the variation of the speed error (derivative of the speed error). Secondly the output of the FLC is the parameters of the PID controller which are used to control the speed of the DC motor. The study shows that both the precise characters of PID controllers and the flexible characters of fuzzy controllers are present in the fuzzy self-tuning PID controller. The fuzzy auto-tuning approach implemented on a conventional PID structure was able to control the speed of the DC motor. It also improved the dynamic and static response of the system. The comparison between the conventional response and the fuzzy self-tuning response was performed based on the simulation result obtained by MATLAB/SIMULINK. The simulation results show that the designed self-adaptive PID controller achieves good dynamic behavior of the DC motor, perfect speed tracking with short rise and settling times, zero overshoot and steady state error and thus gives better performance compared to the conventional PID controller. We then model the fuzzy PID using simple code on Arduino IDE and perform a practical experiment, to confirm our theorical results."}10{"work_id": 630549275, "title": "The clustered multikernel: an approach to formal verification of multiprocessor operating-system kernels", "abstract": "The key software component of a computer system is the operating-system kernel. It always needs to be trusted because it runs in the CPU\u2019s privileged mode and therefore has access to all system components. Consequently, kernel correctness is crucial for secure, safe and reliable computer systems. Correctness can be improved by careful design, development and testing. However, this is not enough for kernels of high-assurance computer systems used in defence, aviation and the like. Much stronger correctness guarantees can be obtained by formal verification of a kernel\u2019s implementation. In order to keep verification complexity at a manageable level, prior kernel verification research only targeted uniprocessor kernels. In other words, the current state of research restricts computer systems that require a verified kernel to running on one CPU/core. This is a problem because manufacturers are increasing computing power of their systems by adding more CPUs and cores. In this thesis, we demonstrate that it is possible to extend a verified uniprocessor kernel to utilise multiple CPUs/cores and leverage the existing proofs to obtain a verified multiprocessor version of that kernel (under certain assumptions). To this end, we introduce the clustered multikernel, a point in the design space of multiprocessor kernels. The main feature of this design is that it reduces concurrent data access to a minimum while offering a configurable trade-off between scalability and flexibility. Furthermore, we present a conversion scheme to convert a uniprocessor kernel into a clustered multikernel. Based on this design, we contribute a refinement lifting framework, which lifts the converted kernel\u2019s functional-correctness proof such that it applies to the clusteredmultikernel version. The support for handling the introduced concurrency is added to the existing verification framework in a non-intrusive way and accounts for total-store-order weak memory ordering. We demonstrate the practicability of our approach by successfully applying it to seL4, a formally verified general-purpose microkernel. We show that this requires relatively low effort, compared to the kernel\u2019s initial verification. All formal specifications and proofs are machine-checked in the theorem prover Isabelle/ HOL."}11{"work_id": 2962724414, "title": "Machine Learning in Compiler Optimization", "abstract": "In the last decade, machine-learning-based compilation has moved from an obscure research niche to a mainstream activity. In this paper, we describe the relationship between machine learning and compiler optimization and introduce the main concepts of features, models, training, and deployment. We then provide a comprehensive survey and provide a road map for the wide variety of different research areas. We conclude with a discussion on open issues in the area and potential research directions. This paper provides both an accessible introduction to the fast moving area of machine-learning-based compilation and a detailed bibliography of its main achievements."}12{"work_id": 4205342885, "title": "The Futures of Europe: Society 5.0 and Industry 5.0 as Driving Forces of Future Universities", "abstract": "The concept of Society 5.0 and Industry 5.0 is not a simple chronological continuation or alternative to Industry 4.0 paradigm. Society 5.0 aims to place human beings at the midpoint of innovation, exploiting the impact of technology and Industry 4.0 results with the technological integration to improve quality of life, social responsibility and sustainability. This ground-breaking perspective has common points with the objectives of the United Nations Sustainable Development Goals. It also has major implication for universities transformations. Universities are called upon producing knowledge for new technologies and social innovation. In our paper, we argue that digitalisation opens new perspectives for universities and can become one of the main drivers of their change. Incorporating the assumptions of Society 5.0 and Industry 5.0 into the universities practices and policies will allow both universities and societies to fully benefit from digital transformation. Making the human-oriented innovation as the universities trademark and developing new cooperative models will also help to achieve sustainable priorities. The use of the Quintuple Helix Model (QHM) might foster the process of necessary transformations capacities as it integrates different perspectives and sets the stage for sustainability priorities and considerations. As far as the practical goal is concerned, the paper proposes a set of recommendations for universities aiming at developing new forms and channels of distribution of education, research and innovation within in the context of QHM and Society 5.0. We call them socially and digitally engaged model."}13{"work_id": 7110046239, "title": "Can Open Large Language Models Catch Vulnerabilities?", "abstract": "As Large Language Models (LLMs) become increasingly integrated into secure software development workflows, a critical question remains unanswered: can these models not only detect insecure code but also reliably classify vulnerabilities according to standardized taxonomies? In this work, we conduct a systematic evaluation of three state-of-the-art LLMs - Llama3, Codestral, and Deepseek R1 - using a carefully filtered subset of the Big-Vul dataset annotated with eight representative Common Weakness Enumeration categories. Adopting a closed-world classification setup, we assess each model's performance in both identifying the presence of vulnerabilities and mapping them to the correct CWE label. Our findings reveal a sharp contrast between high detection rates and markedly poor classification accuracy, with frequent overgeneralization and misclassification. Moreover, we analyze model-specific biases and common failure modes, shedding light on the limitations of current LLMs in performing fine-grained security reasoning.These insights are especially relevant in educational contexts, where LLMs are being adopted as learning aids despite their limitations. A nuanced understanding of their behaviour is essential to prevent the propagation of misconceptions among students. Our results expose key challenges that must be addressed before LLMs can be reliably deployed in security-sensitive environments."}14{"work_id": 3008797115, "title": "Metamorphic Testing: A New Approach for Generating Next Test Cases", "abstract": "In software testing, a set of test cases is constructed according to some predefined selection criteria. The software is then examined against these test cases. Three interesting observations have been made on the current artifacts of software testing. Firstly, an error-revealing test case is considered useful while a successful test case which does not reveal software errors is usually not further investigated. Whether these successful test cases still contain useful information for revealing software errors has not been properly studied. Secondly, no matter how extensive the testing has been conducted in the development phase, errors may still exist in the software [5]. These errors, if left undetected, may eventually cause damage to the production system. The study of techniques for uncovering software errors in the production phase is seldom addressed in the literature. Thirdly, as indicated by Weyuker in [6], the availability of test oracles is pragmatically unattainable in most situations. However, the availability of test oracles is generally assumed in conventional software testing techniques. In this paper, we propose a novel test case selection technique that derives new test cases from the successful ones. The selection aims at revealing software errors that are possibly left undetected in successful test cases which may be generated using some existing strategies. As such, the proposed technique augments the effectiveness of existing test selection strategies. The technique also helps uncover software errors in the production phase and can be used in the absence of test oracles."}15{"work_id": 4399452770, "title": "Engenharia de Software", "abstract": "Este artigo resume a hist\u00f3ria e as caracter\u00edsticas dos cursos de Engenharia de Software no Brasil."}16{"work_id": 2957311447, "title": "The Marabou Framework for Verification and Analysis of Deep Neural Networks", "abstract": "Deep neural networks are revolutionizing the way complex systems are designed. Consequently, there is a pressing need for tools and techniques for network analysis and certification. To help in addressing that need, we present Marabou, a framework for verifying deep neural networks. Marabou is an SMT-based tool that can answer queries about a network\u2019s properties by transforming these queries into constraint satisfaction problems. It can accommodate networks with different activation functions and topologies, and it performs high-level reasoning on the network that can curtail the search space and improve performance. It also supports parallel execution to further enhance scalability. Marabou accepts multiple input formats, including protocol buffer files generated by the popular TensorFlow framework for neural networks. We describe the system architecture and main components, evaluate the technique and discuss ongoing work."}17{"work_id": 6944541633, "title": "Verification of multi-objective Markov models", "abstract": "Probabilistic systems evolve based on environmental events that occur with a certain probability. For such systems to perform well, we are often interested in multiple objectives, i.e., quantitative performance measures like the probability of a failure or the expected time until task completion. Sometimes, these objectives conflict with each other: minimizing the failure probability possibly means completing the task takes longer. Compromises need to be found. We consider Markov models---particularly Markov decision processes (MDPs) and Markov Automata (MAs). These state-based modeling formalisms describe a system in its random environment. Starting from an initial state, the transitioning behavior in MDPs is determined by probabilistic and nondeterministic choices. MAs further extend MDPs by exponentially distributed continuous time delays. Rewards can be attached to states or transitions to model system quantities such as energy consumption, productivity, or monetary costs. Objectives are formally specified by a mapping from (infinite) system executions to the value of interest, e.g., the total accumulated costs or the average energy consumption. The expected value of an objective is defined once the nondeterminism is resolved using a strategy---intuitively reflecting the choices of a system controller. Different strategies induce different expected objective values. Multi-objective verification of MDPs and MAs analyzes the interplay between the considered objectives and identifies which trade-offs between expected objective values are possible, i.e., achievable by some strategy. We study practically efficient methods to compute the set of achievable solutions. For this, we establish a general framework and its instantiation for (undiscounted) total reachability reward objectives, long-run average reward objectives, and reward-bounded objectives. We propagate the errors made by approximative methods, yielding sound under- and over-approximations. We further consider multi-dimensional quantiles that ask under which reward constraints a given objective value is achievable. Finally, we investigate a setting in which the strategies must be simple, i.e., non-randomized and with limited memory access. All presented approaches are integrated into the state-of-the-art probabilistic model checker Storm. An extensive evaluation of this implementation on a broad set of multi-objective benchmarks shows that our approaches scale to large models with millions of states."}18{"work_id": 7127344046, "title": "Artificial intelligence policy challenges and institutional readiness in Omani higher education", "abstract": "The rapid integration of artificial intelligence (AI) into higher education presents transformative opportunities alongside complex governance challenges, particularly in emerging economies. This mixed-methods study examines AI policy adoption, implementation barriers, and stakeholder priorities across 28 higher education institutions (HEIs) in Oman, a Gulf Cooperation Council (GCC) nation actively pursuing AI-driven economic diversification under Vision 2040. Combining quantitative surveys ( n = 39 institutional leaders) and qualitative focus groups ( n = 15 students), the research reveals a critical governance gap: only 5.1% of higher education institutions (HEIs) have formal AI policies, while 74.4% lack frameworks. Key challenges include academic integrity violations (e.g., undetectable AI-generated plagiarism), student over-reliance on generative tools (reported by 59% of faculty), and systemic deficiencies in training, infrastructure, and regulatory clarity. The thematic analysis identifies faculty-driven pedagogical innovations and institutional unpreparedness, with 69% of respondents citing \u201cregulatory uncertainty\u201d as the primary barrier. Applying DiMaggio and Powell\u2019s (1983) institutional isomorphism framework, we expose how coercive (top-down policy enforcement gaps), mimetic (ad-hoc replication of regional models), and normative (training deficits) pressures perpetuate fragmentation. Findings underscore the urgency of context-sensitive strategies, proposing three actionable recommendations: (1) national ethical guidelines aligned with UNESCO\u2019s AI Competency Framework, (2) mandatory faculty certification programs targeting 80% compliance by 2026, and (3) equitable resource allocation through Oman\u2019s National AI Observatory. The study positions Oman as a GCC policy laboratory, offering transferable insights for mid-sized economies balancing AI innovation with cultural preservation. Limitations include sample size constraints ( n = 28 HEIs) and the rapid evolution of AI, necessitating longitudinal research. This work contributes to global debates on AI governance by empirically linking institutional theory to policy implementation in Arab higher education contexts."}19{"work_id": 3122286897, "title": "MLIR: Scaling Compiler Infrastructure for Domain Specific Computation", "abstract": "This work presents MLIR, a novel approach to building reusable and extensible compiler infrastructure. MLIR addresses software fragmentation, compilation for heterogeneous hardware, significantly reducing the cost of building domain specific compilers, and connecting existing compilers together. MLIR facilitates the design and implementation of code generators, translators and optimizers at different levels of abstraction and across application domains, hardware targets and execution environments. The contribution of this work includes (1) discussion of MLIR as a research artifact, built for extension and evolution, while identifying the challenges and opportunities posed by this novel design, semantics, optimization specification, system, and engineering. (2) evaluation of MLIR as a generalized infrastructure that reduces the cost of building compilers-describing diverse use-cases to show research and educational opportunities for future programming languages, compilers, execution environments, and computer architecture. The paper also presents the rationale for MLIR, its original design principles, structures and semantics."}20{"work_id": 4407942537, "title": "LLM Compiler: Foundation Language Models for Compiler Optimization", "abstract": "Large Language Models (LLMs) have demonstrated remarkable capabilities across a variety of software engineering and coding tasks. However, their application in the domain of code and compiler optimization remains underexplored. Training LLMs is resource-intensive, requiring substantial GPU hours and extensive data collection, which can be prohibitive. To address this gap, we introduce LLM Compiler, a suite of robust, openly available, pre-trained models specifically designed for compiler tasks. Built on the foundation of Code Llama, LLM Compiler enhances the understanding of compiler intermediate representations (IRs), assembly language, and optimization techniques. The models have been trained on a vast corpus of 546 billion tokens of LLVM-IR and assembly code and have undergone instruction fine-tuning to interpret compiler behavior. To demonstrate the utility of these research tools, we also present fine-tuned versions of the models with enhanced capabilities in optimizing code size and disassembling from x86_64 and ARM assembly back into LLVM-IR. These achieve 77% of the optimising potential of an autotuning search, and 45% disassembly round trip (14% exact match). LLM Compiler is released under a bespoke commercial license to allow wide reuse and is available in two sizes: 7 billion and 13 billion parameters. Our aim is to provide scalable, cost-effective foundational models for further research and development in compiler optimization by both academic researchers and industry practitioners. Since we released LLM Compiler the community has quantized, repackaged, and downloaded the models over 250k times."}21{"work_id": 2400988715, "title": "Functional Stable Model Semantics and Answer Set Programming Modulo Theories", "abstract": "Recently there has been an increasing interest in incorporating ``intensional'' functions in answer set programming. Intensional functions are those whose values can be described by other functions and predicates, rather than being pre-defined as in the standard answer set programming. We demonstrate that the functional stable model semantics plays an important role in the framework of ``Answer Set Programming Modulo Theories (ASPMT)'' -- a tight integration of answer set programming and satisfiability modulo theories, under which existing integration approaches can be viewed as special cases where the role of functions is limited. We show that ``tight'' ASPMT programs can be translated into SMT instances, which is similar to the known relationship between ASP and SAT."}22{"work_id": 4391974543, "title": "Software Testing With Large Language Models: Survey, Landscape, and Vision", "abstract": "Pre-trained large language models (LLMs) have recently emerged as a breakthrough technology in natural language processing and artificial intelligence, with the ability to handle large-scale datasets and exhibit remarkable performance across a wide range of tasks. Meanwhile, software testing is a crucial undertaking that serves as a cornerstone for ensuring the quality and reliability of software products. As the scope and complexity of software systems continue to grow, the need for more effective software testing techniques becomes increasingly urgent, making it an area ripe for innovative approaches such as the use of LLMs. This paper provides a comprehensive review of the utilization of LLMs in software testing. It analyzes 102 relevant studies that have used LLMs for software testing, from both the software testing and LLMs perspectives. The paper presents a detailed discussion of the software testing tasks for which LLMs are commonly used, among which test case preparation and program repair are the most representative. It also analyzes the commonly used LLMs, the types of prompt engineering that are employed, as well as the accompanied techniques with these LLMs. It also summarizes the key challenges and potential opportunities in this direction. This work can serve as a roadmap for future research in this area, highlighting potential avenues for exploration, and identifying gaps in our current understanding of the use of LLMs in software testing."}23{"work_id": 2254118105, "title": "Solving QBF by Clause Selection", "abstract": "Algorithms based on the enumeration of implicit hitting sets find a growing number of applications, which include maximum satisfiability and model based diagnosis, among others. This paper exploits enumeration of implicit hitting sets in the context of Quantified Boolean Formulas (QBF). The paper starts by developing a simple algorithm for QBF with two levels of quantification, which is shown to relate with existing work on enumeration of implicit hitting sets, but also with recent work on QBF based on abstraction refinement. The paper then extends these ideas and develops a novel QBF algorithm, which generalizes the concept of enumeration of implicit hitting sets. Experimental results, obtained on representative problem instances, show that the novel algorithm is competitive with, and often outperforms, the state of the art in QBF solving."}24{"work_id": 4297611890, "title": "Subsystems of Second-Order Arithmetic", "abstract": "This new book on mathematical logic by Jeremy Avigad gives a thorough introduction to the fundamental results and methods of the subject from the syntactic point of view, emphasizing logic as the study of formal languages and systems and their proper use. Topics include proof theory, model theory, the theory of computability, and axiomatic foundations, with special emphasis given to aspects of mathematical logic that are fundamental to computer science, including deductive systems, constructive logic, the simply typed lambda calculus, and type-theoretic foundations. Clear and engaging, with plentiful examples and exercises, it is an excellent introduction to the subject for graduate students and advanced undergraduates who are interested in logic in mathematics, computer science, and philosophy, and an invaluable reference for any practicing logician\u2019s bookshelf."}25{"work_id": 4396242417, "title": "Enhancing Static Analysis for Practical Bug Detection: An LLM-Integrated Approach", "abstract": "While static analysis is instrumental in uncovering software bugs, its precision in analyzing large and intricate codebases remains challenging. The emerging prowess of Large Language Models (LLMs) offers a promising avenue to address these complexities. In this paper, we present LLift, a pioneering framework that synergizes static analysis and LLMs, with a spotlight on identifying use-before-initialization (UBI) bugs within the Linux kernel. Drawing from our insights into variable usage conventions in Linux, we enhance path analysis using post-constraint guidance. This approach, combined with our methodically crafted procedures, empowers LLift to adeptly handle the challenges of bug-specific modeling, extensive codebases, and the unpredictable nature of LLMs. Our real-world evaluations identified four previously undiscovered UBI bugs in the mainstream Linux kernel, which the Linux community has acknowledged. This study reaffirms the potential of marrying static analysis with LLMs, setting a compelling direction for future research in this area."}26{"work_id": 4393942723, "title": "State of the Art in Software Verification and Witness Validation: SV-COMP 2024", "abstract": "Abstract The 13th edition of the Competition on Software Verification (SV-COMP 2024) was the largest competition of its kind so far: A total of 76 tools for verification and witness validation were compared. The competition evaluated 59 verification systems and 17 validation systems from 34 teams from 12 countries. This yields a good overview of the state of the art in tools for software verification. The competition was executed on a benchmark set with 30 300 verification tasks for C programs and 587 . verification tasks for Java programs. The specifications again included reachability, memory safety, overflows, and termination. This year was the second time that the competition had an extra competition track on witness validation. We introduced a new witness format 2.0, and a new scoring schema for the validation track. All meta data about the verification and validation tools are available in the FM-Tools repository."}27{"work_id": 3177813494, "title": "A Direction-Aware Study of LLM-Based Code Translation Across Eight Programming Languages", "abstract": "Background. Large Language Models (LLMs) are increasingly used in software engineering tasks such as code generation, bug detection, and program repair. However, their use introduces inference-time costs that are rarely considered together with functional performance, especially in debugging and repair workflows where models may be invoked repeatedly. Aim. This study evaluates the correctness-energy trade-offs of LLMs across model scales in Python bug-fixing tasks. We examine how model size relates to code correctness, inference time, and GPU energy consumption. Method. We conduct a controlled empirical evaluation of six open-source code-oriented LLMs, ranging from 1.5B to 15B parameters, on 40 real-world Python bugs from the BugsInPy benchmark. Each model is executed multiple times per task under a consistent hardware and prompting setup. Repair performance is measured using Pass@k and test-suite outcomes, while computational cost is measured using inference time and GPU energy consumption. We also analyze generated outputs to identify recurring failure patterns. Results. Increasing model size substantially raised computational cost without consistently improving correctness. The smallest model, Qwen 1.5B, achieved the best overall performance, with a Pass@1 score of 43% and an average runtime of 38.7 seconds. In contrast, StarCoder 15B achieved a Pass@1 score of 23%, required 96.7 seconds, and consumed approximately 7 times more energy per inference while solving fewer tasks. Higher success rates were also observed in web-related projects, suggesting that structurally localized bugs are more effectively handled by current models. Conclusion. On the evaluated localized Python bug-fixing tasks, smaller LLMs offered a more favorable trade-off between correctness, inference time, and energy consumption. These results suggest that scaling model size does not automatically lead to more efficient LLM-based repair, and that inference cost should be considered alongside functional correctness when comparing models."}28{"work_id": 159920301, "title": "On intuitionistic linear logic", "abstract": "In this thesis we carry out a detailed study of the (propositional) intuitionistic fragment of Girard\u2019s linear logic (ILL). Firstly we give sequent calculus, natural deduction and axiomatic formulations of ILL. In particular our natural deduction is different from others and has important properties, such as closure under substitution, which others lack. We also study the process of reduction in all three local formulations, including a detailed proof of cut elimination. Finally, we consider translations between Instuitionistic Logic (IL) and ILL. We then consider the linear term calculus, which arises from applying the Curry-Howard correspondence to the natural deduction formulation. We show how the various proof theoretic formulations suggest reductions at the level of terms. The properties of strong normalization and confluence are proved for these reduction rules. We also consider mappings between the extended \u03bb-calculus and the linear term calculus. Next we consider a categorical model for ILL. We show how by considering the linear term calculus as an equational logic, we can derive a model: a linear category. We consider two alternative models: firstly, one due to Seely and then one due to Lafont. Surprisingly, we find that Seely\u2019s model is not sound, in that equal terms are not modelled with equal morphisms. We show how after adapting Seely\u2019s model (by viewing it in a more abstract setting) it becomes a particular instance of a linear category. We show how Lafont\u2019s model can also be seen as another particular instance of a linear category. Finally we consider various categories of coalgebras, whose construction can be seen as a categorical equivalent of the translation of IL into ILL."}29{"work_id": 4402442491, "title": "From Smallest Software Particle to System Specification", "abstract": "Software development can be seen as a process in which the knowledge and decisions of a wide variety of people are integrated to produce a machine-readable specification. The majority of today's specification and programming languages are based on computer-oriented and mathematical concepts. Those languages are difficult for people that are not a software professional. Domain models and domain-specific languages are a way to capture knowledge from people who have no software expertise, while also resulting in specifications that can be used as software. This thesis reports on the creation of a domain-oriented method to systematically transform knowledge and decisions of all people involved in a development process, into unambiguous specifications. A systematic literature review revealed that existing domain-oriented techniques have a low engineering maturity, are barely connected to human communication and thinking, and lack methodical support for applying domain models and domain-specific languages to create system specifications. This thesis describes how these three problems are addressed by a method called MuDForM. 25 years of modeling and specification experience was captured in a method definition and gradually improved, driven by the outcome of case studies and shortcomings of existing methods. A reflection on the method from the perspective of cognitive science and linguistics concludes this thesis, demonstrating the feasibility of cognition-based specifications. The result is a method with a uniform metamodel with precise modeling concepts, a process that guides the path from knowledge elicitation to engineered model, and a set of principles that enable implementation and improvement of the method. The method can be seen as a step in transforming a computer-centered and mathematics-oriented discipline, into one that facilitates knowledge and decision specification for all people involved in software development."}30{"work_id": 4225922019, "title": "cvc5: A Versatile and Industrial-Strength SMT Solver", "abstract": "Abstract cvc5 is the latest SMT solver in the cooperating validity checker series and builds on the successful code base of CVC4. This paper serves as a comprehensive system description of cvc5 \u2019s architectural design and highlights the major features and components introduced since CVC4 1.8. We evaluate cvc5 \u2019s performance on all benchmarks in SMT-LIB and provide a comparison against CVC4 and Z3."}31{"work_id": 4293212596, "title": "The Astropy Project : Sustaining and Growing a Community-oriented Open-source Project and the Latest Major Release (v5.0) of the Core Package*", "abstract": "Full list of authors: Price-Whelan, Adrian M.; Lim, Pey Lian; Earl, Nicholas; Starkman, Nathaniel; Bradley, Larry; Shupe, David L.; Patil, Aarya A.; Corrales, Lia; Brasseur, C. E.; Noethe, Maximilian; Donath, Axel; Tollerud, Erik; Morris, Brett M.; Ginsburg, Adam; Vaher, Eero; Weaver, Benjamin A.; Tocknell, James; Jamieson, William; van Kerkwijk, Marten H.; Robitaille, Thomas P.; Merry, Bruce; Bachetti, Matteo; Gunther, H. Moritz; Aldcroft, Thomas L.; Alvarado-Montes, Jaime A.; Archibald, Anne M.; Bodi, Attila; Bapat, Shreyas; Barentsen, Geert; Bazan, Juanjo; Biswas, Manish; Boquien, Mederic; Burke, D. J.; Cara, Daria; Cara, Mihai; Conroy, Kyle E.; Conseil, Simon; Craig, Matthew W.; Cross, Robert M.; Cruz, Kelle L.; D'Eugenio, Francesco; Dencheva, Nadia; Devillepoix, Hadrien A. R.; Dietrich, Jorg P.; Eigenbrot, Arthur Davis; Erben, Thomas; Ferreira, Leonardo; Foreman-Mackey, Daniel; Fox, Ryan; Freij, Nabil; Garg, Suyog; Geda, Robel; Glattly, Lauren; Gondhalekar, Yash; Gordon, Karl D.; Grant, David; Greenfield, Perry; Groener, Austen M.; Guest, Steve; Gurovich, Sebastian; Handberg, Rasmus; Hart, Akeem; Hatfield-Dodds, Zac; Homeier, Derek; Hosseinzadeh, Griffin; Jenness, Tim; Jones, Craig K.; Joseph, Prajwel; Kalmbach, J. Bryce; Karamehmetoglu, Emir; Kaluszynski, Mikolaj; Kelley, Michael S. P.; Kern, Nicholas; Kerzendorf, Wolfgang E.; Koch, Eric W.; Kulumani, Shankar; Lee, Antony; Ly, Chun; Ma, Zhiyuan; MacBride, Conor; Maljaars, Jakob M.; Muna, Demitri; Murphy, N. A.; Norman, Henrik; O'Steen, Richard; Oman, Kyle A.; Pacifici, Camilla; Pascual, Sergio; Pascual-Granado, J.; Patil, Rohit R.; Perren, Gabriel, I; Pickering, Timothy E.; Rastogi, Tanuj; Roulston, Benjamin R.; Ryan, Daniel F.; Rykoff, Eli S.; Sabater, Jose; Sakurikar, Parikshit; Salgado, Jesus; Sanghi, Aniket; Saunders, Nicholas; Savchenko, Volodymyr; Schwardt, Ludwig; Seifert-Eckert, Michael; Shih, Albert Y.; Jain, Anany Shrey; Shukla, Gyanendra; Sick, Jonathan; Simpson, Chris; Singanamalla, Sudheesh; Singer, Leo P.; Singhal, Jaladh; Sinha, Manodeep; Sipocz, Brigitta M.; Spitler, Lee R.; Stansby, David; Streicher, Ole; Sumak, Jani; Swinbank, John D.; Taranu, Dan S.; Tewary, Nikita; Tremblay, Grant R.; De Val-Borro, Miguel; Vasovic, Zlatan; Van Kooten, Samuel J.; Verma, Shresth; Cardoso, Jose Vinicius de Miranda; Williams, Peter K. G.; Wilson, Tom J.; Winkel, Benjamin; Wood-Vasey, W. M.; Xue, Rui; Yoachim, Peter; Zhang, Chen; Zonca, Andrea; Astropy Project Contributors; TARDIS Collaboration; Astropy Coordination Comm.--This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted reuse, distribution, and reproduction in any medium, provided the original work is properly cited."}32{"work_id": 2114444139, "title": "Innovation and Change in the Information Systems Curriculum of an Australian University:a Socio-Technical Perspective", "abstract": "Information Systems is a relatively new curriculum area and one that is still growing in size and importance. It involves applied studies that are concerned with the ways people build and use computer -based systems in their organisations to produce useful information. Information Systems is, of necessity, a socio-technical discipline that has to deal with issues involving both people and machines; with the multitude of human and non -human entities that comprise an information system.This thesis reports an investigation of how Information Systems curriculum is made and how the choices of individual lecturers or groups of lecturers to adopt or ignore a new concept or technology are formed. It addresses this issue by describing a study into how the programming language Visual Basic entered the Information Systems curriculum of an Australian university, and how it has retained its place there despite challenges from other programming languages. It is a study of curriculum innovation that involves an important but small change in the curriculum of a single department in a particular university.Little of the literature on innovation deals with university curriculum and most reported work is focussed on research, development and diffusion studies of the adoption, or otherwise, of centrally developed curriculum innovations in primary and secondary schools. The innovation described here is of a different order being developed initially by a single university lecturer in one of the subjects for which he had responsibility. It is important primarily because it examines something that does not appear to have been reported on before: the negotiations and alliances that allow new material, in this case the programming language Visual Basic, to enter individual subjects of a university curriculum, and to obtain a durable place there.The research investigates a single instance of innovation, and traces the associations between various human and non -human entities including Visual Basic, the university, the student laboratories, the Course Advisory Committee and the academic staff that made this happen. It follows the formation of alliances and complex networks of association, and how their interplay resulted in the curriculum change that allowed Visual Basic to enter the Information Systems curriculum, and to fend off challenges from other programming languages in order to retain its place there.I argue that in this curriculum innovation no pre -planned path was followed, and that representations of events like this as straightforward or well planned hide the complexity of what took place. The study reveals the complex set of negotiations and compromises made by both human and non -human actors in allowing Visual Basic to enter the curriculum.The study draws on the sociology of translations, more commonly known as actor-network theory (ANT) as a framework for its analysis. I show that innovation translation can be used to advantage to trace the progress of technological innovations such as this. My analysis maps the progress of Visual Basic from novelty to 'obvious choice' in this university's Information Systems curriculum."}33{"work_id": 2171139698, "title": "Test data generation: two evolutionary approaches to mutation testing", "abstract": "To my friends and supervisors,"}34{"work_id": 7131867455, "title": "The Effects of Generative AI on High-Skilled Work: Evidence from Three Field Experiments with Software Developers", "abstract": "This study evaluates the effect of generative artificial intelligence (AI) on software developer productivity via randomized controlled trials at Microsoft, Accenture, and an anonymous Fortune 100 company. These field experiments, run by the companies as part of their ordinary course of business, provided a random subset of developers with access to an AI-based coding assistant suggesting intelligent code completions. Although each experiment is noisy and results vary across experiments, when data are combined across three experiments and 4,867 developers, our analysis reveals a 26.08% increase (standard error: 10.3%) in completed tasks among developers using the AI tool. Notably, less experienced developers had higher adoption rates and greater productivity gains. This paper was accepted by Jean-Pierre Dube, marketing. Funding: M. Demirer and T. Salz thank the MIT GenAI Initiative for funding. Supplemental Material: The online appendices and data files are available at https://doi.org/10.1287/mnsc.2025.00535 ."}35{"work_id": 3046781014, "title": "ExaStencils: Advanced Multigrid Solver Generation", "abstract": "Present-day stencil codes are implemented in general-purpose programming languages, such as Fortran, C, or Java, Python or derivates thereof, and harnesses for parallelism, such as OpenMP, OpenCL or MPI. Project ExaStencils pursued a domain-specific approach with a language, called ExaSlang, that is stratified into four layers of abstraction, the most abstract being the formulation in continuous mathematics and the most concrete a full, automatically generated implementation. At every layer, the corresponding language expresses not only computational directives but also domain knowledge of the problem and platform to be leveraged for optimization. We describe the approach, the software technology behind it and several case studies that demonstrate its feasibility and versatility: high-performance stencil codes can be engineered, ported and optimized more easily and effectively."}36{"work_id": 1932627192, "title": "Model checking quantum protocols", "abstract": "This thesis describes model checking techniques for protocols arising in quantum information theory and quantum cryptography. We discuss the theory and implementation of a practical model checker, QMC, for quantum protocols. In our framework, we assume that the quantum operations performed in a protocol are restricted to those within the stabilizer formalism; while this particular set of operations is not universal for quantum computation, it allows us to develop models of several useful protocols as well as of systems involving both classical and quantum information processing. We detail the syntax, semantics and type system of QMC\u2019s modelling language, the logic QCTL which is used for verification, and the verification algorithms that have been implemented in the tool. We demonstrate our techniques with applications to a number of case studies."}37{"work_id": 7124592699, "title": "MSTDP: a multi-scale temporal deep learning framework for just-in-time software defect prediction with cross-attention fusion", "abstract": "Just-In-Time Defect Prediction (JITDP), as an important means to improve software quality and reduce maintenance costs, has received widespread attention in recent years. However, existing methods generally neglect multi-scale temporal features during the development process, lack dynamic modeling of developer behavior and project lifecycle, and have limited robustness when facing concept drift. To address these limitations, this paper proposes a novel Multi-Scale Temporal Defect Prediction framework (MSTDP) that integrates commit behavior patterns at temporal granularities of hours, days, and weeks, combining code semantic information, developer behavioral features, and lifecycle-aware mechanisms to comprehensively characterize the dynamic evolution patterns of defect introduction. MSTDP achieves deep feature fusion through cross-attention mechanisms and constructs a concept drift analysis module to enhance the model\u2019s adaptability across different evolutionary stages. Empirical results on 9 large-scale open-source projects demonstrate that MSTDP achieves optimal performance across all evaluation metrics: average accuracy of 76.89% (0.56% improvement), precision of 61.02% (0.53% improvement), recall of 67.82% (0.64% improvement), F1-score of 60.93% (0.46% improvement), and AUC of 81.88% (0.52% improvement), significantly outperforming 7 mainstream baseline methods including JITBoost, FENSE, and JIT-CF. Wilcoxon signed-rank tests confirm the statistical significance of these improvements ( \\(\\varvec{p < 0.05}\\) ). The research results validate the effectiveness of this method for efficient and accurate defect prediction in dynamic software engineering environments, demonstrating stronger generalization capability and robustness against concept drift."}38{"work_id": 4396905794, "title": "Predicting typeScript type annotations and definitions with machine learning", "abstract": "Type information is useful for developing large-scale software systems. Types help prevent bugs, but may be inflexible and hamper quick iteration on early prototypes. TypeScript, a syntactic superset of JavaScript, brings the best of both worlds, allowing programmers to freely mix statically and dynamically typed code, and choose the level of type safety they wish to opt into. However, type migration, the process of migrating an untyped program to a typed version, has remained a labour-intensive manual effort in practice. As a first step towards automated effective type migration, there has been interest in applying machine learning to the narrower problem of type prediction. In this dissertation, I propose to use machine learning to partially migrate JavaScript programs to TypeScript, by predicting type annotations and generating type definitions. To support this thesis, I make three contributions. First, I propose evaluating type prediction by type checking the generated annotations instead of computing accuracy. Second, I fine-tune a large language model with fill-in-the-middle capability to fill in the type and predict type annotations. Finally, I use a similar approach to fine-tune a large language model to generate missing type definitions.--Author's abstract"}39{"work_id": 3146286581, "title": "Probabilistic Grammatical Evolution", "abstract": "Grammatical Evolution (GE) is one of the most popular Genetic Programming (GP) variants, and it has been used with success in several problem domains. Since the original proposal, many enhancements have been proposed to GE in order to address some of its main issues and improve its performance. In this paper we propose Probabilistic Grammatical Evolution (PGE), which introduces a new genotypic representation and new mapping mechanism for GE. Specifically, we resort to a Probabilistic Context-Free Grammar (PCFG) where its probabilities are adapted during the evolutionary process, taking into account the productions chosen to construct the fittest individual. The genotype is a list of real values, where each value represents the likelihood of selecting a derivation rule. We evaluate the performance of PGE in two regression problems and compare it with GE and Structured Grammatical Evolution (SGE). The results show that PGE has a better performance than GE, with statistically significant differences, and achieved similar performance when comparing with SGE."}40{"work_id": 2949967139, "title": "Tiramisu: A Polyhedral Compiler for Expressing Fast and Portable Code", "abstract": "This paper introduces Tiramisu, a polyhedral framework designed to generate high performance code for multiple platforms including multicores, GPUs, and distributed machines. Tiramisu introduces a scheduling language with novel commands to explicitly manage the complexities that arise when targeting these systems. The framework is designed for the areas of image processing, stencils, linear algebra and deep learning. Tiramisu has two main features: it relies on a flexible representation based on the polyhedral model and it has a rich scheduling language allowing fine-grained control of optimizations. Tiramisu uses a four-level intermediate representation that allows full separation between the algorithms, loop transformations, data layouts, and communication. This separation simplifies targeting multiple hardware architectures with the same algorithm. We evaluate Tiramisu by writing a set of image processing, deep learning, and linear algebra benchmarks and compare them with state-of-the-art compilers and hand-tuned libraries. We show that Tiramisu matches or outperforms existing compilers and libraries on different hardware architectures, including multicore CPUs, GPUs, and distributed machines."}41{"work_id": 2095152777, "title": "Managing the Development of Large Software Systems (1970)", "abstract": "INTRODUCTION l am going to describe my pe,-.~onal views about managing large software developments. I have had various assignments during the past nit,.: years, mostly concerned with the development of software packages for spacecraft mission planning, commanding and post-flight analysis. In these assignments I have experienced different degrees of successwith respect to arriving at an operational state, on-time, and wi th in costs. I have become prejudiced by my experiences and I am going to relate some of these prejudices in this presentation."}42{"work_id": 4289665848, "title": "Reward Interfaces with Best-Effort Implementations", "abstract": "Interface theories, notably interface automata, serve as expressive frameworks for component-based design, specifying component behavior and interaction in concurrent systems. Traditional interface formalisms specify assumptions that a component\u2019s environment must satisfy and the guarantees that each component provides. This qualitative view of component interaction based on imposing strict assumptions and Boolean guarantees may, however, not be expressive enough to capture the system\u2019s allowed or desired behaviors under different environments. In this paper, we introduce reward interfaces to support component-based design while accommodating multi-valued correctness requirements and adaptive best-effort satisfaction of component\u2019s guarantees. Building upon interface automata, our framework enables modeling a rich class of quantitative component specifications. We propose formal notions of implementation, refinement and compatibility for reward interfaces. We study a class of reward interfaces with automata-based representations, for which we provide algorithms for checking compatibility and refinement, and existence of best-effort implementations. Our framework offers a comprehensive approach to reward interface specification and design."}43{"work_id": 4318573502, "title": "Semantically informed methods in structural proof theory", "abstract": "This thesis is part of a line of research aimed at investigating how insights and results from the algebraic and relational semantics of given families of logics can contribute to the design of \u2018good\u2019 proof calculi for these logics. It focuses on the intersection between syntax and semantics in structural proof theory. The results of the present thesis develop the interface between syntax and semantics for proof-theoretic purposes in very specific ways: on the semantic side, these results build on and further develop the link between relational and algebraic semantics of logics given by discrete dualities and their associated unified correspondence results; on the syntactic side, these results further develop the theory of proper multi-type display calculi. The results of this thesis include: a systematic connection between the syntactic shape of analytic inductive axioms and the generation of cut-free derivations of these axioms from their associated analytic structural rules; the introduction of proper display calculi for monotone modal logic and conditional logic and a large family of their axiomatic extensions, thanks to a reformulation of their neighbourhood semantics in a suitable multitype relational environment; extending the semantic analysis for monotone modal logic and conditional logic to graded modal logic and proposing a new definition of graded bisimulation."}44{"work_id": 4389109635, "title": "A Unifying Theory for Graph Transformation", "abstract": "The field of graph transformation studies the rule-based transformation of graphs. An important branch is the algebraic graph transformation tradition, in which approaches are defined and studied using the language of category theory. Most algebraic graph transformation approaches (such as DPO, SPO, SqPO, and AGREE) are opinionated about the local contexts that are allowed around matches for rules, and about how replacement in context should work exactly. The approaches also differ considerably in their underlying formal theories and their general expressiveness (e.g., not all frameworks allow duplication). This dissertation proposes an expressive algebraic graph transformation approach, called PBPO+, which is an adaptation of PBPO by Corradini et al. The central contribution is a proof that PBPO+ subsumes (under mild restrictions) DPO, SqPO, AGREE, and PBPO in the important categorical setting of quasitoposes. This result allows for a more unified study of graph transformation metatheory, methods, and tools. A concrete example of this is found in the second major contribution of this dissertation: a graph transformation termination method for PBPO+, based on decreasing interpretations, and defined for general categories. By applying the proposed encodings into PBPO+, this method can also be applied for DPO, SqPO, AGREE, and PBPO."}45{"work_id": 3016155638, "title": "VerX: Safety Verification of Smart Contracts", "abstract": "We present VerX, the first automated verifier able to prove functional properties of Ethereum smart contracts. VerX addresses an important problem as all real-world contracts must satisfy custom functional specifications.VerX is based on a careful combination of three techniques, enabling it to automatically verify temporal properties of infinite- state smart contracts: (i) reduction of temporal property verification to reachability checking, (ii) a new symbolic execution engine for the Ethereum Virtual Machine that is precise and efficient for a practical fragment of Ethereum contracts, and (iii) delayed predicate abstraction which uses symbolic execution during transactions and abstraction at transaction boundaries.Our extensive experimental evaluation on 83 temporal properties and 12 real-world projects, including popular crowdsales and libraries, demonstrates that VerX is practically effective."}46{"work_id": 4403223258, "title": "WhiteFox: White-Box Compiler Fuzzing Empowered by Large Language Models", "abstract": "Compiler correctness is crucial, as miscompilation can falsify program behaviors, leading to serious consequences over the software supply chain. In the literature, fuzzing has been extensively studied to uncover compiler defects. However, compiler fuzzing remains challenging: Existing arts focus on black- and grey-box fuzzing, which generates test programs without sufficient understanding of internal compiler behaviors. As such, they often fail to construct test programs to exercise intricate optimizations. Meanwhile, traditional white-box techniques, such as symbolic execution, are computationally inapplicable to the giant codebase of compiler systems. Recent advances demonstrate that Large Language Models (LLMs) excel in code generation/understanding tasks and even have achieved state-of-the-art performance in black-box fuzzing. Nonetheless, guiding LLMs with compiler source-code information remains a missing piece of research in compiler testing. To this end, we propose W hite F ox , the first white-box compiler fuzzer using LLMs with source-code information to test compiler optimization, with a spotlight on detecting deep logic bugs in the emerging deep learning (DL) compilers. W hite F ox adopts a multi-agent framework: (i) an LLM-based analysis agent examines the low-level optimization source code and produces requirements on the high-level test programs that can trigger the optimization; (ii) an LLM-based generation agent produces test programs based on the summarized requirements. Additionally, optimization-triggering tests are also used as feedback to further enhance the test generation prompt on the fly. Our evaluation on the three most popular DL compilers ( i.e ., PyTorch Inductor, TensorFlow-XLA, and TensorFlow Lite) shows that W hite F ox can generate high-quality test programs to exercise deep optimizations requiring intricate conditions, practicing up to 8 times more optimizations than state-of-the-art fuzzers. To date, W hite F ox has found in total 101 bugs for the compilers under test, with 92 confirmed as previously unknown and 70 already fixed. Notably, W hite F ox has been recently acknowledged by the PyTorch team, and is in the process of being incorporated into its development workflow. Finally, beyond DL compilers, W hite F ox can also be adapted for compilers in different domains, such as LLVM, where WHiteFox has already found multiple bugs."}47{"work_id": 2921681895, "title": "Parameter synthesis in Markov models", "abstract": "Markov models comprise states with probabilistic transitions. The analysis of these models is ubiquitous and studied in, among others, reliability engineering, artificial intelligence, systems biology, and formal methods. Naturally, their analysis crucially depends on the transition probabilities. Often, these probabilities are approximations based on data or reflect configurable parts of a modelled system. To represent the uncertainty about the probabilities, we study parametric Markov models, in which the probabilities are symbolic expressions rather than concrete values. More precisely, we consider parametric Markov decision processes (pMDPs) and parametric Markov chains (pMCs) as special case. Substitution of the parameters yields classical, parameter-free Markov decision processes (MDPs) and Markov chains (MCs).A pMDP thus induces uncountably many MDPs. Each MDP may satisfy reachability and reward properties, such as \"the maximal probability that the system reaches an `offline' state is less than 0.01%\", or \"the maximal expected energy consumption is less than 20 kWh. \"Lifting these properties to pMDPs yields fundamental problems asking: - \"Is there an induced MDP satisfying the property?\" (feasibility), its dual - \"Do all induced MDPs satisfy the property?\" (validity), and advanced problems such as \"What is a concise representation for all induced MCs satisfying the property?\" We study these problems on a conceptual level, and design and implement both improved and novel algorithms. On the conceptual side, a thorough discussion of the feasibility problem yields new results, such as: (1) that answering various variants of the feasibility problem is \u2014 in terms of complexity \u2014 as hard as finding roots of a multivariate polynomial, and (2) that these problems are tightly connected to the analysis of memoryless strategies in partially observable MDPs, a famous model in artificial intelligence. Additionally, we introduce family MCs (fMCs), a subclass of pMCs with finitely many induced MCs. Among others, fMCs define fundamental problems underlying the quantitative analysis of software product lines and sketching of probabilistic programs. On the algorithmic side, (1) we present and analyse improved but previously known approaches, and combine them to meet practical needs. Their analysis inspired (2) three new and orthogonal approaches, utilising advances in convex optimisation, as well as adapting prominent ideas such as inductive synthesis and abstraction-refinement to the particular setting. All methods efficiently exploit advances in the off-the-shelf analysis of MDPs. On the empirical side, the new methods improve the state-of-the-art considerably, handling hundreds of parameters and millions of states. All the approaches we present have been implemented in open-source tools."}48{"work_id": 1498342204, "title": "An Introduction to Input/Output Automata", "abstract": "We describe the input/output automaton model, a model for concurrent and distributed discrete event systems. We define the model, illustrate the model with several examples concerning vending machines and a leader election algorithm, and survey the ways in which the model has been used. 1 , 2"}49{"work_id": 2962772482, "title": "A survey of methods for explaining black box models", "abstract": "In recent years, many accurate decision support systems have been constructed as black boxes, that is as systems that hide their internal logic to the user. This lack of explanation constitutes both a practical and an ethical issue. The literature reports many approaches aimed at overcoming this crucial weakness, sometimes at the cost of sacrificing accuracy for interpretability. The applications in which black box decision systems can be used are various, and each approach is typically developed to provide a solution for a specific problem and, as a consequence, it explicitly or implicitly delineates its own definition of interpretability and explanation. The aim of this article is to provide a classification of the main problems addressed in the literature with respect to the notion of explanation and the type of black box system. Given a problem definition, a black box type, and a desired explanation, this survey should help the researcher to find the proposals more useful for his own work. The proposed classification of approaches to open black box models should also be useful for putting the many research open questions in perspective."}50{"work_id": 2884622219, "title": "The value of universally available raw NMR data for transparency, reproducibility, and integrity in natural product research", "abstract": "Covering: up to 2018With contributions from the global natural product (NP) research community, and continuing the Raw Data Initiative, this review collects a comprehensive demonstration of the immense scientific value of disseminating raw nuclear magnetic resonance (NMR) data, independently of, and in parallel with, classical publishing outlets. A comprehensive compilation of historic to present-day cases as well as contemporary and future applications show that addressing the urgent need for a repository of publicly accessible raw NMR data has the potential to transform natural products (NPs) and associated fields of chemical and biomedical research. The call for advancing open sharing mechanisms for raw data is intended to enhance the transparency of experimental protocols, augment the reproducibility of reported outcomes, including biological studies, become a regular component of responsible research, and thereby enrich the integrity of NP research and related fields."}51{"work_id": 3023977240, "title": "From constraint programming to heterogeneous parallelism", "abstract": "The scaling limitations of multi-core processor development have led to a diversification of the processor cores used within individual computers. Heterogeneous computing has become widespread, involving the cooperation of several structurally different processor cores. Central processor (CPU) cores are most frequently complemented with graphics processors (GPUs), which despite their name are suitable for many highly parallel computations besides computer graphics. Furthermore, deep learning accelerators are rapidly gaining relevance. Many applications could profit from heterogeneous computing but are held back by the surrounding software ecosystems. Heterogeneous systems are a challenge for compilers in particular, which usually target only the increasingly marginalised homogeneous CPU cores. Therefore, heterogeneous acceleration is primarily accessible via libraries and domain-specific languages (DSLs), requiring application rewrites and resulting in vendor lock-in. This thesis presents a compiler method for automatically targeting heterogeneous hardware from existing sequential C/C++ source code. A new constraint programming method enables the declarative specification and automatic detection of computational idioms within compiler intermediate representation code. Examples of computational idioms are stencils, reductions, and linear algebra. Computational idioms denote algorithmic structures that commonly occur in performance-critical loops. Consequently, well-designed accelerator DSLs and libraries support computational idioms with their programming models and function interfaces. The detection of computational idioms in their middle end enables compilers to incorporate DSL and library backends for code generation. These backends leverage domain knowledge for the efficient utilisation of heterogeneous hardware. The constraint programming methodology is first derived on an abstract model and then implemented as an extension to LLVM. Two constraint programming languages are designed to target this implementation: the Compiler Analysis Description Language (CAnDL), and the extended Idiom Detection Language (IDL). These languages are evaluated on a range of different compiler problems, culminating in a complete heterogeneous acceleration pipeline integrated with the Clang C/C++ compiler. This pipeline was evaluated on the established benchmark collections NPB and Parboil. The approach was applicable to 10 of the benchmark programs, resulting in significant speedups from 1.26\u00d7 on \u201chisto\u201d to 275\u00d7 on \u201csgemm\u201d when starting from sequential baseline versions. In summary, this thesis shows that the automatic recognition of computational idioms during compilation enables the heterogeneous acceleration of sequential C/C++ programs. Moreover, the declarative specification of computational idioms is derived in novel declarative programming languages, and it is demonstrated that constraint programming on Single Static Assignment intermediate code is a suitable method for their automatic detection."}52{"work_id": 149631060, "title": "Decidability Issues for Petri Nets -- a survey", "abstract": "We survey 25 years of research on decidability issues for Petri nets. We collect results on the decidability of important properties, equivalence notions, and temporal logics."}53{"work_id": 2790202156, "title": "ZEUS: Analyzing Safety of Smart Contracts", "abstract": "A smart contract is hard to patch for bugs once it is deployed, irrespective of the money it holds.A recent bug caused losses worth around $50 million of cryptocurrency.We present ZEUS-a framework to verify the correctness and validate the fairness of smart contracts.We consider correctness as adherence to safe programming practices, while fairness is adherence to agreed upon higher-level business logic.ZEUS leverages both abstract interpretation and symbolic model checking, along with the power of constrained horn clauses to quickly verify contracts for safety.We have built a prototype of ZEUS for Ethereum and Fabric blockchain platforms, and evaluated it with over 22.4K smart contracts.Our evaluation indicates that about 94.6% of contracts (containing cryptocurrency worth more than $0.5 billion) are vulnerable.ZEUS is sound with zero false negatives and has a low false positive rate, with an order of magnitude improvement in analysis time as compared to prior art.1 Oyente is under active development and future releases could add more features and reduce the false alarms."}54{"work_id": 4381982883, "title": "ChatGPT for Education and Research: Opportunities, Threats, and Strategies", "abstract": "In recent years, the rise of advanced artificial intelligence technologies has had a profound impact on many fields, including education and research. One such technology is ChatGPT, a powerful large language model developed by OpenAI. This technology offers exciting opportunities for students and educators, including personalized feedback, increased accessibility, interactive conversations, lesson preparation, evaluation, and new ways to teach complex concepts. However, ChatGPT poses different threats to the traditional education and research system, including the possibility of cheating on online exams, human-like text generation, diminished critical thinking skills, and difficulties in evaluating information generated by ChatGPT. This study explores the potential opportunities and threats that ChatGPT poses to overall education from the perspective of students and educators. Furthermore, for programming learning, we explore how ChatGPT helps students improve their programming skills. To demonstrate this, we conducted different coding-related experiments with ChatGPT, including code generation from problem descriptions, pseudocode generation of algorithms from texts, and code correction. The generated codes are validated with an online judge system to evaluate their accuracy. In addition, we conducted several surveys with students and teachers to find out how ChatGPT supports programming learning and teaching. Finally, we present the survey results and analysis."}55{"work_id": 3207822760, "title": "Computer programming skills: A cognitive perspective", "abstract": "The studies in the current thesis examine programming skills from a broad cognitive perspective. Study 1 aims to validate two short versions of an existing programming test. Studies 2 and 3 ask whether cognitive skills and autistic traits predict programming performance in an undergraduate course. The results show that logical reasoning is the most reliable predictor of programming skill and that autistic traits do not predict programming performance. In the final study, brain activity is measured in an EEG experiment. The results show that a programming language may be processed similarly in the brain to natural languages."}56{"work_id": 2249134499, "title": "Improving compiler optimizations using machine learning", "abstract": "\"The number of optimizations that are available in modern day compilers are in their hundreds, and would only grow in number in the future. This increase in the number of optimizations available to the compiler is primarily due to the fact that each optimization would try and target specific code constructs and increase their efficiency by applying specific templates. As the optimizations target increasingly specific code constructs, increasing number of optimizations that are being applied to a specific code may have never been intended for the code that is presently being compiled. At present all compilers apply a given set of optimizations blindly to all the code being compiled by the compiler, with the assumption that the optimization would either increase the performance of the code or make no changes. This assumption would mean that either the optimizations are not aggressive enough to reach their full potential for fear of having unintended consequences, or mean that in certain cases even degrade code performance. Knowing which optimizations to apply from the hundreds available in modern day compilers becomes difficult and important at the same time. Our research in improving compiler optimization planning aims to solve this impasse. Selective application of the optimizations from the vast number of available optimizations to the compilers is the key to increasing performance of the code being compiled. This selective application of the optimizations either involves extensive human involvement that would be (and probably already is) too complex and unsustainable or involve the use of intelligence embedded in the compiler itself. Performance improvement achieved using compiler optimizations without any input from an application developer provides this crucial boost to the application with no recurring associated cost. Another advantage of such techniques is that it can provide performance improvement over and above an already optimized code design. The process of providing the compiler with such intelligence is the primary focus of this dissertation. The optimization plan of the compiler can be primarily divided into three different logical parts, Optimization Selection , Optimization Ordering , and Optimization Tuning ; we would present our research and specific solutions to improving all three of these steps involved in optimization planning. Optimization Selection is the processing of selecting the beneficial optimizations from a given set of optimizations. We present an optimization selection solution on the widely used GCC compiler used to compile a financial library. The financial library is used by one of the largest commercial financial firms to model their risk exposure, and the computational needs of this financial library are a significant chunk of the total computation needs of the firm. We achieve a speedup of 2% to 4% compared to the baseline, which could (if implemented) directly impact their extremely large annual computational budget. Optimization Ordering is the process of arranging the order in which a set of optimizations are applied to a given piece of code. The application of multiple optimizations modify and transform the codes that they are applied to, and thus indirectly interact with each other, some of the optimizations are clean up optimizations and others could be enabling optimizations for another set of optimizations. Such interdependence of optimizations makes it more and more difficult to understand intuitively the right order to apply these optimizations, and generates the need for a method to generate good optimization orderings . This problem is usually referred to as phase ordering, and has been considered to be a difficult problem to solve in the past. In this dissertation we show that using source feature analysis in combination with machine learning algorithms can provide us with a robust heuristic in solving phase ordering. We use the Jikes RVM (Jikes Research Virtual Machine developed by IBM) to present our results and achieve a 4% to 8% improvement in the final performance of a given set of benchmarks. Finally Optimization Tuning is the process of tuning a single optimization to improve its efficacy. The example of optimization tuning that we study in this dissertation is method inlining, We use the Java HotSpot Virtual Machine (the most commonly used Java VM developed by Sun Microsystems and now actively developed and maintained by Oracle) and Maxine VM (A Java Research VM developed by Oracle) to present our results in improving the performance of method inlining, and achieve a 10% to 14% improvement in performance. We also show an interesting twist to presenting the final machine learning heuristic in the form of a decision tree, and discuss the advantages of using this over an artificial neural network.\""}57{"work_id": 1844775953, "title": "Metric domains for completeness", "abstract": "Completeness is a semantic non-operational notion of program correctness suggested (but not pursued) by W.W.Wadge. Program verification can be simplified using completeness, firstly by removing the approximation relation from proofs, and secondly by removing partial objects from proofs. The dissertation proves the validity of this approach by demonstrating how it can work in the class of metric domains. We show how the use of Tarski's least fixed point theorem can be replaced by a non-operational unique fixed point theorem for many well behaved Programs. The proof of this theorem is also non-operational. After this we consider the problem of deciding what it means f or a function to be \"complete\". It is shown that combinators such as function composition are not complete, although they are traditionally assumed to be so. Complete versions for these combinators are given. Absolute functions are proposed as a general model for the notion of a complete function. The theory of mategories is introduced as a vehicle for studying absolute functions."}58{"work_id": 2540354435, "title": "Weighted Rules under the Stable Model Semantics", "abstract": "We introduce the concept of weighted rules under the stable model semantics following the log-linear models of Markov Logic. This provides versatile methods to overcome the deterministic nature of the stable model semantics, such as resolving inconsistencies in answer set programs, ranking stable models, associating probability to stable models, and applying statistical inference to computing weighted stable models. We also present formal comparisons with related formalisms, such as answer set programs, Markov Logic, ProbLog, and P-log."}59{"work_id": 2797025890, "title": "Openness and praxis: A situated study of academic staff meaning-making and decision-making with respect to openness and use of open educational practices in higher education", "abstract": "Open education seeks to improve educational access, effectiveness, and equality. The term \u2018open educational practices\u2019 (OEP) describes practices that include the creation, use and reuse of open educational resources (OER) as well as open pedagogies and open sharing of teaching practices. While open education at a macro level is regarded by many as a positive goal, complexity resides in determining and negotiating the value of open practice at an individual level, and structural and cultural barriers to openness persist within higher education. The goal of this research study was to understand whether, why, how, and to what extent individual educators used OEP, specifically with respect to teaching, and also to identify any shared characteristics among those who used OEP (i.e. \u2018open educators\u2019). The study was conducted at a medium-sized, research-focused university in Ireland, without explicit policies on OER or OEP. The empirical study used a qualitative, interpretive, and critical approach in order to focus on participants\u2019 meaning-making and decision-making with respect to openness. Data was gathered from academic staff across a broad range of disciplines and all employment categories (i.e. permanent, non-permanent, full-time and part-time). Using constructivist grounded theory, a model of the concept \u2018Using OEP for teaching\u2019 was constructed to describe open educators\u2019 digital identities and digital practices, and the values and motives associated with decisions about whether to use OEP. The results of the study indicated little intentional use of OER and relatively low use of OEP. The four dimensions shared by open educators were: (i) balancing privacy and openness, (ii) developing digital literacies, (iii) valuing social learning, and (iv) challenging traditional teaching role expectations. The use of OEP by academic staff was found to be complex, personal, contextual, and continually negotiated. The study adds to a growing body of work on open educational practices and also provides evidence for policy makers and practitioners arguing for critical and context-specific approaches to open education."}60{"work_id": 2491926874, "title": "Formal memory models for verifying C systems code", "abstract": "Systems code is almost universally written in the C programming language or a variant. C has a very low level of type and memory abstraction and formal reasoning about C systems code requires a memory model that is able to capture the semantics of C pointers and types. At the same time, proof-based verification demands abstraction, in particular from the aliasing and frame problems. In this thesis, we study the mechanisation of a series of models, from semantic to separation logic, for achieving this abstraction when performing interactive theorem-prover based verification of C systems code in higher- order logic. We do not commit common oversimplifications, but correctly deal with C's model of programming language values and the heap, while developing the ability to reason abstractly and efficiently. We validate our work by demonstrating that the models are applicable to real, security- and safety-critical code by formally verifying the memory allocator of the L4 microkernel. All formalisations and proofs have been developed and machine-checked in the Isabelle/HOL theorem prover."}61{"work_id": 2486519520, "title": "Machine learning and automated theorem proving", "abstract": "Computer programs to find formal proofs of theorems have a history going back nearly half a century. Originally designed as tools for mathematicians, modern applications of automated theorem provers and proof assistants are much more diverse. In particular they are used in formal methods to verify software and hardware designs to prevent costly, or life threatening, errors being introduced into systems from microchips to controllers for medical equipment or space rockets. Despite this, the high level of human expertise required in their use means that theorem proving tools are not widely used by non specialists, in contrast to computer algebra packages which also deal with the manipulation of symbolic mathematics. The work described in this dissertation addresses one aspect of this problem, that of heuristic selection in automated theorem provers. In theory such theorem provers should be automatic and therefore easy to use; in practice the heuristics used in the proof search are not universally optimal for all problems so human expertise is required to determine heuristic choice and to set parameter values. Modern machine learning has been applied to the automation of heuristic selection in a first order logic theorem prover. One objective was to find if there are any features of a proof problem that are both easy to measure and provide useful information for determining heuristic choice. Another was to determine and demonstrate a practical approach to making theorem provers truly automatic. In the experimental work, heuristic selection based on features of the conjecture to be proved and the associated axioms is shown to do better than any single heuristic. Additionally a comparison has been made between static features, measured prior to the proof search process, and dynamic features that measure changes arising in the early stages of proof search. Further work was done on determining which features are important, demonstrating that good results are obtained with only a few features required."}62{"work_id": 2206959660, "title": "Automatic selection of compiler optimizations using program characterization and machine learning", "abstract": "It has been shown that machine-learning driven optimizations often outperform bundled optimizations or human-constructed heuristics in selecting suitable optimizations for particular classes of applications. In this dissertation, we propose using new modeling and program characterization techniques to mitigate the current issues in selecting the proper compiler optimizations that improve the performance of a given program. First, we propose a new modeling technique, named tournament predictor, that outperforms two state-of-the-art modeling techniques, sequence predictor and speedup predictor. Second, we discuss two novel techniques for characterizing a given program with a prediction model. One is a graph-based program characterization that uses a graph-based program representation and another is a pattern-based program characterization, which allows user-level definitions of expressive features that cannot be easily constructed using current state-of-the-art techniques. These novel techniques were evaluated and compared to three previously state-of-the-art program characterization techniques: performance counters, reactions, and source code features. The techniques introduced in this dissertation that automatically select compiler optimizations are not only novel and practical, but also outperform state-of-the-art techniques in prediction capability. Our proposed techniques will assist users in understanding and optimizing applications, ultimately helping them to better take advantage of emerging architectures rather than hand tuning or standard compiler optimizations."}63{"work_id": 4293846201, "title": "On Assessing ML Model Robustness: A Methodological Framework (Academic Track)", "abstract": "Due to their uncertainty and vulnerability to adversarial attacks, machine learning (ML) models can lead to severe consequences, including the loss of human life, when embedded in safety-critical systems such as autonomous vehicles. Therefore, it is crucial to assess the empirical robustness of such models before integrating them into these systems. ML model robustness refers to the ability of an ML model to be insensitive to input perturbations and maintain its performance. Against this background, the Confiance.ai research program proposes a methodological framework for assessing the empirical robustness of ML models. The framework encompasses methodological processes (guidelines) captured in Capella models, along with a set of supporting tools. This paper aims to provide an overview of this framework and its application in an industrial setting."}64{"work_id": 4408219312, "title": "Leveraging type annotations for effective fuzzing of python programs", "abstract": "Python is among the most popular programming languages, and it powers software systems across diverse domains. Ensuring Python-language systems can grow sustainably is a pressing challenge, complicated by Python's lack of static typing. Optional type annotations have been added to Python to address this, and static type checkers have emerged to offer some compile-time guarantees, but these tools often emit false positives, and there is evidence that developers have been slow to adopt them. To complement these existing Python code analysis tools, we propose and implement a novel approach, Type Hint Fuzzing. Type Hint Fuzzing leverages type annotations to automatically perform coverage-guided mutational fuzzing, an extremely successful software testing technique, in a target codebase. Because Type Hint Fuzzing executes the code, every issue found has an associated counterexample that triggers it, precluding false positives. Three key developments enable the Type Hint Fuzzing tool's implementation: 1) a model of Python's type system in the ACL2 Sedan theorem prover, with custom enumerators for primitive types 2) a type checker plugin that extracts type annotation information, and 3) a custom input encoding that is amenable to mutational fuzzing while preserving decodability. In this thesis, we elaborate on these developments and perform a rigorous evaluation to assess the performance of the tool. In our evaluation, we first compare the custom encoding to pickle, the de facto object serializer in Python, and find that the custom encoding is unequivocally better for fuzzing. Secondly, we explore various tool configurations to understand the effect of hyperparameters on fuzzing performance. We draw some conclusions, and find that more work is needed to fully understand these effects. Finally, we report issues that the tool found in the set of target repositories. Three bug reports have been accepted as legitimate by open-source maintainers, and two of them have been patched. We conclude with extensive discussion of the results and avenues of future work to build on this promising approach. --Author's abstract"}65{"work_id": 2905489900, "title": "Machine Learning for SAT Solvers", "abstract": "Boolean SAT solvers are indispensable tools in a variety of domains in computer science and engineering where efficient search is required. Not only does this relieve the burden on the users of implementing their own search algorithm, they also leverage the surprising effectiveness of modern SAT solvers. Thanks to many decades of cumulative effort, researchers have made persistent improvements to SAT technology to the point where nowadays the best solvers are routinely used to solve extremely large instances with millions of variables. Even though our current paradigm of SAT solvers runs in worst-case exponential time, it appears that the techniques and heuristics embedded in these solvers avert the worst-case exponential time in practice. The implementations of these various solver heuristics and techniques are vital to the solvers effectiveness in practice. \\n \\nThe state-of-the-art heuristics and techniques gather data during the run of the solver to inform their choices like which variable to branch on next or when to invoke a restart. The goal of these choices is to minimize the solving time. The methods in which these heuristics and techniques process the data generally do not have theoretical underpinnings. Consequently, understanding why these heuristics and techniques perform so well in practice remains a challenge and systematically improving them is rather difficult. This goes to the heart of this thesis, that is to utilize machine learning to process the data as part of an optimization problem to minimize solving time. Research in machine learning exploded over the past decade due to its success in extracting useful information out of large volumes of data. Machine learning outclasses manual handcoding in a wide variety of complex tasks where data are plentiful. This is also the case in modern SAT solvers where propagations, conflict analysis, and clause learning produces plentiful of data to be analyzed, and exploiting this data to the fullest is naturally where machine learning comes in. Many machine learning techniques have a theoretical basis that makes them easy to analyze and understand why they perform well. \\n \\nThe branching heuristic is the first target for injecting machine learning. First we studied extant branching heuristics to understand what makes a branching heuristics good empirically. The fundamental observation is that good branching heuristics cause lots of clause learning by triggering conflicts as quickly as possible. This suggests that variables that cause conflicts are a valuable source of data. Another important observation is that the state-of-the-art VSIDS branching heuristic internally implements an exponential moving average. This highlights the importance of accounting for the temporal nature of the data when deciding to branch. These observations led to our proposal of a series of machine learning-based branching heuristics with the common goal of selecting the branching variables to increase probability of inducing conflicts. These branching heuristics are shown empirically to either be on par or outcompete the current state-of-the art. \\n \\nThe second area of interest for machine learning is the restart policy. Just like in the branching heuristic work, we first study restarts to observe why they are effective in practice. The important observation here is that restarts shrink the assignment stack as conjectured by other researchers. We show that this leads to better clause learning by lowering the LBD of learnt clauses. Machine learning is used to predict the LBD of the next clause, and a restart is triggered when the LBD is excessively high. This policy is shown to be on par with state-of-the-art. The success of incorporating machine learning into branching and restarts goes to show that machine learning has an important role in the future of heuristic and technique design for SAT solvers."}66{"work_id": 58732440, "title": "An exploration of novice compilation behaviour in BlueJ", "abstract": "Our research explores the process by which beginning programmers go about writing programs. We have focused our explorations on what we call compilation behaviour: the programming behaviour a student engages in while repeatedly editing and compiling their programs in an attempt to make them syntactically, if not semantically, correct. The students whose behaviour we have observed were engaged in learning to program in an objects-first style using BlueJ, an environment designed for supporting novice programmers just starting out with the Java programming language. The significant results of our work are two-fold. First, we have developed tools for visualising the process by which students write their programs. Using these tools, we can quickly obtain valuable information about their process, and use that information to inform further research regarding their behaviour, or apply it immediately in a classroom context to better support the struggling learner. Second, we have proposed a quantification of novice compilation behavior which we call the error quotient. Using this metric, we can determine how well (or poorly) a student fares with syntax errors while learning to program. This quantity, like our tools for visualisation, provides a powerful indicator for how much or little a student is struggling with the language while programming, and correlates significantly with traditional indicators for academic progress."}67{"work_id": 3117137355, "title": "egg: Fast and Extensible Equality Saturation", "abstract": "E-graphs, originally developed for use in automated theorem provers, are data structures that compactly represent a large number of expressions and the equalities between them. Recently, a technique called equality saturation adapted e-graphs for program optimization. Equality saturation can ameliorate issues with traditional, destructive term rewriting since e-graph rewriting only adds information to the e-graph. After rewriting, the e-graph represents a large space of equivalent terms (including the original term), and a final extraction procedure selects the best term according to a user-provided cost function. The egg library is a fast and flexible open-source implementation of e-graphs and equality saturation. Unlike solvers, egg is a white-box library for programmatic use. Users can easily define their own languages, rewrites, and analyses, and they can inspect and manipulate the e-graph directly. It incorporates novel techniques such as e-class analysis , a mechanism for integrating program analyses modulo equality; and rebuilding , a deferred invariant restoration algorithm. egg has been used in hundreds of academic and industrial projects for program optimization, synthesis, and verification in many domains; some are briefly highlighted in this article."}68{"work_id": 2900153411, "title": "An abstract domain for certifying neural networks", "abstract": "We present a novel method for scalable and precise certification of deep neural networks. The key technical insight behind our approach is a new abstract domain which combines floating point polyhedra with intervals and is equipped with abstract transformers specifically tailored to the setting of neural networks. Concretely, we introduce new transformers for affine transforms, the rectified linear unit (ReLU), sigmoid, tanh, and maxpool functions. We implemented our method in a system called DeepPoly and evaluated it extensively on a range of datasets, neural architectures (including defended networks), and specifications. Our experimental results indicate that DeepPoly is more precise than prior work while scaling to large networks. We also show how to combine DeepPoly with a form of abstraction refinement based on trace partitioning. This enables us to prove, for the first time, the robustness of the network when the input image is subjected to complex perturbations such as rotations that employ linear interpolation."}69{"work_id": 4391677389, "title": "IDENTIFYING CONCERNS WHEN SPECIFYING MACHINE LEARNING-ENABLED SYSTEMS: A PERSPECTIVE-BASED APPROACH", "abstract": "I would like to express my sincere gratitude to those"}70{"work_id": 2189687801, "title": "General Program Synthesis from Examples Using Genetic Programming with Parent Selection Based on Random Lexicographic Orderings of Test Cases", "abstract": "Massachusetts, U.S.A. is located along the southern boundary of the geographic range of moose (Alces alces) in North America. This is an atypical environment for moose, because of its extremely high levels of human development and high year-round temperatures, which are possibly at the limits of moose physiological tolerances. I investigated the role of these two factors on moose movements and habitat selection to determine how human development of the landscape and temperature influence moose occupation of this extreme environment. In addition, the response of moose to these factors provides insights into the influence of development and temperature on individual fitness and population persistence. Thermal conditions in Massachusetts were consistently higher than the reported physiological tolerances of moose, and higher than parts of the range where high temperatures have negatively affected moose reproduction and survival. Moose greatly reduced their selection of open foraging habitat and increased selection for thermal shelters as temperatures increased above upper critical limits; this same pattern was apparent when comparing day (warmer) to night (cooler) activities. A strong transition in the use of habitats occurred at dawn and dusk, which corresponded to peaks in hourly movement rates at these times, indicating a transition in state from foraging at night to bedding during the day. The ability of moose to adapt to this extreme thermal environment through thermoregulatory behaviors reveals the limitations of predicting species distributions based solely on theoretical temperature tolerances. Massachusetts has one of the highest rates of moose-vehicle collisions (MVCs) per-capita moose and resulting human fatalities. The majority (86%) of MVCs occurred on roads with high speed limits and traffic volumes, and occurred on these roads at much higher rates than would be predicted based on their availability on the landscape. The dense road network in Massachusetts had a strong negative effect on the movements and habitat selection patterns of moose. Moose avoided crossing roads and greatly reduced their use near roads. Road avoidance increased with increasing disturbance intensity associated with higher traffic volumes and busier times of day. Roadways reduced habitat availability and connectivity, were a major source of additive mortality for moose."}71{"work_id": 1486172410, "title": "Introduction to Software Testing", "abstract": "Software testing can be regarded as an art, a craft, and a science. The practical, step-by-step approach presented in this book provides a bridge between these different viewpoints. A single worked example runs throughout, with consistent use of test automation. Each testing technique is introduced in the context of this example, helping students see its strengths and weaknesses. The technique is then explained in more detail, providing a deeper understanding of underlying principles. Finally the limitations of each technique are demonstrated by inserting faults, giving learners concrete examples of when each technique succeeds or fails in finding faults. Coverage includes black-box testing, white-box testing, random testing, unit testing, object-oriented testing, and application testing. The authors also emphasise the process of applying the techniques, covering the steps of analysis, test design, test implementation, and interpretation of results. The book's web site has programming exercises and Java source code for all examples."}72{"work_id": 4385245566, "title": "Exploiting Generative AI to Scale up Intelligent Tutoring Systems", "abstract": "As a present to Mizar on its 50th anniversary, we develop an AI/TP system that automatically proves about 60% of the Mizar theorems in the hammer setting. We also automatically prove 75% of the Mizar theorems when the automated provers are helped by using only the premises used in the human-written Mizar proofs. We describe the methods and large-scale experiments leading to these results. This includes in particular the E and Vampire provers, their ENIGMA and Deepire learning modifications, a number of learning-based premise selection methods, and the incremental loop that interleaves growing a corpus of millions of ATP proofs with training increasingly strong AI/TP systems on them. We also present a selection of Mizar problems that were proved automatically."}73{"work_id": 4403110951, "title": "Semantics-aware human-computer interaction software testing", "abstract": "In an age where technology and human interaction are becoming ever more entwined, human-interactive systems\u2014encompassing web services and artificial intelligence\u2014are integral to daily life. From web applications to automated speech recognition (ASR) systems, these technologies are transforming human-machine communication and underpinning contemporary society's functionality. However, ensuring the reliability and robustness of these systems is challenging due to the vast and unpredictable input/output spaces they operate within, making traditional testing methods, such as fuzzing, insufficient. This thesis addresses four critical aspects of human-computer interaction (HCI) system reliability and robustness: test input generation, service behavior representation, automation of testing processes, and test oracle generation. These aspects are vital for developing robust and reliable HCI systems, each representing a key area where current methods fall short and require innovative approaches. The first aspect, test input generation, is explored through web applications, introducing a novel methodology that employs curiosity-driven reinforcement learning to create high-quality action sequences that adhere to temporal logical relationships. This enhances test input generation, demonstrating how conventional strategies can be adapted for complex systems. The second aspect, service behavior representation, is addressed in the context of RESTful API backend components in web services. This study presents a model-based testing approach using a RESTful-service Property Graph (RPG) to represent service behaviors, which improves the effectiveness of fuzzing tests by streamlining call sequence generation. The third aspect, automation of testing processes, focuses on RESTful API testing in industry, a critical need given RESTful APIs' prevalence in corporate cloud services. The research introduces an automated framework that identifies and helps fix new bugs, emphasizing the necessity of human involvement for improving automated processes and updating API specifications and test cases. The final aspect, test oracle generation, is advanced through accessibility testing for ASR systems, particularly for stuttered speech. It introduces ASTER, a tool that generates diverse stuttering test cases to identify ASR system failures effectively, underscoring the importance of robust test oracle generation for HCI software. Through these four interconnected studies, this thesis introduces a comprehensive approach to testing within HCI systems. It underscores the need for specialized methodologies to address the unique challenges of reliability and robustness. By integrating traditional testing techniques with the dynamic characteristics of these systems, this research advances the field of HCI system reliability and robustness, particularly within human-machine interaction."}74{"work_id": 2327217190, "title": "Verification of programs in virtual memory using separation logic", "abstract": "Formal reasoning about programs executing in virtual memory is a difficult problem, as it is an environment in which writing to memory can change its layout. At the same time, correctly reasoning about virtual memory is essential to operating system verification, a field we are very much interested in. Current approaches rely on entering special modes or making high-level assertions about the nature of virtual memory which may or may not be correct. In this thesis, we examine the problems created by virtual memory and develop a unified view of memory, both physical and virtual, based on separation logic. We first develop this model for a simple programming language on a simplified architecture with a one-level page table, taking care to prove it constitutes a separation logic. We then extend the framework to deal with low-level C programs executing in a virtual memory environment of the ARMv6 architecture with a two-level page table. We perform two case studies involving mapping in of a new page into the current address space: first for the simple version of our logic, and finally for our full framework. The case studies demonstrate that separation logic style modular reasoning via the frame rule can be used in a unified model which encompasses virtual memory, even in the presence of page table writes. To our knowledge, we present the first model offering a unified view of virtual and physical memory, the first separation logic involving an address translation mechanism, as well as the first published model of a functional subset of ARM memory management unit. Our memory models, framework, proofs and all results are formalised in the Isabelle/HOL interactive theorem prover."}75{"work_id": 3007157104, "title": "Machine Learning Testing: Survey, Landscapes and Horizons", "abstract": "This paper provides a comprehensive survey of techniques for testing machine learning systems; Machine Learning Testing (ML testing) research. It covers 144 papers on testing properties (e.g., correctness, robustness, and fairness), testing components (e.g., the data, learning program, and framework), testing workflow (e.g., test generation and test evaluation), and application scenarios (e.g., autonomous driving, machine translation). The paper also analyses trends concerning datasets, research trends, and research focus, concluding with research challenges and promising research directions in ML testing."}76{"work_id": 2964015378, "title": "Detecting Functionality-Specific Vulnerabilities via Retrieving Individual Functionality-Equivalent APIs in Open-Source Repositories", "abstract": "Functionality-specific vulnerabilities, which mainly occur in Application Programming Interfaces (APIs) with specific functionalities, are crucial for software developers to detect and avoid. When detecting individual functionality-specific vulnerabilities, the existing two categories of approaches are ineffective because they consider only the API bodies and are unable to handle diverse implementations of functionality-equivalent APIs. To effectively detect functionality-specific vulnerabilities, we propose APISS, the first approach to utilize API doc strings and signatures instead of API bodies. APISS first retrieves functionality-equivalent APIs for APIs with existing vulnerabilities and then migrates Proof-of-Concepts (PoCs) of the existing vulnerabilities for newly detected vulnerable APIs. To retrieve functionality-equivalent APIs, we leverage a Large Language Model for API embedding to improve the accuracy and address the effectiveness and scalability issues suffered by the existing approaches. To migrate PoCs of the existing vulnerabilities for newly detected vulnerable APIs, we design a semi-automatic schema to substantially reduce manual costs. We conduct a comprehensive evaluation to empirically compare APISS with four state-of-the-art approaches of detecting vulnerabilities and two state-of-the-art approaches of retrieving functionality-equivalent APIs. The evaluation subjects include 180 widely used Java repositories using 10 existing vulnerabilities, along with their PoCs. The results show that APISS effectively retrieves functionality-equivalent APIs, achieving a Top-1 Accuracy of 0.81 while the best of the baselines under comparison achieves only 0.55. APISS is highly efficient: the manual costs are within 10 minutes per vulnerability and the end-to-end runtime overhead of testing one candidate API is less than 2 hours. APISS detects 179 new vulnerabilities and receives 60 new CVE IDs, bringing high value to security practice."}77{"work_id": 2783614532, "title": "A Survey on Compiler Autotuning using Machine Learning", "abstract": "Since the mid-1990s, researchers have been trying to use machine-learning-based approaches to solve a number of different compiler optimization problems. These techniques primarily enhance the quality of the obtained results and, more importantly, make it feasible to tackle two main compiler optimization problems: optimization selection (choosing which optimizations to apply) and phase-ordering (choosing the order of applying optimizations). The compiler optimization space continues to grow due to the advancement of applications, increasing number of compiler optimizations, and new target architectures. Generic optimization passes in compilers cannot fully leverage newly introduced optimizations and, therefore, cannot keep up with the pace of increasing options. This survey summarizes and classifies the recent advances in using machine learning for the compiler optimization field, particularly on the two major problems of (1) selecting the best optimizations, and (2) the phase-ordering of optimizations. The survey highlights the approaches taken so far, the obtained results, the fine-grain classification among different approaches, and finally, the influential papers of the field."}78{"work_id": 4313894866, "title": "The Science of Literature Reviews: Searching, Identifying, Selecting, and Synthesising", "abstract": "The ability to conduct an explicit and robust literature review by students, scholars or scientists is critical in producing excellent journal articles, academic theses, academic dissertations or working papers. A literature review is an evaluation of existing research works on a specific academic topic, theme or subject to identify gaps and propose future research agenda. Many postgraduate students in higher education institutions lack the necessary skills and understanding to conduct in-depth literature reviews. This may lead to the presentation of incorrect, false or biased inferences in their theses or dissertations. This study offers scientific knowledge on how literature reviews in different fields of study could be conducted to mitigate against biased inferences such as unscientific analogies and baseless recommendations. The literature review is presented as a process that involves several activities including searching, identifying, reading, summarising, compiling, analysing, interpreting and referencing. We hope this article serves as reference material to improve the academic rigour in the literature review chapters of postgraduate students\u2019 theses or dissertations. This article prompts established scholars to explore more innovative ways through which scientific literature reviews can be conducted to identify gaps (empirical, knowledge, theoretical, methodological, application and population gap) and propose a future research agenda."}79{"work_id": 4410362977, "title": "Emergence of Calabi\u2013Yau manifolds in high-precision black-hole scattering", "abstract": "Abstract When two massive objects (black holes, neutron stars or stars) in our universe fly past each other, their gravitational interactions deflect their trajectories 1,2 . The gravitational waves emitted in the related bound-orbit system\u2014the binary inspiral\u2014are now routinely detected by gravitational-wave observatories 3 . Theoretical physics needs to provide high-precision templates to make use of unprecedented sensitivity and precision of the data from upcoming gravitational-wave observatories 4 . Motivated by this challenge, several analytical and numerical techniques have been developed to approximately solve this gravitational two-body problem. Although numerical relativity is accurate 5\u20137 , it is too time-consuming to rapidly produce large numbers of gravitational-wave templates. For this, approximate analytical results are also required 8\u201315 . Here we report on a new, highest-precision analytical result for the scattering angle, radiated energy and recoil of a black hole or neutron star scattering encounter at the fifth order in Newton\u2019s gravitational coupling G , assuming a hierarchy in the two masses. This is achieved by modifying state-of-the-art techniques for the scattering of elementary particles in colliders to this classical physics problem in our universe. Our results show that mathematical functions related to Calabi\u2013Yau (CY) manifolds, 2 n -dimensional generalizations of tori, appear in the solution to the radiated energy in these scatterings. We anticipate that our analytical results will allow the development of a new generation of gravitational-wave models, for which the transition to the bound-state problem through analytic continuation and strong-field resummation will need to be performed."}80{"work_id": 2789444712, "title": "Industry 4.0: state of the art and future trends", "abstract": "Rapid advances in industrialisation and informatisation methods have spurred tremendous progress in developing the next generation of manufacturing technology. Today, we are on the cusp of the Fourth Industrial Revolution. In 2013, amongst one of 10 \u2018Future Projects\u2019 identified by the German government as part of its High-Tech Strategy 2020 Action Plan, the Industry 4.0 project is considered to be a major endeavour for Germany to establish itself as a leader of integrated industry. In 2014, China\u2019s State Council unveiled their ten-year national plan, Made-in-China 2025, which was designed to transform China from the world\u2019s workshop into a world manufacturing power. Made-in-China 2025 is an initiative to comprehensively upgrade China\u2019s industry including the manufacturing sector. In Industry 4.0 and Made-in-China 2025, many applications require a combination of recently emerging new technologies, which is giving rise to the emergence of Industry 4.0. Such technologies originate from different disciplines including cyber-physical Systems, IoT, cloud computing, Industrial Integration, Enterprise Architecture, SOA, Business Process Management, Industrial Information Integration and others. At this present moment, the lack of powerful tools still poses a major obstacle for exploiting the full potential of Industry 4.0. In particular, formal methods and systems methods are crucial for realising Industry 4.0, which poses unique challenges. In this paper, we briefly survey the state of the art in the area of Industry 4.0 as it relates to industries."}81{"work_id": 4408711372, "title": "A Progressive Polyhedral Approximation Method for Nonlinear PDE-Constrained Electricity-Water Nexus Dispatch", "abstract": "This letter proposes an efficient progressive polyhedral approximation (PA) method to tackle the high nonlinearity and nonconvexity of optimal electricity-water nexus (EWN) dispatch caused by hyperbolic nonlinear partial differential equations (HNPDEs). In this method, the HNPDE-constrained EWN dispatch model can be reformulated into a tractable mixedinteger linear programming (MILP) problem by tailored adaptive discretization and piecewise PA. Furthermore, a progressive approximation refinement technique is developed to dynamically strengthen the MILP for efficient convergence to a near-optimal solution. Comparative studies have validated the effectiveness of the proposed method in reducing decision-making time for the EWN dispatch."}82{"work_id": 4406882143, "title": "Beyond the current state of just-in-time adaptive interventions in mental health: a qualitative systematic review", "abstract": "Background: Just-In-Time Adaptive Interventions (JITAIs) are interventions designed to deliver timely tailored support by adjusting to changes in users' internal states and external contexts. To accomplish this, JITAIs often apply complex analytic techniques, such as machine learning or Bayesian algorithms to real- or near-time data acquired from smartphones and other sensors. Given the idiosyncratic, dynamic, and context dependent nature of mental health symptoms, JITAIs hold promise for mental health. However, the development of JITAIs is still in the early stages and is complex due to the multifactorial nature of JITAIs. Considering this complexity, Nahum-Shani et al. developed a conceptual framework for developing and testing JITAIs for health-related problems. This review evaluates the current state of JITAIs in the field of mental health including their alignment with Nahum-Shani et al.'s framework. Methods: Nine databases were systematically searched in August 2023. Protocol or empirical studies self-identifying their intervention as a \"JITAI\" targeting mental health were included in the qualitative synthesis if they were published in peer-reviewed journals and written in English. Results: Of the 1,419 records initially screened, 9 papers reporting on 5 JITAIs were included (sample size range: 5 to an expected 264). Two JITAIs were for bulimia nervosa, one for depression, one for insomnia, and one for maternal prenatal stress. Although most core components of Nahum-Shani's et al.'s framework were incorporated in the JITAIs, essential elements (e.g., adaptivity and receptivity) within the core components were missing and the core components were only partly substantiated by empirical evidence (e.g., interventions were supported, but the decision rules and points were not). Complex analytical techniques such as data from passive monitoring of individuals' states and contexts were hardly used. Regarding the current state of studies, initial findings on usability, feasibility, and effectiveness appear positive. Conclusions: JITAIs for mental health are still in their early stages of development, with opportunities for improvement in both development and testing. For future development, it is recommended that developers utilize complex analytical techniques that can handle real-or near-time data such as machine learning, passive monitoring, and conduct further research into empirical-based decision rules and points for optimization in terms of enhanced effectiveness and user-engagement."}83{"work_id": 7134194765, "title": "A Debris\u2010Flow Hazard Assessment Framework Based on an Improved AHP \u2013 CRITIC Method: A Case Study of Gaoling Gully", "abstract": "ABSTRACT As a sudden and highly destructive geological hazard, debris flows pose significant challenges for hazard assessment. However, such assessments often suffer from sparse data, unclear mechanisms, and limited decision\u2010making transparency, highlighting the need for a synergistic modeling approach that integrates domain knowledge with data\u2010driven methods. To address this need, this study proposes a knowledge\u2013data dual\u2010driven hazard assessment framework. By employing an improved AHP\u2013CRITIC hybrid weighting scheme, it effectively combines expert knowledge with statistical characteristics of multi\u2010source data and incorporates the SHAP model to enhance the interpretability of the decision\u2010making process. Using Gaoling Gully as a case study and integrating field investigations with satellite imagery, 14 evaluation factors were selected from four categories\u2014topography, lithology, hydrology, and land cover. An interpretable single\u2010gully debris\u2010flow hazard assessment framework was developed based on an improved AHP\u2013CRITIC weighting method and the SHAP interpretation model. The AHP\u2013CRITIC approach was used to combine subjective and objective weights to delineate hazard zones under different rainfall return periods (10a, 20a, 50a, and 100a). The assessment results were further validated using FLO\u20102D numerical simulations and ROC curves. The results demonstrate that the AHP\u2013CRITIC method achieves high predictive performance and shows strong agreement with the FLO\u20102D simulation results, indicating a clear physical basis. As rainfall intensity increases, high\u2010hazard zones exhibit a linear expansion along the main gully. The SHAP analysis further reveals that hydrodynamic and source\u2010material conditions play dominant roles in the study area. This integrated assessment framework provides a solid theoretical foundation and technical support for managing single\u2010gully debris\u2010flow hazards."}84{"work_id": 4399087350, "title": "E-learning and the Future of Business Education: The Case of GCC", "abstract": null}85{"work_id": 2787911489, "title": "Automated Code Generation for Maximizing Performance of Detailed Chemistry Calculations in OpenFOAM", "abstract": null}86{"work_id": 2796251079, "title": "A Concise Introduction to Logic", "abstract": null}87{"work_id": 3185223169, "title": "An Effort Estimation Model for Agile Software Development", "abstract": null}88{"work_id": 2911537985, "title": "Microservices vs. Service-oriented architecture", "abstract": null}89{"work_id": 2154148696, "title": "Supervisory Control of Timed Discrete-Event Systems", "abstract": null}90{"work_id": 2725449579, "title": "Mutation Testing Advances: An Analysis and Survey", "abstract": null}91{"work_id": 4407983386, "title": "Parallel TimesNet-BiLSTM model for ultra-short-term photovoltaic power forecasting using STL decomposition and auto-tuning", "abstract": null}92{"work_id": 4313480275, "title": "Algorithmics: The Spirit of Computing", "abstract": null}93{"work_id": 4392397123, "title": "Evolution to revolution: Critical exploration of educators\u2019 perceptions of the impact of Artificial Intelligence (AI) on the teaching and learning process in the GCC region", "abstract": null}94{"work_id": 3132279601, "title": "Coping with COVID-19: Higher Education in the GCC Countries", "abstract": null}95{"work_id": 2915211782, "title": "Novice Programmers and Introductory Programming", "abstract": null}96{"work_id": 4381516741, "title": "The Python Programming Language", "abstract": null}97{"work_id": 2188794726, "title": "Dynamic Dataflow Graphs", "abstract": null}98{"work_id": 4398768423, "title": "LLM4VV: Developing LLM-driven testsuite for compiler validation", "abstract": null}99{"work_id": 4206807714, "title": "Handbook of Satisfiability", "abstract": null}100{"work_id": 1481397690, "title": "Satisfiability Modulo Theories", "abstract": null}101