English
Related papers

Related papers: Functional Programming and Security

200 papers

We give a rigorous characterization of what it means for a programming language to be memory safe, capturing the intuition that memory safety supports local reasoning about state. We formalize this principle in two ways. First, we show how…

Programming Languages · Computer Science 2018-04-10 Arthur Azevedo de Amorim , Catalin Hritcu , Benjamin C. Pierce

Propositional Linear Temporal Logic (LTL) is a popular formalism for specifying desirable requirements and security and privacy policies for software, networks, and systems. Yet expressing such requirements and policies in LTL remains…

Logic in Computer Science · Computer Science 2026-04-09 Priscilla Kyei Danso , Mohammad Saqib Hasan , Niranjan Balasubramanian , Omar Chowdhury

One common task of developing or maintaining software is searching the source code for information like specific method calls or write accesses to certain fields. This kind of information is required to correctly implement new features and…

Software Engineering · Computer Science 2016-11-18 Markus Kimmig , Martin Monperrus , Mira Mezini

The class of Basic Feasible Functionals BFF$_2$ is the type-2 counterpart of the class FP of type-1 functions computable in polynomial time. Several characterizations have been suggested in the literature, but none of these present a…

Logic in Computer Science · Computer Science 2023-06-22 Emmanuel Hainry , Bruce M. Kapron , Jean-Yves Marion , Romain Péchoux

Practical implementations of high-level languages must provide access to libraries and system services that have APIs specified in a low-level language (usually C). An important characteristic of such mechanisms is the foreign-interface…

Programming Languages · Computer Science 2007-05-23 Kathleen Fisher , Riccardo Pucella , John Reppy

Property-based testing is a powerful method to validate program correctness. It is, however, not widely use in industry as the barrier of entry can be very high. One of the hindrances is to write the generators that are needed to generate…

Programming Languages · Computer Science 2023-09-13 Triera Gashi , Sophie Adeline Solheim Bosio , Joachim Tilsted Kristensen , Michael Kirkedal Thomsen

Probabilistic programming is considered as a framework, in which basic components of cognitive architectures can be represented in unified and elegant fashion. At the same time, necessity of adopting some component of cognitive…

Artificial Intelligence · Computer Science 2016-05-05 Alexey Potapov

The goal of this paper is to help mainstream programmers routinely use formal verification on their smart contracts by 1) proposing a new YAML-format for writing general-purpose formal specifications, 2) demonstrating how a formal…

Programming Languages · Computer Science 2019-12-09 Suhabe Bugrara

A coverage type generalizes refinement types found in many functional languages with support for must-style underapproximate reasoning. Property-based testing frameworks are one particularly useful domain where such capabilities are useful…

Programming Languages · Computer Science 2025-09-03 Zhe Zhou , Benjamin Delaware , Suresh Jagannathan

We present a system for the automatic differentiation of a higher-order functional array-processing language. The core functional language underlying this system simultaneously supports both source-to-source automatic differentiation and…

Mathematical Software · Computer Science 2018-06-07 Amir Shaikhha , Andrew Fitzgibbon , Dimitrios Vytiniotis , Simon Peyton Jones , Christoph Koch

Formal methods provide systematic and rigorous techniques for software development. We strongly believe that they must be taught in computer science curricula. In this paper we present the pedagogic rationale and the concrete implementation…

Logic in Computer Science · Computer Science 2021-11-17 Salwa Souaf , Frédéric Loulergue

Early stages of system development involve outlining desired features such as functionality, availability, or usability. Specifications are derived from these features that concretize vague ideas presented in natural languages. The…

Software Engineering · Computer Science 2014-10-09 Rongjie Yan , Chih-Hong Cheng , Guangquan Zhang , Yesheng Chai

The problem of synthesis of gate-level descriptions of digital circuits from behavioural specifications written in higher-level programming languages (hardware compilation) has been studied for a long time yet a definitive solution has not…

Programming Languages · Computer Science 2009-07-07 Dan R. Ghica

Deployed AI systems often do not work. They can be constructed haphazardly, deployed indiscriminately, and promoted deceptively. However, despite this reality, scholars, the press, and policymakers pay too little attention to functionality.…

Machine Learning · Computer Science 2022-07-05 Inioluwa Deborah Raji , I. Elizabeth Kumar , Aaron Horowitz , Andrew D. Selbst

In order to work with mathematical content in computer systems, it is necessary to represent it in formal languages. Ideally, these are supported by tools that verify the correctness of the content, allow computing with it, and produce…

Logic in Computer Science · Computer Science 2020-05-27 Cezary Kaliszyk , Florian Rabe

There is no denying the fact that with the widespread usage of computers and the Internet in our daily lives, security of information and data has gained increased attention. Information stored in electronic form is more susceptible to…

Cryptography and Security · Computer Science 2016-10-04 Muhammad Farooq-i-Azam

Computer programs are often factored into pure components -- simple, total functions from inputs to outputs -- and components that may have side effects -- errors, changes to memory, parallel threads, abortion of the current loop, etc. We…

Computation and Language · Computer Science 2025-04-02 Dylan Bumford , Simon Charlow

In recent years, there has been an increased interest in tools that establish \emph{incorrectness} rather than correctness of program properties. In this work we build on this approach by developing a novel methodology to prove…

Programming Languages · Computer Science 2024-09-24 Kelvin Qian , Scott Smith , Brandon Stride , Shiwei Weng , Ke Wu

Throughout the history of functional programming, recursion has emerged as a natural method for describing loops in programs. However, there does often exist a substantial cognitive distance between the recursive definition and the simplest…

Programming Languages · Computer Science 2020-02-17 Satoshi Egi , Yuichi Nishiwaki

This paper attempts to connects the evolution of computer languages with the evolution of life, where the later has been dictated by \emph{theory of evolution of species}, and tries to give supportive evidence that the new languages are…

Programming Languages · Computer Science 2020-07-07 K. R. Chowdhary
‹ Prev 1 8 9 10 Next ›