English
Related papers

Related papers: An Incremental Slicing Method for Functional Progr…

200 papers

In the present paper we formally define the notion of abstract program slicing, a general form of program slicing where properties of data are considered instead of their exact value. This approach is applied to a language with numeric and…

Logic in Computer Science · Computer Science 2016-05-20 Isabella Mastroeni , Damiano Zanardini

The incremental gradient method is a prominent algorithm for minimizing a finite sum of smooth convex functions, used in many contexts including large-scale data processing applications and distributed optimization over networks. It is a…

Optimization and Control · Mathematics 2022-02-09 Mert Gürbüzbalaban , Asuman Ozdaglar , Pablo Parrilo

If the result of an expensive computation is invalidated by a small change to the input, the old result should be updated incrementally instead of reexecuting the whole computation. We incrementalize programs through their derivative. A…

Programming Languages · Computer Science 2013-12-04 Yufei Cai , Paolo G. Giarrusso , Tillmann Rendel , Klaus Ostermann

The division operation is important for many areas of data processing. Especially considering today's demand for hardware accelerators for machine learning algorithms, there is a high demand for an efficient calculation of the division…

Signal Processing · Electrical Eng. & Systems 2022-09-12 Michael Lunglmayr

In this paper, we propose an incremental algorithm for computing cylindrical algebraic decompositions. The algorithm consists of two parts: computing a complex cylindrical tree and refining this complex tree into a cylindrical tree in real…

Symbolic Computation · Computer Science 2012-10-23 Changbo Chen , Marc Moreno Maza

It is classical that, when the small deformation is assumed, the incremental analysis problem of an elastoplastic structure with a piecewise-linear yield condition and a linear strain hardening model can be formulated as a convex quadratic…

Optimization and Control · Mathematics 2017-08-22 Yoshihiro Kanno

Probabilistic programming is a growing area that strives to make statistical analysis more accessible, by separating probabilistic modelling from probabilistic inference. In practice this decoupling is difficult. No single inference…

Programming Languages · Computer Science 2022-04-15 Maria I. Gorinova

In real-world machine learning applications, data subsets correspond to especially critical outcomes: vulnerable cyclist detections are safety-critical in an autonomous driving task, and "question" sentences might be important to a dialogue…

Machine Learning · Computer Science 2020-03-03 Vincent S. Chen , Sen Wu , Zhenzhen Weng , Alexander Ratner , Christopher Ré

Pull-tabbing is an evaluation technique for functional logic programs which computes all non-deterministic results in a single graph structure. Pull-tab steps are local graph transformations to move non-deterministic choices towards the…

Programming Languages · Computer Science 2020-08-28 Michael Hanus , Finn Teegen

We introduce program splicing, a programming methodology that aims to automate the commonly used workflow of copying, pasting, and modifying code available online. Here, the programmer starts by writing a "draft" that mixes unfinished code,…

Programming Languages · Computer Science 2017-05-26 Yanxin Lu , Swarat Chaudhuri , Chris Jermaine , David Melski

Iterative refinement (IR) is a popular scheme for solving a linear system of equations based on gradually improving the accuracy of an initial approximation. Originally developed to improve upon the accuracy of Gaussian elimination,…

Numerical Analysis · Mathematics 2025-06-24 Chai Wah Wu , Mark S. Squillante , Vasileios Kalantzis , Lior Horesh

We develop a novel gradient-based algorithm for optimizing nonsmooth nonconvex functions where nonsmoothness arises from explicit nonsmooth operators in the objective's analytical form. Our key innovation involves encoding active smooth…

Optimization and Control · Mathematics 2025-05-08 Fengqiao Luo

Cutting plane methods are a fundamental approach for solving integer linear programs (ILPs). In each iteration of such methods, additional linear constraints (cuts) are introduced to the constraint set with the aim of excluding the previous…

Optimization and Control · Mathematics 2024-06-28 Pol Puigdemont , Stratis Skoulakis , Grigorios Chrysos , Volkan Cevher

Given a program, a quotient can be obtained from it by deleting zero or more statements. The field of program slicing is concerned with computing a quotient of a program which preserves part of the behaviour of the original program. All…

Programming Languages · Computer Science 2017-05-23 Sebastian Danicic , Robert M. Hierons , Michael R. Laurence

In this paper, we propose an incremental abstraction method for dynamically over-approximating nonlinear systems in a bounded domain by solving a sequence of linear programs, resulting in a sequence of affine upper and lower hyperplanes…

Optimization and Control · Mathematics 2020-04-06 Syed M. Hassaan , Mohammad Khajenejad , Spencer Jensen , Qiang Shen , Sze Zheng Yong

Sampling is a fundamental technique, and sampling without replacement is often desirable when duplicate samples are not beneficial. Within machine learning, sampling is useful for generating diverse outputs from a trained model. We present…

Machine Learning · Computer Science 2021-07-21 Kensen Shi , David Bieber , Charles Sutton

We assume some standard choices for the branch cuts of a group of functions and consider the problem of then calculating the branch cuts of expressions involving those functions. Typical examples include the addition formulae for inverse…

Mathematical Software · Computer Science 2013-07-10 Matthew England , Russell Bradford , James H. Davenport , David Wilson

Static program slicing is a fundamental technique in software engineering. Traditional static slicing tools rely on parsing complete source code, which limits their applicability to real-world scenarios where code snippets are incomplete or…

Software Engineering · Computer Science 2025-09-23 Pengfei He , Shaowei Wang , Tse-Hsun Chen

Software architecture is receiving increasingly attention as a critical design level for software systems. As software architecture design resources (in the form of architectural specifications) are going to be accumulated, the development…

Software Engineering · Computer Science 2009-09-25 Jianjun Zhao

In approximating solutions of nonstationary problems, various approaches are used to compute the solution at a new time level from a number of simpler (sub-)problems. Among these approaches are splitting methods. Standard splitting schemes…

Numerical Analysis · Mathematics 2020-08-20 Yalchin Efendiev , Petr N. Vabishchevich