English
Related papers

Related papers: Software Libraries and Their Reuse: Entropy, Kolmo…

200 papers

Automating algorithm configuration is growing increasingly necessary as algorithms come with more and more tunable parameters. It is common to tune parameters using machine learning, optimizing performance metrics such as runtime and…

Artificial Intelligence · Computer Science 2020-12-25 Maria-Florina Balcan , Tuomas Sandholm , Ellen Vitercik

Software diversity protects against a modern-day exploits such as code-reuse attacks. When an attacker designs a code-reuse attack on an example executable, it relies on replicating the target environment. With software diversity, the…

Programming Languages · Computer Science 2013-12-16 Michael Stewart

The problem of software artifact retrieval has the goal to effectively locate software artifacts, such as a piece of source code, in a large code repository. This problem has been traditionally addressed through the textual query. In other…

Machine Learning · Computer Science 2016-11-15 Liang Wu , Hui Xiong , Liang Du , Bo Liu , Guandong Xu , Yong Ge , Yanjie Fu , Yuanchun Zhou , Jianhui Li

Systematic generalization remains challenging for current language models, which are known to be both sensitive to semantically similar permutations of the input and to struggle with known concepts presented in novel contexts. Although…

Computation and Language · Computer Science 2025-05-28 Sondre Wold , Lucas Georges Gabriel Charpentier , Étienne Simon

Within psychology, neuroscience and artificial intelligence, there has been increasing interest in the proposal that the brain builds probabilistic models of sensory and linguistic input: that is, to infer a probabilistic model from a…

Machine Learning · Computer Science 2017-08-08 Paul M. B. Vitanyi , Nick Chater

The code base of software projects evolves essentially through inserting and removing information to and from the source code. We can measure this evolution via the elements of information - tokens, words, nodes - of the respective…

Software Engineering · Computer Science 2025-06-10 Adriano Torres , Sebastian Baltes , Christoph Treude , Markus Wagner

The rise of multi-paradigm languages challenges traditional classification methods, leading to practical software engineering issues like interoperability defects. This systematic literature review (SLR) maps the formal foundations of…

Programming Languages · Computer Science 2025-08-04 Mikel Vandeloise

Modern software systems rely on dependency networks of reusable libraries, where breaking changes propagate and cause downstream consumers to fail. Despite growing research across ecosystems, no comprehensive synthesis exists. We conduct a…

Software Engineering · Computer Science 2026-05-26 Juntao Chen , Tingting Bi , Yanlin Wang , Patanamon Thongtanunam

Effective use of parallel and distributed computing in science depends upon multiple interdependent entities and activities that form an ecosystem. Active engagement between application users and technology catalysts is a crucial activity…

Software Engineering · Computer Science 2013-09-10 Ketan Maheshwari , David Kelly , Scott J. Krieder , Justin M. Wozniak , Daniel S. Katz , Mei Zhi-Gang , Mainak Mookherjee

In this paper, we define a Mathematical model of program structure. Mathematical model of program structure defined here provides unified mathematical treatment of program structure, which reveals that a program is a large and finite set of…

Software Engineering · Computer Science 2014-09-18 Kwangmyong Rim , Yonghua Choe

Program synthesis is a class of regression problems where one seeks a solution, in the form of a source-code program, mapping the inputs to their corresponding outputs exactly. Due to its precise and combinatorial nature, program synthesis…

Artificial Intelligence · Computer Science 2018-06-08 Yewen Pu , Zachery Miranda , Armando Solar-Lezama , Leslie Pack Kaelbling

Software redesign preserves functionality while improving quality attributes, but manual reuse of code and tests is costly and error-prone, especially in crossrepository redesigns. Focusing on static analyzers where cross-repo redesign…

Software Engineering · Computer Science 2026-04-13 Xiaowen Zhang , Huaien Zhang , Shin Hwei Tan

Software systems are evolving by adding new functions and modifying existing functions over time. Through the evolution, the structure of software is becoming more complex and so the understandability and maintainability of software systems…

Software Engineering · Computer Science 2014-08-22 Ginika Mahajan , Ashima

Nowadays, software development progresses rapidly to incorporate new features. To facilitate such growth and provide convenience for developers when creating and updating software, reusing open-source software (i.e., thirdparty library…

Software Engineering · Computer Science 2024-12-02 Shangzhi Xu , Jialiang Dong , Weiting Cai , Juanru Li , Arash Shaghaghi , Nan Sun , Siqi Ma

The expanding hardware diversity in high performance computing adds enormous complexity to scientific software development. Developers who aim to write maintainable software have two options: 1) To use a so-called data locality abstraction…

Software Engineering · Computer Science 2023-11-10 Andreas Hadjigeorgiou , Christodoulos Stylianou , Michele Weiland , Dirk Jacob Verschuur , Jacob Finkenrath

Most modern software systems (operating systems like Linux or Android, Web browsers like Firefox or Chrome, video encoders like ffmpeg, x264 or VLC, mobile and cloud applications, etc.) are highly-configurable. Hundreds of configuration…

Software Engineering · Computer Science 2019-06-10 Juliana Alves Pereira , Hugo Martin , Mathieu Acher , Jean-Marc Jézéquel , Goetz Botterweck , Anthony Ventresque

Jupyter Notebook is a popular tool among data analysts and scientists for working with data. It provides a way to combine code, documentation, and visualizations in a single, interactive environment, facilitating code reuse. While code…

Software Engineering · Computer Science 2023-02-24 Mingke Yang , Yuming Zhou , Bixin Li , Yutian Tang

A problem is a multivalued function from a set of \emph{instances} to a set of \emph{solutions}. We consider only instances and solutions coded by sets of integers. A problem admits preservation of some computability-theoretic weakness…

Library learning is the process of building a library of common functionalities from a given set of programs. Typically, this process is applied in the context of aiding program synthesis: concise functions can help the synthesizer produce…

Programming Languages · Computer Science 2024-10-10 Abhiram Bellur , Razan Alghamdi , Kidus Workneh , Joseph Izraelevitz

In this paper, we present some results on information, complexity and entropy as defined below and we discuss their relations with the Kolmogorov-Sinai entropy which is the most important invariant of a dynamical system. These results have…

Dynamical Systems · Mathematics 2019-08-17 Vieri Benci , Claudio Bonanno , Stefano Galatolo , Giulia Menconi , Federico Ponchio