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

Shu-Chun Weng

dblp:54/1737 · DBLP profile ↗
← Back
11ranked-venue papers
0as 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 · 8Databases, data management, data science and information retrieval · 2Security and privacy · 1Theory of computation · 1

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
4 papers
Program verification · 31% Program analysis · 22% Compilers and program optimization · 18%
Databases, data mining, and information retrieval
2 papers
Transaction processing and concurrency control · 93% Distributed and cloud data management · 7%
Computer architecture, parallel and distributed computing, and storage systems
3 papers
Distributed systems · 81% Parallel and multicore computing · 19%

Topics — the 12 heaviest of 17, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Program verification
abstraction refinement
0.412019
DeepSEA: a language for certified system software · Proc. ACM Program. Lang. 2019
Operating systems
kernel
0.412019
DeepSEA: a language for certified system software · Proc. ACM Program. Lang. 2019
Compilers and program optimization
verified compilation
0.412019
DeepSEA: a language for certified system software · Proc. ACM Program. Lang. 2019
Transaction processing and concurrency control
distributed transaction processing
0.322014
Fast Distributed Transactions and Strongly Consistent Replication for OLTP Database Systems · ACM Trans. Database Syst. 2014
Calvin: fast distributed transactions for partitioned database systems · SIGMOD Conference 2012
Distributed systems
replication
0.322014
Fast Distributed Transactions and Strongly Consistent Replication for OLTP Database Systems · ACM Trans. Database Syst. 2014
Calvin: fast distributed transactions for partitioned database systems · SIGMOD Conference 2012
Program analysis › resource analysis › amortized analysis
automatic amortized resource analysis
0.312017
Towards automatic resource bound analysis for OCaml · POPL 2017
Program analysis
resource analysis
0.312017
Towards automatic resource bound analysis for OCaml · POPL 2017
Program verification › system verification
kernel verification
0.212015
Deep Specifications and Certified Abstraction Layers · POPL 2015
Distributed systems › consensus › paxos
paxos-based replication
0.112012
Calvin: fast distributed transactions for partitioned database systems · SIGMOD Conference 2012
Parallel and multicore computing › deterministic execution
deterministic parallelism
0.112010
Efficient System-Enforced Deterministic Parallelism · OSDI 2010
Transaction processing and concurrency control
OLTP
0.112014
Fast Distributed Transactions and Strongly Consistent Replication for OLTP Database Systems · ACM Trans. Database Syst. 2014
Distributed and cloud data management › data partitioning
partitioned database systems
0.012012
Calvin: fast distributed transactions for partitioned database systems · SIGMOD Conference 2012

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

