VLDB 2026 Research / reviewers in the wild / expert
Michael I. Schwartzbach
dblp:s/MichaelISchwartzbach
· DBLP profile ↗
50ranked-venue papers
4as first author
0since 2021 · last 2012
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 29 · 1 first-authorTheory of computation · 14 · 3 first-authorDatabases, data management, data science and information retrieval · 6Computer networks · 2Applied, interdisciplinary, general and emerging computing · 2
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
14 papers |
Programming languages and type systems · 48% Program analysis · 37% Program verification · 12% | |
| Theoretical computer science
6 papers |
Automata and formal languages · 51% Logic in computer science · 24% Automated reasoning and model checking · 21% |
Topics — the 24 heaviest of 30, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Program analysis
static analysis |
0.2 | 4 | 2007 | Static validation of XSL transformations · ACM Trans. Program. Lang. Syst. 2007 Static Analysis of XML Transformations in Java · IEEE Trans. Software Eng. 2004 Extending Java for high-level Web service construction · ACM Trans. Program. Lang. Syst. 2003 |
Programming languages and type systems
type systems |
0.1 | 3 | 2004 | Static Analysis of XML Transformations in Java · IEEE Trans. Software Eng. 2004 A Type System for Dynamic Web Documents · POPL 2000 Graph Types · POPL 1993 |
Program analysis
schema validation |
0.1 | 1 | 2007 | Static validation of XSL transformations · ACM Trans. Program. Lang. Syst. 2007 |
Programming languages and type systems
type checking |
0.1 | 1 | 2007 | Static validation of XSL transformations · ACM Trans. Program. Lang. Syst. 2007 |
Programming languages and type systems
type inference |
0.0 | 3 | 1995 | Safety Analysis versus Type Inference · Inf. Comput. 1995 Efficient Inference of Partial Types · FOCS 1992 Object-Oriented Type Inference · OOPSLA 1991 |
Program analysis
flow analysis |
0.0 | 1 | 2000 | A Type System for Dynamic Web Documents · POPL 2000 |
Programming languages and type systems › type systems
type soundness |
0.0 | 1 | 2000 | A Type System for Dynamic Web Documents · POPL 2000 |
Programming languages and type systems
domain-specific languages |
0.0 | 1 | 1999 | A Domain-Specific Language for Regular Sets of Strings and Trees · IEEE Trans. Software Eng. 1999 |
Automata and formal languages
tree automata |
0.0 | 1 | 1999 | A Domain-Specific Language for Regular Sets of Strings and Trees · IEEE Trans. Software Eng. 1999 |
Logic in computer science
monadic second-order logic |
0.0 | 2 | 2001 | Graph Types · POPL 1993 The Pointer Assertion Logic Engine · PLDI 2001 |
Automata and formal languages
finite automata |
0.0 | 2 | 1993 | Efficient Recursive Subtyping · POPL 1993 Efficient Inference of Partial Types · FOCS 1992 |
Program verification
decision procedure |
0.0 | 1 | 1997 | Automatic Verification of Pointer Programs using Monadic Second-Order Logic · PLDI 1997 |
Program verification › program logic
hoare logic |
0.0 | 1 | 1997 | Automatic Verification of Pointer Programs using Monadic Second-Order Logic · PLDI 1997 |
Program verification
pointer program verification |
0.0 | 1 | 1997 | Automatic Verification of Pointer Programs using Monadic Second-Order Logic · PLDI 1997 |
Automated reasoning and model checking
decision procedures |
0.0 | 1 | 1997 | Automatic Verification of Pointer Programs using Monadic Second-Order Logic · PLDI 1997 |
Data models and query languages › XML data management
XML data model |
0.0 | 1 | 2004 | Static Analysis of XML Transformations in Java · IEEE Trans. Software Eng. 2004 |
Programming languages and type systems
language design |
0.0 | 1 | 2003 | Extending Java for high-level Web service construction · ACM Trans. Program. Lang. Syst. 2003 |
Programming languages and type systems › language design
language extension |
0.0 | 1 | 2003 | Extending Java for high-level Web service construction · ACM Trans. Program. Lang. Syst. 2003 |
Programming languages and type systems › type systems
graph types |
0.0 | 1 | 1993 | Graph Types · POPL 1993 |
Programming languages and type systems › type systems
recursive types |
0.0 | 1 | 1993 | Graph Types · POPL 1993 |
Programming languages and type systems › type inference
partial types |
0.0 | 1 | 1992 | Efficient Inference of Partial Types · FOCS 1992 |
Compilers and program optimization
compiler construction |
0.0 | 1 | 1999 | A Domain-Specific Language for Regular Sets of Strings and Trees · IEEE Trans. Software Eng. 1999 |
Authentication and access control › access control models
safety analysis |
0.0 | 1 | 1995 | Safety Analysis versus Type Inference · Inf. Comput. 1995 |
Compilers and program optimization
optimizing compiler |
0.0 | 1 | 1991 | Object-Oriented Type Inference · OOPSLA 1991 |
Methods — techniques the papers use, named apart from their topics
XPath · 0.1DTD schema typing · 0.1monadic second-order logic · 0.1XML graph formalism · 0.1monadic second-order logic encoding · 0.1loop invariant · 0.1function call invariant · 0.1flow analysis · 0.1type checking · 0.0program analysis · 0.0runtime implementation · 0.0unification · 0.0subtyping · 0.0hoare triples · 0.0second-order monadic logic · 0.0routing expressions · 0.0automata-theoretic approach · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2012 | WebSelF: A Web Scraping Framework
Jakob G. Thomsen, Erik Ernst, Claus Brabrand, Michael I. Schwartzbach |
ICWE | 4 |
| 2011 | Related Types
Johnni Winther, Michael I. Schwartzbach |
ECOOP | 2 |
| 2011 | XML graphs in program analysis
Anders Møller, Michael I. Schwartzbach |
Sci. Comput. Program. | 2 |
| 2009 | Information systems preface
Marcelo Arenas, Michael I. Schwartzbach |
Inf. Syst. | 2 |
| 2008 | Design Choices in a Compiler Course or How to Make Undergraduates Love Formal Notation
Michael I. Schwartzbach |
CC | 1 |
| 2008 | Dual syntax for XML languages
Claus Brabrand, Anders Møller, Michael I. Schwartzbach |
Inf. Syst. | 3 |
| 2007 | XML graphs in program analysisabstractXML graphs have shown to be a simple and effective formalism for representing sets of XML documents in program analysis. It has evolved through a six year period with variants tailored for a range of applications. We present a unified definition, outline the key properties including validation of XML graphs against different XML schema languages, and provide a software package that enables others to make use of these ideas. We also survey four very different applications: XML in Java, Java Servlets and JSP, transformations between XML and non-XML data, and XSLT. Anders Møller, Michael I. Schwartzbach |
PEPM | 2 |
| 2007 | The metafront system: Safe and extensible parsing and transformation
Claus Brabrand, Michael I. Schwartzbach |
Sci. Comput. Program. | 2 |
| 2007 | Static validation of XSL transformationsabstractXSL Transformations (XSLT) is a programming language for defining transformations among XML languages. The structure of these languages is formally described by schemas, for example using DTD or XML Schema, which allows individual documents to be validated. However, existing XSLT tools offer no static guarantees that, under the assumption that the input is valid relative to the input schema, the output of the transformation is valid relative to the output schema. We present a validation technique for XSLT based on the XML graph formalism introduced in the static analysis of JWIG Web services and X ACT XML transformations. Being able to provide static guarantees, we can detect a large class of errors in an XSLT stylesheet at the time it is written instead of later when it has been deployed, and thereby provide benefits similar to those of static type checkers for modern programming languages. Our analysis takes a pragmatic approach that focuses its precision on the essential language features but still handles the entire XSLT language. We evaluate the analysis precision on a range of real stylesheets and demonstrate how it may be useful in practice. Anders Møller, Mads Østerby Olesen, Michael I. Schwartzbach |
ACM Trans. Program. Lang. Syst. | 3 |
| 2006 | Contracts for Cooperation between Web Service Programmers and HTML Designers
Henning Böttger, Anders Møller, Michael I. Schwartzbach |
J. Web Eng. | 3 |
| 2005 | The Design Space of Type Checkers for XML Transformation Languages
Anders Møller, Michael I. Schwartzbach |
ICDT | 2 |
| 2004 | Static Analysis of XML Transformations in JavaabstractXML documents generated dynamically by programs are typically represented as text strings or DOM trees. This is a low-level approach for several reasons: 1) traversing and modifying such structures can be tedious and error prone, 2) although schema languages, e.g., DTD, allow classes of XML documents to be defined, there are generally no automatic mechanisms for statically checking that a program transforms from one class to another as intended. We introduce XACT, a high-level approach for Java using XML templates as a first-class data type with operations for manipulating XML values based on XPath. In addition to an efficient runtime representation, the data type permits static type checking using DTD schemas as types. By specifying schemes for the input and output of a program, our analysis algorithm will statically verify that valid input data is always transformed into valid output data and that the operations are used consistently. Christian Kirkegaard, Anders Møller, Michael I. Schwartzbach |
IEEE Trans. Software Eng. | 3 |
| 2003 | Precise Analysis of String Expressions
Aske Simon Christensen, Anders Møller, Michael I. Schwartzbach |
SAS | 3 |
| 2003 | Extending Java for high-level Web service constructionabstractWe incorporate innovations from the project into the Java language to provide high-level features for Web service programming. The resulting language, JWIG, contains an advanced session model and a flexible mechanism for dynamic construction of XML documents, in particular XHTML. To support program development we provide a suite of program analyses that at compile time verify for a given program that no runtime errors can occur while building documents or receiving form input, and that all documents being shown are valid according to the document type definition for XHTML 1.0.We compare JWIG with Servlets and JSP which are widely used Web service development platforms. Our implementation and evaluation of JWIG indicate that the language extensions can simplify the program structure and that the analyses are sufficiently fast and precise to be practically useful. Aske Simon Christensen, Anders Møller, Michael I. Schwartzbach |
ACM Trans. Program. Lang. Syst. | 3 |
| 2002 | Growing languages with metamorphic syntax macrosabstractFrom now on, a main goal in designing a language should be to plan for growth." Guy Steele: Growing a Language, OOPSLA'98 invited talk. We present our experiences with a syntax macro language which we claim forms a general abstraction mechanism for growing (domain-specific) extensions of programming languages. Our syntax macro language is designed to guarantee type safety and termination. A concept of metamorphisms allows the arguments of a macro to be inductively defined in a meta level grammar and morphed into the host language. We also show how the metamorphisms can be made to operate simultaneously on multiple parse trees at once. The result is a highly flexible mechanism for growing new language constructs without resorting to compile-time programming. In fact, whole new languages can be defined at surprisingly low cost. This work is fully implemented as part of the system for defining interactive Web services, but could find use in many other languages. 1. Claus Brabrand, Michael I. Schwartzbach |
PEPM | 2 |
| 2002 | The DSD Schema Language
Nils Klarlund, Anders Møller, Michael I. Schwartzbach |
Autom. Softw. Eng. | 3 |
| 2002 | The <bigwig> projectabstractWe present the results of the project, which aims to design and implement a high-level domain-specific language for programming interactive Web services. A fundamental aspect of the development of the World Wide Web during the last decade is the gradual change from static to dynamic generation of Web pages. Generating Web pages dynamically in dialog with the client has the advantage of providing up-to-date and tailor-made information. The development of systems for constructing such dynamic Web services has emerged as a whole new research area. The language is designed by analyzing its application domain and identifying fundamental aspects of Web services inspired by problems and solutions in existing Web service development languages. The core of the design consists of a session-centered service model together with a flexible template-based mechanism for dynamic Web page construction. Using specialized program analyses, certain Web-specific properties are verified at compile time, for instance that only valid HTML 4.01 is ever shown to the clients. In addition, the design provides high-level solutions to form field validation, caching of dynamic pages, and temporal-logic based concurrency control, and it proposes syntax macros for making highly domain-specific languages. The language is implemented via widely available Web technologies, such as Apache on the server-side and JavaScript and Java Applets on the client-side. We conclude with experience and evaluation of the project. Claus Brabrand, Anders Møller, Michael I. Schwartzbach |
ACM Trans. Internet Techn. | 3 |
| 2002 | Language-Based Caching of Dynamiclly Generated HTML
Claus Brabrand, Anders Møller, Steffan Olesen, Michael I. Schwartzbach |
World Wide Web | 4 |
| 2001 | Static validation of dynamically generated HTMLabstractWe describe a static analysis of \bigwig\ programs that efficiently decides if all dynamically computed XHTML documents presented to the client will validate according to the official DTD. We employ two data-flow analyses to construct a graph summarizing the possible documents. This graph is subsequently analyzed to determine validity of those documents. By evaluating the technique on a number of realistic benchmarks, we demonstrate that it is sufficiently fast and precise to be practically useful. Claus Brabrand, Anders Møller, Michael I. Schwartzbach |
PASTE | 3 |
| 2001 | The Pointer Assertion Logic EngineabstractWe present a new framework for verifying partial specifications of programs in order to catch type and memory errors and check data structure invariants. Our technique can verify a large class of data structures, namely all those that can be expressed as graph types. Earlier versions were restricted to simple special cases such as lists or trees. Even so, our current implementation is as fast as the previous specialized tools. Programs are annotated with partial specifications expressed in Pointer Assertion Logic, a new notation for expressing properties of the program store. We work in the logical tradition by encoding the programs and partial specifications as formulas in monadic second-order logic. Validity of these formulas is checked by the MONA tool, which also can provide explicit counterexamples to invalid formulas. To make verification decidable, the technique requires explicit loop and function call invariants. In return, the technique is highly modular: every statement of a given program is analyzed only once. The main target applications are safety-critical data-type algorithms, where the cost of annotating a program with invariants is justified by the value of being able to automatically verify complex properties of the program. Anders Møller, Michael I. Schwartzbach |
PLDI | 2 |
| 2000 | Compile-Time Debugging of C Programs Working on Trees
Jacob Elgaard, Anders Møller, Michael I. Schwartzbach |
ESOP | 3 |
| 2000 | A Type System for Dynamic Web DocumentsabstractMany interactive Web services use the CGI interface for communication with clients. They will dynamically create HTML documents that are presented to the client who then resumes the interaction by submitting data through incorporated form fields. This protocol is difficult to statically type-check if the dynamic documents are created by arbitrary script code using printf-like statements. Previous proposals have suggested using static document templates which trades flexibility for safety. We propose a notion of typed, higher-order templates that simultaneously achieve flexibility and safety. Our type system is based on a flow analysis of which we prove soundness. We present an efficient runtime implementation that respects the semantics of only well-typed programs. This work is fully implemented as part of the system for defining interactive Web services. Anders Sandholm 0001, Michael I. Schwartzbach |
POPL | 2 |
| 2000 | MONA Implementation Secrets
Nils Klarlund, Anders Møller, Michael I. Schwartzbach |
CIAA | 3 |
| 2000 | PowerForms: Declarative client-side form field validation
Claus Brabrand, Anders Møller, Mikkel Ricky, Michael I. Schwartzbach |
World Wide Web | 4 |
| 1999 | Yakyak: parsing with logical side constraints
Nils Klarlund, Niels Damgaard, Michael I. Schwartzbach |
Developments in Language Theory | 3 |
| 1999 | A Runtime System for Interactive Web Services
Claus Brabrand, Anders Møller, Anders Sandholm 0001, Michael I. Schwartzbach |
Comput. Networks | 4 |
| 1999 | A Domain-Specific Language for Regular Sets of Strings and TreesabstractWe propose a novel high level programming notation, called FIDO, that we have designed to concisely express regular sets of strings or trees. In particular, it can be viewed as a domain-specific language for the expression of finite state automata on large alphabets (of sometimes astronomical size). FIDO is based on a combination of mathematical logic and programming language concepts. This combination shares no similarities with usual logic programming languages. FIDO compiles into finite state string or tree automata, so there is no concept of run-time. It has already been applied to a variety of problems of considerable complexity and practical interest. We motivate the need for a language like FIDO, and discuss our design and its implementation. Also, we briefly discuss design criteria for domain-specific languages that we have learned from the work with FIDO. We show how recursive data types, unification, implicit coercions, and subtyping can be merged with a variation of predicate logic, called the Monadic Second-order Logic (M2L) on trees. FIDO is translated first into pure M2L via suitable encodings, and finally into finite state automata through the MONA tool. Nils Klarlund, Michael I. Schwartzbach |
IEEE Trans. Software Eng. | 2 |
| 1998 | Distributed Safety Controllers for Web Services
Anders Sandholm 0001, Michael I. Schwartzbach |
FASE | 2 |
| 1997 | Automatic Verification of Pointer Programs using Monadic Second-Order LogicabstractWe present a technique for automatic verification of pointer programs based on a decision procedure for the monadic second-order logic on finite strings.We are concerned with a while-fragment of Pascal, which includes recursively-defined pointer structures but excludes pointer arithmetic.We define a logic of stores with interesting basic predicates such as pointer equality, tests for nil pointers, and garbage cells, as well as reachability along pointers.We present a complete decision procedure for Hoare triples based on this logic over loop-free code. Combined with explicit loop invariants, the decision procedure allows us to answer surprisingly detailed questions about small but non-trivial programs. If a program fails to satisfy a certain property, then we can automatically supply an initial store that provides a counterexample.Our technique had been fully and efficiently implemented for linear linked lists, and it extends in principle to tree structures. The resulting system can be used to verify extensive properties of smaller pointer programs and could be particularly useful in a teaching environment. Jakob L. Jensen, Michael E. Jørgensen, Nils Klarlund, Michael I. Schwartzbach |
PLDI | 4 |
| 1996 | Formal Design ConstraintsabstractLarge software systems are often built on system platforms that support or enforce specific characteristics of the source code or actual design. These characteristics are either captured informally in design guideline documents or in specialized design and implementation languages.In our view, both approaches are unsatisfactory. Informal descriptions do not allow automated analysis and lead to vague constraint descriptions. The language-based approach leads to different languages for different platforms and even for different versions of the same basic platform.Our approach is to describe and name the constraints separately in a design constraint language called CDL, which is based on an extraordinarily concise logic of parse trees. Designs are then annotated with the names of the constraints they are supposed to satisfy.We discuss how the design constraint language is integrated into a design language environment. We exhibit industrial and experimental evidence that our choice of design constraint language allows us to formalize naturally and succinctly common design characteristics. Nils Klarlund, Jari Koistinen, Michael I. Schwartzbach |
OOPSLA | 3 |
| 1996 | Foreword: Special Volume of TAPSOFT 1995 Papers
Peter D. Mosses, Mogens Nielsen, Michael I. Schwartzbach |
Theor. Comput. Sci. | 3 |
| 1996 | Static Correctness of Hierarchical Procedures
Michael I. Schwartzbach |
Theor. Comput. Sci. | 1 |
| 1995 | Safety Analysis versus Type Inference
Jens Palsberg, Michael I. Schwartzbach |
Inf. Comput. | 2 |
| 1995 | Efficient Recursive SubtypingabstractSubtyping in the presence of recursive types for the λ-calculus was studied by Amadio and Cardelli in 1991 (Amadio and Cardelli 1991). In that paper they showed that the problem of deciding whether one recursive type is a subtype of another is decidable in exponential time. In this paper we give an 0(n2) algorithm. Our algorithm is based on a simplification of the definition of the subtype relation, which allows us to reduce the problem to the emptiness problem for a certain finite automaton with quadratically many states. It is known that equality of recursive types and the covariant Bohm order can be decided efficiently by means of finite automata, since they are just language equality and language inclusion, respectively. Our results extend the automata-theoretic approach to handle orderings based on contravariance. Dexter Kozen, Jens Palsberg, Michael I. Schwartzbach |
Math. Struct. Comput. Sci. | 3 |
| 1995 | Type Inference of SELF: Analysis of Objects with Dynamic and Multiple InheritanceabstractAbstract We have designed and implemented a type inference algorithm for the SELF language. The algorithm can guarantee the safety and disambiguity of message sends, and provide useful information for browsers and optimizing compilers. SELF features objects with dynamic inheritance. This construct has until now been considered incompatible with type inference because it allows the inheritance graph to change dynamically. Our algorithm handles this by deriving and solving type constraints that simultaneously define supersets of both the possible values of expressions and of the possible inheritance graphs. The apparent circularity is resolved by computing a global fixed‐point, in polynomial time. The algorithm has been implemented and can successfully handle the SELF benchmark programs, which exist in the ‘standard SELF world’ of more than 40,000 lines of code. Ole Agesen, Jens Palsberg, Michael I. Schwartzbach |
Softw. Pract. Exp. | 3 |
| 1994 | Efficient Inference of Partial Types
Dexter Kozen, Jens Palsberg, Michael I. Schwartzbach |
J. Comput. Syst. Sci. | 3 |
| 1994 | Injectivity of Composite Functions
Kim S. Larsen, Michael I. Schwartzbach |
J. Symb. Comput. | 2 |
| 1994 | Static Typing for Object-Oriented Programming
Jens Palsberg, Michael I. Schwartzbach |
Sci. Comput. Program. | 2 |
| 1993 | Type Inference of SELF
Ole Agesen, Jens Palsberg, Michael I. Schwartzbach |
ECOOP | 3 |
| 1993 | Graph TypesabstractRecursive data structures are abstractions of simple records and pointers. They impose a shape invariant, which is verified at compile-time and exploited to automatically generate code for building, copying, comparing, and traversing values without loss of efficiency. However, such values are always tree shaped, which is a major obstacle to practical use.We propose a notion of graph types, which allow common shapes, such as doubly-linked lists or threaded trees, to be expressed concisely and efficiently. We define regular languages of routing expressions to specify relative addresses of extra pointers in a canonical spanning tree. An efficient algorithm for computing such addresses is developed. We employ a second-order monadic logic to decide well-formedness of graph type specifications. This logic can also be used for automated reasoning about pointer structures. Nils Klarlund, Michael I. Schwartzbach |
POPL | 2 |
| 1993 | Efficient Recursive SubtypingabstractSubtyping in the presence of recursive types for the l-calculus was studied by Amadio and Cardelli in 1991 [1]. In that paper they showed that the problem of deciding whether one recursive type is a sub-type of another is decidable in exponential time.In this paper we give an O(n2) algorithm. Our algorithm is based on a simplification of the definition of the subtype relation, which allows us to reduce the problem to the emptiness problem for a certain finite automaton with quadratically many states.It is known that equality of recursive types and the covariant Bo¨hm order can be decided efficiently by means of finite automata. Our results extend the automata-theoretic approach to handle orderings based on contravariance. Dexter Kozen, Jens Palsberg, Michael I. Schwartzbach |
POPL | 3 |
| 1992 | Making Type Inference Practical
Nicholas Oxhøj, Jens Palsberg, Michael I. Schwartzbach |
ECOOP | 3 |
| 1992 | Efficient Inference of Partial TypesabstractPartial types for the lambda -calculus were introduced by Thatte (1988) as a means of typing objects that are not typable with simple types, such as heterogeneous lists and persistent data. He showed that type inference for partial types was semidecidable. Decidability remained open until O'Keefe and Wand gave an exponential time algorithm for type inference. The authors give an O(n/sup 3/) algorithm. The algorithm constructs a certain finite automaton that represents a canonical solution to a given set of type constraints. Moreover, the construction works equally well for recursive types.> Dexter Kozen, Jens Palsberg, Michael I. Schwartzbach |
FOCS | 3 |
| 1992 | A New Formalism for Relational Algebra
Kim S. Larsen, Michael I. Schwartzbach, Erik Meineche Schmidt |
Inf. Process. Lett. | 2 |
| 1992 | Safety Analysis Versus Type Inference for Partial Types
Jens Palsberg, Michael I. Schwartzbach |
Inf. Process. Lett. | 2 |
| 1992 | Interpretations of Recursively Defined Types
Michael I. Schwartzbach |
Theor. Comput. Sci. | 1 |
| 1991 | What is Type-Safe Code Reuse?
Jens Palsberg, Michael I. Schwartzbach |
ECOOP | 2 |
| 1991 | Object-Oriented Type InferenceabstractWe present a new approach to inferring types in untyped object-oriented programs with inheritance, assignments, and late binding.It guarantees that all messages are understood, annotates the program with type information, allows polymorphic methods, and can be used as the basis of an optimizing compiler.Types are finite sets of classes and subtyping is set inclusion.Using a trace graph, our algorithm constructs a set of conditional type constraints and computes the least solution by least fixed-point derivation. Jens Palsberg, Michael I. Schwartzbach |
OOPSLA | 2 |
| 1990 | Static Correctness of Hierarchical Procedures
Michael I. Schwartzbach |
ICALP | 1 |
| 1989 | An Imperative Type Hierarchy with Partial Products
Erik Meineche Schmidt, Michael I. Schwartzbach |
MFCS | 2 |