EDBT 2026 Demo / reviewers in the wild / expert
Nurit Dor
dblp:72/5710
· DBLP profile ↗
11ranked-venue papers
6as first author
0since 2021 · last 2019
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 11 · 6 first-author
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Software engineering, system software, and programming languages
7 papers |
Program analysis · 84% Program synthesis and code generation · 5% Compilers and program optimization · 5% | |
| Network and information security
2 papers |
Systems and software security · 100% |
Topics — the 14 heaviest of 16, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Program analysis
static analysis |
0.7 | 5 | 2019 | From typestate verification to interpretable deep models (invited talk abstract) · ISSTA 2019 Field-sensitive program dependence analysis · SIGSOFT FSE 2010 Effective typestate verification in the presence of aliasing · ACM Trans. Softw. Eng. Methodol. 2008 |
Program analysis › type-based analysis
typestate analysis |
0.5 | 3 | 2019 | From typestate verification to interpretable deep models (invited talk abstract) · ISSTA 2019 Effective typestate verification in the presence of aliasing · ACM Trans. Softw. Eng. Methodol. 2008 Effective typestate verification in the presence of aliasing · ISSTA 2006 |
Program analysis › static analysis
pointer analysis |
0.4 | 2 | 2019 | From typestate verification to interpretable deep models (invited talk abstract) · ISSTA 2019 Effective typestate verification in the presence of aliasing · ISSTA 2006 |
Program synthesis and code generation
code completion |
0.1 | 1 | 2019 | From typestate verification to interpretable deep models (invited talk abstract) · ISSTA 2019 |
Compilers and program optimization
dependence analysis |
0.1 | 1 | 2010 | Field-sensitive program dependence analysis · SIGSOFT FSE 2010 |
Program analysis › static analysis
dependency analysis |
0.1 | 1 | 2010 | Field-sensitive program dependence analysis · SIGSOFT FSE 2010 |
Software maintenance and evolution
change impact analysis |
0.1 | 1 | 2008 | Customization change impact analysis for erp professionals via program slicing · ISSTA 2008 |
Program analysis › data flow analysis
context-sensitive dataflow analysis |
0.1 | 1 | 2008 | Effective typestate verification in the presence of aliasing · ACM Trans. Softw. Eng. Methodol. 2008 |
Program analysis › static analysis
program slicing |
0.1 | 1 | 2008 | Customization change impact analysis for erp professionals via program slicing · ISSTA 2008 |
Program analysis › data flow analysis
value-flow analysis |
0.0 | 1 | 2004 | Software validation via scalable path-sensitive value flow analysis · ISSTA 2004 |
Systems and software security › memory safety › memory error detection
buffer overflow detection |
0.0 | 1 | 2003 | CSSV: towards a realistic tool for statically detecting all buffer overflows in C · PLDI 2003 |
Systems and software security
memory safety |
0.0 | 1 | 2003 | CSSV: towards a realistic tool for statically detecting all buffer overflows in C · PLDI 2003 |
Software maintenance and evolution
program comprehension |
0.0 | 1 | 2008 | Customization change impact analysis for erp professionals via program slicing · ISSTA 2008 |
Programming languages and type systems › programming paradigms › imperative languages
c |
0.0 | 1 | 2003 | CSSV: towards a realistic tool for statically detecting all buffer overflows in C · PLDI 2003 |
Methods — techniques the papers use, named apart from their topics
aliasing information · 0.4access paths · 0.4abstract domain · 0.4static analysis · 0.2staged verification · 0.1transitive dependence analysis · 0.1alias analysis · 0.1program slicing · 0.1parametric abstract domain · 0.1abstract interpretation · 0.1bit-vectorization · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2019 | From typestate verification to interpretable deep models (invited talk abstract)abstractThe paper ``Effective Typestate Verification in the Presence of Aliasing'' was published in the International Symposium on Software Testing and Analysis (ISSTA) 2006 Proceedings, and has now been selected to receive the ISSTA 2019 Retrospective Impact Paper Award. The paper described a scalable framework for verification of typestate properties in real-world Java programs. The paper introduced several techniques that have been used widely in the static analysis of real-world programs. Specifically, it introduced an abstract domain combining access-paths, aliasing information, and typestate that turned out to be simple, powerful, and useful. We review the original paper and show the evolution of the ideas over the years. We show how some of these ideas have evolved into work on machine learning for code completion, and discuss recent general results in machine learning for programming. Eran Yahav, Stephen J. Fink, Nurit Dor, G. Ramalingam, Emmanuel Geay |
ISSTA | 3 |
| 2010 | Field-sensitive program dependence analysisabstractStatement st transitively depends on statement stseed if the execution of stseed may affect the execution of st. Computing transitive program dependences is a fundamental operation in many automatic software analysis tools. Existing tools find it challenging to compute transitive dependences for programs manipulating large aggregate structure variables, and their limitations adversely affect analysis of certain important classes of software systems, e.g., large-scale enterprise resource planning (ERP) systems. Shay Litvak, Nurit Dor, Rastislav Bodík, Noam Rinetzky, Shmuel Sagiv |
SIGSOFT FSE | 2 |
| 2008 | Customization change impact analysis for erp professionals via program slicingabstractWe describe a new tool that automatically identifies impact of customization changes, i.e., how changes affect software behavior. As opposed to existing static analysis tools that aim at aiding programmers or improve performance, our tool is designed for end-users without prior knowledge in programming. We utilize state-of-the-art static analysis algorithms for the programs within an Enterprise Resource Planning system (ERP). Key challenges in analyzing real world ERP programs are their significant size and the interdependency between programs. In particular, we describe and compare three customization change impact analyses for real-world programs, and a balancing algorithm built upon the three independent analyses. This paper presents PanayaImpactAnalysis (PanayaIA), a web on-demand tool, providing ERP professionals a clear view of the impact of a customization change on the system. In addition we report empirical results of PanayaIA when used by end-users on an ERP system of tens of millions LOCs. Nurit Dor, Tal Lev-Ami, Shay Litvak, Shmuel Sagiv, Dror Weiss |
ISSTA | 1 |
| 2008 | Effective typestate verification in the presence of aliasingabstractThis article addresses the challenge of sound typestate verification, with acceptable precision, for real-world Java programs. We present a novel framework for verification of typestate properties, including several new techniques to precisely treat aliases without undue performance costs. In particular, we present a flow-sensitive, context-sensitive, integrated verifier that utilizes a parametric abstract domain combining typestate and aliasing information. To scale to real programs without compromising precision, we present a staged verification system in which faster verifiers run as early stages which reduce the workload for later, more precise, stages. We have evaluated our framework on a number of real Java programs, checking correct API usage for various Java standard libraries. The results show that our approach scales to hundreds of thousands of lines of code, and verifies correctness for 93% of the potential points of failure. Stephen J. Fink, Eran Yahav, Nurit Dor, G. Ramalingam, Emmanuel Geay |
ACM Trans. Softw. Eng. Methodol. | 3 |
| 2006 | Effective typestate verification in the presence of aliasingabstractThis paper addresses the challenge of sound typestate verification, with acceptable precision, for real-world Java programs. We present a novel framework for verification of typestate properties, including several new techniques to precisely treat aliases without undue performance costs. In particular, we present a flowsensitive, context-sensitive, integrated verifier that utilizes a parametric abstract domain combining typestate and aliasing information.To scale to real programs without compromising precision, we present a staged verification system in which faster verifiers run as early stages which reduce the workload for later, more precise, stages.We have evaluated our framework on a number of real Java programs, checking correct API usage for various Java standard libraries. The results show that our approach scales to hundreds of thousands of lines of code, and verifies correctness for 93% of the potential points of failure. Stephen J. Fink, Eran Yahav, Nurit Dor, G. Ramalingam, Emmanuel Geay |
ISSTA | 3 |
| 2004 | Software validation via scalable path-sensitive value flow analysisabstractIn this paper, we present a new algorithm for tracking the flow of values through a program. Our algorithm represents a substantial improvement over the state of the art. Previously described value flow analyses that are control-flow sensitive do not scale well, nor do they eliminate value flow information from infeasible execution paths (i.e., they are path-insensitive). Our algorithm scales to large programs, and it is path-sensitive.The efficiency of our algorithm arises from three insights: The value flow problem can be "bit-vectorized" by tracking the flow of one value at a time; dataflow facts from different execution paths with the same value flow information can be merged; and information about complex aliasing that affects value flow can be plugged in from a different analysis.We have incorporated our analysis in ESP, a software validation tool. We have used ESP to validate the Windows operating system kernel (a million lines of code) against an important security property. This experience suggests that our algorithm scales to large programs, and is accurate enough to trace the flow of values in real code. Nurit Dor, Stephen Adams 0001, Manuvir Das, Zhe Yang 0001 |
ISSTA | 1 |
| 2004 | Numeric Domains with Summarized Dimensions
Denis Gopan, Frank DiMaio, Nurit Dor, Thomas W. Reps, Shmuel Sagiv |
TACAS | 3 |
| 2003 | CSSV: towards a realistic tool for statically detecting all buffer overflows in C
Nurit Dor, Michael Rodeh, Shmuel Sagiv |
PLDI | 1 |
| 2001 | Cleanness Checking of String Manipulations in C Programs via Integer Analysis
Nurit Dor, Michael Rodeh, Shmuel Sagiv |
SAS | 1 |
| 2000 | Checking Cleanness in Linked Lists
Nurit Dor, Michael Rodeh, Shmuel Sagiv |
SAS | 1 |
| 1998 | Detecting Memory Errors via Static Pointer Analysis (Preliminary Experience)abstractPrograms which manipulate pointers are hard to debug. Pointer analysis algorithms (originally aimed at optimizing compilers) may provide some remedy by identifying potential errors such as dereferencing NULL pointers by statically analyzing the behavior of programs on all their input data. Our goal is to identify the "core program analysis techniques" that can be used when developing realistic tools which detect memory errors at compile time without generating too many false alarms. Our preliminary experience indicates that the following techniques are necessary: (i) finding aliases between pointers, (ii) flow sensitive techniques that account for the program control flow constructs, (iii) partial interpretation of conditional statements, (iv) analysis of the relationships between pointers, and sometimes (v) analysis of the underlying data structures manipulated by the C program. We show that a combination of these techniques can yield better results than those achieved by state of the... Nurit Dor, Michael Rodeh, Shmuel Sagiv |
PASTE | 1 |