English
Related papers

Related papers: Pushdown Abstractions of JavaScript

200 papers

At the intersection of dynamical systems, control theory, and formal methods lies the construction of symbolic abstractions: these typically represent simpler, finite-state models whose behavior mimics that of an underlying concrete system…

Systems and Control · Electrical Eng. & Systems 2024-09-27 Rudi Coppola , Andrea Peruffo , Manuel Mazo

Abstraction is a powerful idea widely used in science, to model, reason and explain the behavior of systems in a more tractable search space, by omitting irrelevant details. While notions of abstraction have matured for deterministic…

Artificial Intelligence · Computer Science 2020-01-14 Vaishak Belle

Heap data is potentially unbounded and seemingly arbitrary. As a consequence, unlike stack and static memory, heap memory cannot be abstracted directly in terms of a fixed set of source variable names appearing in the program being…

Programming Languages · Computer Science 2016-07-05 Vini Kanvar , Uday P. Khedker

We identify the graph data structure, frontiers, operators, an iterative loop structure, and convergence conditions as essential components of graph analytics systems based on the native-graph approach. Using these essential components, we…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-12-19 Muhammad Osama , Serban D. Porumbescu , John D. Owens

This chapter gives an introduction to agent-oriented programming in JavaScript. It provides an example-based walk-through of how to implement abstractions for reasoning loop agents in vanilla JavaScript. The initial example is used as a…

Multiagent Systems · Computer Science 2025-10-03 Timotheus Kampik

Traditional control-flow analysis (CFA) for higher-order languages, whether implemented by constraint-solving or abstract interpretation, introduces spurious connections between callers and callees. Two distinct invocations of a function…

Programming Languages · Computer Science 2016-03-23 Thomas Gilray , Steven Lyde , Michael D. Adams , Matthew Might , David Van Horn

JavaScript's widespread adoption has made it an attractive target for malicious attackers who employ sophisticated obfuscation techniques to conceal harmful code. Current deobfuscation tools suffer from critical limitations that severely…

Cryptography and Security · Computer Science 2025-12-17 Dongchao Zhou , Lingyun Ying , Huajun Chai , Dongbin Wang

We present an underapproximation for context-free languages by filtering out runs of the underlying pushdown automaton depending on how the stack height evolves over time. In particular, we assign to each run a number quantifying the…

Formal Languages and Automata Theory · Computer Science 2016-09-15 Pierre Ganty , Damir Valput

The reachability analysis of weighted pushdown systems is a very powerful technique in verification and analysis of recursive programs. Each transition rule of a weighted pushdown system is associated with an element of a bounded semiring…

Formal Languages and Automata Theory · Computer Science 2019-03-14 Yasuhiko Minamide

The relationship between abstract interpretation and partial deduction has received considerable attention and (partial) integrations have been proposed starting from both the partial deduction and abstract interpretation perspectives. In…

Programming Languages · Computer Science 2007-05-23 German Puebla , Elvira Albert , Manuel Hermenegildo

Static analysis approximates the results of a program by examining only its syntax. For example, control-flow analysis (CFA) determines which syntactic lambdas (for functional languages) or (for object-oriented) methods may be invoked at…

Programming Languages · Computer Science 2021-07-28 Davis Ross Silverman , Yihao Sun , Kristopher Micinski , Thomas Gilray

A common technique to verify complex logic specifications for dynamical systems is the construction of symbolic abstractions: simpler, finite-state models whose behaviour mimics the one of the systems of interest. Typically, abstractions…

Systems and Control · Electrical Eng. & Systems 2023-03-30 Rudi Coppola , Andrea Peruffo , Manuel Mazo

Static analysis by abstract interpretation aims at automatically proving properties of computer programs. To do this, an over-approximation of program semantics, defined as the least fixpoint of a system of semantic equations, must be…

Programming Languages · Computer Science 2013-05-02 Olivier Bouissou , Yassamine Seladji , Alexandre Chapoutot

In this paper, we develop a compositional scheme for the construction of continuous approximations for interconnections of infinitely many discrete-time switched systems. An approximation (also known as abstraction) is itself a…

Systems and Control · Electrical Eng. & Systems 2022-01-03 Maryam Sharifi , Abdalla Swikir , Navid Noroozi , Majid Zamani

Distributed applications, such as database queries and distributed training, consist of both compute and network tasks. DAG-based abstraction primarily targets compute tasks and has no explicit network-level scheduling. In contrast, Coflow…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-07-16 Weitao Wang , Sushovan Das , Xinyu Crystal Wu , Zhuang Wang , Ang Chen , T. S. Eugene Ng

Dependency analysis is a program analysis that determines potential data flow between program points. While it is not a security analysis per se, it is a viable basis for investigating data integrity, for ensuring confidentiality, and for…

Programming Languages · Computer Science 2013-05-30 Matthias Keil , Peter Thiemann

We consider the problem of making expressive static analyzers interactive. Formal static analysis is seeing increasingly widespread adoption as a tool for verification and bug-finding, but even with powerful cloud infrastructure it can take…

Programming Languages · Computer Science 2021-04-08 Benno Stein , Bor-Yuh Evan Chang , Manu Sridharan

Abstract argumentation framework (\AFname) is a unifying framework able to encompass a variety of nonmonotonic reasoning approaches, logic programming and computational argumentation. Yet, efficient approaches for most of the decision and…

Artificial Intelligence · Computer Science 2014-11-19 Federico Cerutti , Ilias Tachmazidis , Mauro Vallati , Sotirios Batsakis , Massimiliano Giacomin , Grigoris Antoniou

To put static program analysis at the fingertips of the software developer, we propose a framework for interactive abstract interpretation. While providing sound analysis results, abstract interpretation in general can be quite costly. To…

Programming Languages · Computer Science 2022-11-28 Julian Erhard , Simmo Saan , Sarah Tilscher , Michael Schwarz , Karoliine Holter , Vesal Vojdani , Helmut Seidl

The JavaScript programming language, which began as a simple scripting language for the Web, has become ubiquitous, spanning desktop, mobile, and server applications. This increase in usage has made JavaScript an attractive target for…

Cryptography and Security · Computer Science 2024-10-29 José Miguel Moreno , Narseo Vallina-Rodriguez , Juan Tapiador