Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Christopher League

dblp:25/1813 · DBLP profile ↗
← Back
8ranked-venue papers
5as first author
0since 2021 · last 2007
0000-0002-1092-8641ORCID · verified

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 7 · 4 first-authorDatabases, data management, data science and information retrieval · 1 · 1 first-authorGraphics, computer vision, multimedia, augmented reality and games · 1 · 1 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
2 papers
Programming languages and type systems · 95% Program verification · 5%
Theoretical computer science
2 papers
Automated reasoning and model checking · 100%

Topics — the 9 heaviest of 10, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Automated reasoning and model checking › model checking
infinite-state model checking
0.022000
Composite model-checking: verification with type-specific symbolic representations · ACM Trans. Softw. Eng. Methodol. 2000
Verifying Systems with Integer Constraints and Boolean Predicates: A Composite Approach · ISSTA 1998
Automated reasoning and model checking › model checking
symbolic model checking
0.022000
Composite model-checking: verification with type-specific symbolic representations · ACM Trans. Softw. Eng. Methodol. 2000
Verifying Systems with Integer Constraints and Boolean Predicates: A Composite Approach · ISSTA 1998
Programming languages and type systems › language implementation
typed intermediate language
0.012002
Type-preserving compilation of Featherweight Java · ACM Trans. Program. Lang. Syst. 2002
Programming languages and type systems › type system metatheory
type preservation
0.012002
Type-preserving compilation of Featherweight Java · ACM Trans. Program. Lang. Syst. 2002
Programming languages and type systems › language implementation
type-preserving compilation
0.012002
Type-preserving compilation of Featherweight Java · ACM Trans. Program. Lang. Syst. 2002
Programming languages and type systems
type systems
0.012002
Type-preserving compilation of Featherweight Java · ACM Trans. Program. Lang. Syst. 2002
Automated reasoning and model checking › model checking › symbolic model checking
BDD-based model checking
0.011998
Verifying Systems with Integer Constraints and Boolean Predicates: A Composite Approach · ISSTA 1998
Program verification › model checking
state space exploration
0.012000
Composite model-checking: verification with type-specific symbolic representations · ACM Trans. Softw. Eng. Methodol. 2000
Automated reasoning and model checking
model checking
0.011998
Verifying Systems with Integer Constraints and Boolean Predicates: A Composite Approach · ISSTA 1998

Methods — techniques the papers use, named apart from their topics

