VLDB 2026 Research / reviewers in the wild / expert
Songtao Xia
dblp:15/2726
· DBLP profile ↗
6ranked-venue papers
5as first author
0since 2021 · last 2009
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 6 · 5 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
3 papers |
Program verification · 39% Programming languages and type systems · 36% Software testing · 25% |
Topics — the 9 heaviest of 9, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Programming languages and type systems
type systems |
0.1 | 2 | 2007 | Establishing object invariants with delayed types · OOPSLA 2007 Verify Properties of Mobile Code · ASE 2001 |
Programming languages and type systems › type systems
object initialization |
0.1 | 1 | 2007 | Establishing object invariants with delayed types · OOPSLA 2007 |
Program verification › code-level verification › object-oriented verification
object invariants |
0.1 | 1 | 2007 | Establishing object invariants with delayed types · OOPSLA 2007 |
Software testing › model-based testing › model-based test generation
model checking-based test generation |
0.1 | 1 | 2005 | Automated test generation for engineering applications · ASE 2005 |
Software testing
test generation |
0.1 | 1 | 2005 | Automated test generation for engineering applications · ASE 2005 |
Program verification
proof-carrying code |
0.0 | 1 | 2001 | Verify Properties of Mobile Code · ASE 2001 |
Program verification
type-based verification |
0.0 | 1 | 2001 | Verify Properties of Mobile Code · ASE 2001 |
Program verification
model checking |
0.0 | 1 | 2005 | Automated test generation for engineering applications · ASE 2005 |
Program verification › abstraction-based verification
predicate abstraction |
0.0 | 1 | 2005 | Automated test generation for engineering applications · ASE 2005 |
Methods — techniques the papers use, named apart from their topics
delayed types · 0.1predicate abstraction · 0.1numerical decision procedure · 0.1interval analysis · 0.1theorem proving · 0.0decision procedures · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2009 | Inferring Dataflow Properties of User Defined Table Processors
Songtao Xia, Manuel Fähndrich, Francesco Logozzo |
SAS | 1 |
| 2007 | Establishing object invariants with delayed typesabstractMainstream object-oriented languages such as C# and Java provide an initialization model for objects that does not guarantee programmer controlled initialization of fields. Instead, all fields are initialized to default values (0 for scalars and null for non-scalars) on allocation. This is in stark contrast to functional languages, where all parts of an allocation are initialized to programmer-provided values. These choices have a direct impact on two main issues: 1) the prevalence of null in object oriented languages (and its general absence in functional languages), and 2) the ability to initialize circular data structures. This paper explores connections between these differing approaches and proposes a fresh look at initialization. Delayed types are introduced to express and formalize prevalent initialization patterns in object-oriented languages. Manuel Fähndrich, Songtao Xia |
OOPSLA | 2 |
| 2006 | Predicate Abstraction of Programs with Non-linear Computation
Songtao Xia, Ben Di Vito, César A. Muñoz |
ATVA | 1 |
| 2005 | Automated test generation for engineering applicationsabstractIn test generation based on model-checking, white-box test criteria are represented as trap conditions written in a temporal logic. A model checker is used to refute trap conditions with counter-examples. From a feasible counter-example test inputs are then generated. The major problems of applying this approach to engineering applications derive from the fact that engineering programs have an infinite state space and non-linear numerical computations. Our solution is to combine predicate abstraction (which reduces the state space) with a numerical decision procedure (which supports predicate abstraction by solving non-linear constraints) based on interval analysis. We have developed a prototype and applied it to MC/DC (Modified Condition/Decision Coverage) test case generation. We have used the prototype on a number of C modules taken from a conflict detection and avoidance system and from a Boeing 737 autopilot simulator. The modules range from tens of lines up to thousands of lines in size. Our experience shows that although in theory the inclusion of a decision procedure for non-linear arithmetic may lead to non-terminating behavior and false positives (as abstraction-based model checking already does), our prototype is able to automatically produce feasible counterexamples with only a few exceptions. Furthermore, the process runs with acceptable execution times, without requiring any other knowledge of the specification, and without tampering with the original C programs. Songtao Xia, Ben Di Vito, César A. Muñoz |
ASE | 1 |
| 2004 | Certifying Temporal Properties for Compiled C Programs
Songtao Xia, James Hook |
VMCAI | 1 |
| 2001 | Verify Properties of Mobile CodeabstractSummary form only given. Given a program and a specification, you may want to verify mechanically and efficiently that this program satisfies the specification. Software verification techniques typically involve theorem proving. If a formal specification is easily available, consumption of computational resources is a major issue. Meanwhile, we shall not overlook the psychological factors. Often, you need extra expertise to verify a program. Tools that can automatically verify programs are helpful. On the other hand, ubiquitous computing has made the correctness of a program both a security and a performance issue. If you run a piece of mobile code on your machine, you will expect that the code does not access storages unlawfully. To make sure bad things won't happen, performance is sacrificed. If programs are written in an intermediate language that is able to capture and verify properties mentioned above, your host machine will benefit from it. This paper focuses on providing a type-theoretic solution to the verification of mobile programs. One of our primary tools is index types. Index types are a form of non-traditional types. An index type system extends the type system of a language with indices and predicates on those indices. Index types can express properties of program. To type check a program annotated with index types, we often will call an external decision procedure. Another concept used is the proof-carrying code. One of the major advantages of proof-carrying code is that a lot of theorem proving is shifted offline. When we use proof-carrying code to verify a property, the time spent on verification is mainly on proof-checking, which is considerably cheaper than theorem proving. Songtao Xia |
ASE | 1 |