equational reasoning · 0.4effect encapsulation · 0.4coq · 0.4compcert · 0.4paxos-based consistency · 0.4deterministic ordering · 0.4linear programming · 0.3amortized analysis · 0.3modular verification · 0.2formal specification · 0.2
YearPublicationVenuePosition
2019 DeepSEA: a language for certified system software
abstract
Writing certifiably correct system software is still very labor-intensive, and current programming languages are not well suited for the task. Proof assistants work best on programs written in a high-level functional style, while operating systems need low-level control over the hardware. We present DeepSEA, a language which provides support for layered specification and abstraction refinement, effect encapsulation and composition, and full equational reasoning. A single DeepSEA program is automatically compiled into a certified ``layer'' consisting of a C program (which is then compiled into assembly by CompCert), a low-level functional Coq specification, and a formal (Coq) proof that the C program satisfies the specification. Multiple layers can be composed and interleaved with manual proofs to ascribe a high-level specification to a program by stepwise refinement. We evaluate the language by using it to reimplement two existing verified programs: a SHA-256 hash function and an OS kernel page table manager. This new style of programming language design can directly support the development of correct-by-construction system software.
Vilhelm Sjöberg, Yuyang Sang, Shu-Chun Weng, Zhong Shao 0001
Proc. ACM Program. Lang.3
2017 Towards automatic resource bound analysis for OCaml
abstract
This article presents a resource analysis system for OCaml programs. The system automatically derives worst-case resource bounds for higher-order polymorphic programs with user-defined inductive types. The technique is parametric in the resource and can derive bounds for time, memory allocations and energy usage. The derived bounds are multivariate resource polynomials which are functions of different size parameters that depend on the standard OCaml types. Bound inference is fully automatic and reduced to a linear optimization problem that is passed to an off-the-shelf LP solver. Technically, the analysis system is based on a novel multivariate automatic amortized resource analysis (AARA). It builds on existing work on linear AARA for higher-order programs with user-defined inductive types and on multivariate AARA for first-order programs with built-in lists and binary trees. This is the first amortized analysis, that automatically derives polynomial bounds for higher-order functions and polynomial bounds that depend on user-defined inductive types. Moreover, the analysis handles a limited form of side effects and even outperforms the linear bound inference of previous systems. At the same time, it preserves the expressivity and efficiency of existing AARA techniques. The practicality of the analysis system is demonstrated with an implementation and integration with Inria's OCaml compiler. The implementation is used to automatically derive resource bounds for 411 functions and 6018 lines of code derived from OCaml libraries, the CompCert compiler, and implementations of textbook algorithms. In a case study, the system infers bounds on the number of queries that are sent by OCaml programs to DynamoDB, a commercial NoSQL cloud database service.
Jan Hoffmann 0002, Ankush Das, Shu-Chun Weng
POPL3
2015 A Compositional Semantics for Verified Separate Compilation and Linking
abstract
Recent ground-breaking efforts such as CompCert have made a convincing case that mechanized verification of the compiler correctness for realistic C programs is both viable and practical. Unfortunately, existing verified compilers can only handle whole programs---this severely limits their applicability and prevents the linking of verified C programs with verified external libraries. In this paper, we present a novel compositional semantics for reasoning about open modules and for supporting verified separate compilation and linking. More specifically, we replace external function calls with explicit events in the behavioral semantics. We then develop a verified linking operator that makes lazy substitutions on (potentially reacting) behaviors by replacing each external function call event with a behavior simulating the requested function. Finally, we show how our new semantics can be applied to build a refinement infrastructure that supports both vertical composition and horizontal composition.
Tahina Ramananandro, Zhong Shao 0001, Shu-Chun Weng, Jérémie Koenig, Yuchen Fu
CPP3
2015 Deep Specifications and Certified Abstraction Layers
abstract
Modern computer systems consist of a multitude of abstraction layers (e.g., OS kernels, hypervisors, device drivers, network protocols), each of which defines an interface that hides the implementation details of a particular set of functionality. Client programs built on top of each layer can be understood solely based on the interface, independent of the layer implementation. Despite their obvious importance, abstraction layers have mostly been treated as a system concept; they have almost never been formally specified or verified. This makes it difficult to establish strong correctness properties, and to scale program verification across multiple layers.
Ronghui Gu, Jérémie Koenig, Tahina Ramananandro, Zhong Shao 0001, Xiongnan (Newman) Wu, Shu-Chun Weng, Haozhong Zhang
POPL6
2014 Security Analysis of Accountable Anonymity in Dissent
abstract
Users often wish to communicate anonymously on the Internet, for example, in group discussion or instant messaging forums. Existing solutions are vulnerable to misbehaving users, however, who may abuse their anonymity to disrupt communication. Dining Cryptographers Networks (DC-nets) leave groups vulnerable to denial-of-service and Sybil attacks; mix networks are difficult to protect against traffic analysis; and accountable voting schemes are unsuited to general anonymous messaging. dissent is the first general protocol offering provable anonymity and accountability for moderate-size groups, while efficiently handling unbalanced communication demands among users. We present an improved and hardened dissent protocol, define its precise security properties, and offer rigorous proofs of these properties. The improved protocol systematically addresses the delicate balance between provably hiding the identities of well-behaved users, while provably revealing the identities of disruptive users, a challenging task because many forms of misbehavior are inherently undetectable. The new protocol also addresses several nontrivial attacks on the original dissent protocol stemming from subtle design flaws.
Ewa Syta, Henry Corrigan-Gibbs, Shu-Chun Weng, David Wolinsky, Bryan Ford, Aaron Johnson 0001
ACM Trans. Inf. Syst. Secur.3
2014 Fast Distributed Transactions and Strongly Consistent Replication for OLTP Database Systems
abstract
As more data management software is designed for deployment in public and private clouds, or on a cluster of commodity servers, new distributed storage systems increasingly achieve high data access throughput via partitioning and replication. In order to achieve high scalability, however, today's systems generally reduce transactional support, disallowing single transactions from spanning multiple partitions. This article describes Calvin, a practical transaction scheduling and data replication layer that uses a deterministic ordering guarantee to significantly reduce the normally prohibitive contention costs associated with distributed transactions. This allows near-linear scalability on a cluster of commodity machines, without eliminating traditional transactional guarantees, introducing a single point of failure, or requiring application developers to reason about data partitioning. By replicating transaction inputs instead of transactional actions, Calvin is able to support multiple consistency levels—including Paxos-based strong consistency across geographically distant replicas—at no cost to transactional throughput. Furthermore, Calvin introduces a set of tools that will allow application developers to gain the full performance benefit of Calvin's server-side transaction scheduling mechanisms without introducing the additional code complexity and inconvenience normally associated with using DBMS stored procedures in place of ad hoc client-side transactions.
Alexander Thomson, Thaddeus Diamond, Shu-Chun Weng, Philip Shao, Daniel J. Abadi
ACM Trans. Database Syst.3
2012 Calvin: fast distributed transactions for partitioned database systems
abstract
Many distributed storage systems achieve high data access throughput via partitioning and replication, each system with its own advantages and tradeoffs. In order to achieve high scalability, however, today's systems generally reduce transactional support, disallowing single transactions from spanning multiple partitions. Calvin is a practical transaction scheduling and data replication layer that uses a deterministic ordering guarantee to significantly reduce the normally prohibitive contention costs associated with distributed transactions. Unlike previous deterministic database system prototypes, Calvin supports disk-based storage, scales near-linearly on a cluster of commodity machines, and has no single point of failure. By replicating transaction inputs rather than effects, Calvin is also able to support multiple consistency levels---including Paxos-based strong consistency across geographically distant replicas---at no cost to transactional throughput.
Alexander Thomson, Thaddeus Diamond, Shu-Chun Weng, Philip Shao, Daniel J. Abadi
SIGMOD Conference3
2010 Efficient System-Enforced Deterministic Parallelism
Amittai Aviram, Shu-Chun Weng, Bryan Ford
OSDI2
2010 Type-directed weaving of aspects for polymorphically typed functional languages
Kung Chen, Shu-Chun Weng, Meng Wang 0002, Siau-Cheng Khoo, Chung-Hsin Chen
Sci. Comput. Program.2
2009 Designing aspects for side-effect localization
abstract
Computation performed in many typical aspects involve side effects. In a purely functional setting, adding such aspects using techniques such as monadification will generally lead to crosscutting changes. This paper presents an approach to provide side-effecting aspects for purely lazy functional languages in a user transparent fashion. We propose a simple yet direct state manipulation construct for developing side-effecting aspects and devise a systematic monadification scheme to translate the woven code to a purely monadic style functional code.
Kung Chen, Jia-Yin Lin, Shu-Chun Weng, Siau-Cheng Khoo
PEPM3
2007 A Compilation Model for Aspect-Oriented Polymorphically Typed Functional Languages
Kung Chen, Shu-Chun Weng, Meng Wang 0002, Siau-Cheng Khoo, Chung-Hsin Chen
SAS2