binary decision diagrams · 0.1fixpoint computation · 0.1arithmetic constraints · 0.0arithmetic constraint · 0.0presburger constraints · 0.0
YearPublicationVenuePosition
2007 Type-Based Compression of XML Data
abstract
The extensible markup language XML has become indispensable in many areas, but a significant disadvantage is its size: tagging a set of data increases the space needed to store it, the bandwidth needed to transmit it, and the time needed to parse it. We present a new compression technique based on the document type, expressed as a Relax NG schema. Assuming the sender and receiver agree in advance on the document type, conforming documents can be transmitted extremely compactly. On several data sets with high tag density this technique compresses better than other known XML-aware compressors, including those that consider the document type
Christopher League, Kenjone Eng
DCC1
2006 MetaOCaml server pages: Web publishing as staged computation
Christopher League
Sci. Comput. Program.1
2003 Precision in Practice: A Type-Preserving Java Compiler
Christopher League, Zhong Shao 0001, Valery Trifonov
CC1
2002 Type-preserving compilation of Featherweight Java
abstract
We present an efficient encoding of core Java constructs in a simple, implementable typed intermediate language. The encoding, after type erasure, has the same operational behavior as a standard implementation using vtables and self-application for method invocation. Classes inherit super-class methods with no overhead. We support mutually recursive classes while preserving separate compilation. Our strategy extends naturally to a significant subset of Java, including interfaces and privacy. The formal translation using Featherweight Java allows comprehensible type-preservation proofs and serves as a starting point for extending the translation to new features. Our work provides a foundation for supporting certifying compilation of Java-like class-based languages in a type-theoretic framework.
Christopher League, Zhong Shao 0001, Valery Trifonov
ACM Trans. Program. Lang. Syst.1
2000 Composite model-checking: verification with type-specific symbolic representations
abstract
There has been a surge of progress in automated verification methods based on state exploration. In areas like hardware design, these technologies are rapidly augmenting key phases of testing and validation. To date, one of the most successful of these methods has been symbolic model-checking, in which large finite-state machines are encoded into compact data structures such as Binary Decision Diagrams (BDDs), and are then checked for safety and liveness properties. However, these techniques have not realized the same success on software systems. One limitation is their inability to deal with infinite-state programs, even those with a single unbounded integer. A second problem is that of finding efficient representations for various variable types. We recently proposed a model-checker for integer-based systems that uses arithmetic constraints as the underlying state representation. While this approach easily verified some subtle, infinite-state concurrency problems, it proved inefficient in its treatment of boolean and (unordered) enumerated types—which are not efficiently representable using arithmetic constraints. In this article we present a new technique that combines the strengths of both BDD and arithmetic constraint representations. Our composite model merges multiple type-specific symbolic representations in a single model-checker. A system's transitions and fixpoint computations are encoded using both BDD (for boolean and enumerated types) and arithmetic constraints (for integers) representations, where the choice depends on the variable types. Our composite model-checking strategy can be extended to other symbolic representations provided that they support operations such as intersection, union, complement, equivalence checking, and relational image computation. We also present conservative approximation techniques for composite representations to address the undecidability of model-checking on infinite-state systems. We demonstrate the effectiveness of our approach by analyzing two example software specifications which include a mixture of booleans, integers, and enumerated types. One of them is a requirements specification for the control software of a nuclear reactor's cooling system, and the other one is a protocol specification.
Tevfik Bultan, Richard Gerber 0001, Christopher League
ACM Trans. Softw. Eng. Methodol.3
1999 Representing Java Classes in a Typed Intermediate Language
abstract
We propose a conservative extension of the polymorphic lambda calculus (Fω) as an intermediate language for compiling languages with name-based class and interface hierarchies. Our extension enriches standard Fω with recursive types, existential types, and row polymorphism, but only ordered records with no subtyping. Basing our language on Fω makes it also a suitable target for translation from other higher-order languages; this enables the safe interoperation between class-based and higher-order languages and the reuse of common type-directed optimization techniques, compiler back ends, and runtime support.We present the formal semantics of our intermediate language and illustrate its features by providing a formal translation from a subset of Java, including classes, interfaces, and private instance variables. The translation preserves the name-based hierarchical relation between Java classes and interfaces, and allows access to private instance variables of parameters of the same class as the one defining the method. It also exposes the details of method invocation and instance variable access and allows many standard optimizations to be performed on the object-oriented code.
Christopher League, Zhong Shao 0001, Valery Trifonov
ICFP1
1998 Implementing Typed Intermediate Languages
abstract
Recent advances in compiler technology have demonstrated the benefits of using strongly typed intermediate languages to compile richly typed source languages (e.g., ML). A typepreserving compiler can use types to guide advanced optimizations and to help generate provably secure mobile code. Types, unfortunately, are very hard to represent and manipulate efficiently; a naive implementation can easily add exponential overhead to the compilation and execution of a program. This paper describes our experience with implementing the FLINT typed intermediate language in the SML/NJ production compiler. We observe that a type-preserving compiler will not scale to handle large types unless all of its type-preserving stages preserve the asymptotic time and space usage in representing and manipulating types. We present a series of novel techniques for achieving this property and give empirical evidence of their effectiveness.
Zhong Shao 0001, Christopher League, Stefan Monnier
ICFP2
1998 Verifying Systems with Integer Constraints and Boolean Predicates: A Composite Approach
abstract
Symbolic mode, checking has proved highly successful for large finite-state systems, in which states can be compactly encoded using binary decision diagrams (BDDs) or their variants. The inherent limitation of this approach is that it cannot be applied to systems with an infinite number of states --- even those with a single unbounded integer.Alternatively, we recently proposed a model checker for integer-based systems that uses Presburger constraints as the underlying state representation. While this approach easily verified some subtle, infinite-state concurrency problems, it proved inefficient in its treatment of Boolean and (unordered) enumerated types --- which possess no natural mapping to the Euclidean coordinate space.In this paper we describe a model checker which combines the strengths of both approaches. We use a composite model, in which a formula's valuations are encoded in a mixed BDD-Presburger form, depending on the variables used. We demonstrate our technique's effectiveness on a nontrivial requirements specification, which includes a mixture of Booleans, integers and enumerated types.
Tevfik Bultan, Richard Gerber 0001, Christopher League
ISSTA3