16827544
Decidable subclassing-bounded quantification
Bounded Quantification allows Quantified types to specify subtyping bounds for the type variables they introduce. It has undecidable subtyping and type checking. This paper shows that subclassing-bounded Quantification---type variables have subclassing bounds---has decidable type checking. The main difficulty is that, type variables can have either upper bounds or lower bounds, which complicates the minimal type property.
5642826
A garbage-collecting typed assembly language
Typed assembly languages usually support heap allocation safely, but often rely on an external garbage collector to deallocate objects from the heap and prevent unsafe dangling pointers. Even if the external garbage collector is provably correct, verifying the safety of the interaction between TAL programs and garbage collection is nontrivial. This paper introduces a typed assembly language whose type system is expressive enough to type-check a Cheney-queue copying garbage collector, so that ordinary programs and garbage collection can co-exist and interact inside a single typed language. The only built-in types for memory are linear types describing individual memory words, so that TAL programmers can define their own object layouts, method table layouts, heap layouts, and memory management techniques.
15078407
A typed intermediate language for compiling multiple inheritance
Type-preserving compilation can improve software reliability by generating code that can be verified independently of the compiler. Practical type preserving compilation does not exist for languages with multiple inheritance. This paper presents Emi, the first typed intermediate language to support practical compilation of a programming language with fully general multiple inheritance. The paper demonstrates the practicality of Emi by showing that Emi can be used to faithfully model standard implementation strategies of multiple inheritance for C++, the most widely-used programming language with general multiple inheritance.
14652586
A simple typed intermediate language for object-oriented languages
Traditional class and object encodings are difficult to use in practical type-preserving compilers because of the complexity of the encodings. We propose a simple typed intermediate language for compiling object-oriented languages and prove its soundness. The key ideas are to preserve lightweight notions of classes and objects instead of compiling them away and to separate name-based subclassing from structure-based subtyping. The language can express standard implementation techniques for both dynamic dispatch and runtime type tests. It has decidable type checking even with subtyping between quantified types with different bounds. Because of its simplicity, the language is a more suitable starting point for a practical type-preserving compiler than traditional encoding techniques.
42532593
A Sound and Complete Fuzzy Logic System Using Zadeh's Implication Operator
We present a formalization of fuzzy logic based on Zadeh's implication operator a→b=max{1-a, b}. Our logical system allows the specification of both lower and upper bounds of the truth value of a formula. We present a specific system of axioms and inference rules which are both sound and complete. We also provide a generalization of the classical resolution method which acts as a decision procedure in a finite fuzzy theory.
44298104
Tight Lower Bounds for Certain Parameterized NP-Hard Problems
33085304
An Intuitive and Effective New Representation for Interconnection Network Structures
Based on the classical voltage graph theory, we develop a new representation scheme for interconnection network structures. We show that all popular interconnection networks have very simple and intuitive representations under the new scheme. The new representation scheme offers powerful tools for the study of network routing and network emulation. As examples, we present simple constructions for optimal network emulations from cube-connected cycles networks to butterfly networks, and from butterfly networks to hypercube networks.
32729841
An Ada-like software process language
Abstract This article presents a new software process language called concurrent software process language (CSPL). CSPL demonstrates a unique approach in combining the Ada-like syntax with UNIX shell semantics within a software process language. The rich Ada constructs allow CSPL to model the complexity in software processes. Meanwhile, the UNIX shell provides process enaction and, more importantly, easy access to powerful UNIX tools. A CSPL prototype has been built on the Sun workstation. Examples illustrate how CSPL can be used to model objects, activities, events, generics, exceptions, etc., in software processes. Moreover, a meta-process is given to depict a process of developing CSPL process programs. Related work and a preliminary evaluation of CSPL are also depicted.
2218327
Strong computational lower bounds via parameterized complexity
We develop new techniques for deriving strong computational lower bounds for a class of well-known NP-hard problems. This class includes weighted satisfiability, dominating set, hitting set, set cover, clique, and independent set. For example, although a trivial enumeration can easily test in time O(n^k) if a given graph of n vertices has a clique of size k, we prove that unless an unlikely collapse occurs in parameterized complexity theory, the problem is not solvable in time f(k)n^o^(^k^) for any function f, even if we restrict the parameter values to be bounded by an arbitrarily small function of n. Under the same assumption, we prove that even if we restrict the parameter values k to be of the order @Q(@m(n)) for any reasonable function @m, no algorithm of running time n^o^(^k^) can test if a graph of n vertices has a clique of size k. Similar strong lower bounds on the computational complexity are also derived for other NP-hard problems in the above class. Our techniques can be further extended to derive computational lower bounds on polynomial time approximation schemes for NP-hard optimization problems. For example, we prove that the NP-hard distinguishing substring selection problem, for which a polynomial time approximation scheme has been recently developed, has no polynomial time approximation schemes of running time f(1/@e)n^o^(^1^/^@e^) for any function f unless an unlikely collapse occurs in parameterized complexity theory.