Charles Song

Learn More
Many modern software systems are designed to be highly configurable, which increases flexibility but can make programs hard to test, analyze, and understand. We present an initial empirical study of how configuration options affect program behavior. We conjecture that, at certain levels of abstraction, configuration spaces are far smaller than the worst(More)
Recently, the web has rapidly emerged as a great source of financial information ranging from news articles to per- sonal opinions. Data mining and analysis of such financial information can aid stock market predictions. Traditional approaches have usually relied on predictions based on past performance of the stocks. In this paper, we introduce a novel way(More)
Our previous investigation of a patient (pt1) with non-X-linked hyper-immunoglobulin M syndrome revealed a CD40-mediated defect in B cell activation that resulted in low CD23 expression and absence of germ-line transcription and class-switch recombination. These deficiencies were complemented in vitro by a high threshold of sustained signaling through CD40.(More)
Our previous results demonstrated that B cells from a patient (pt1) with non-X-linked hyper-IgM syndrome (HIGM) possess an atypical CD23(lo) phenotype that is unaffected by CD40-mediated activation. To investigate the molecular mechanism underlying defective CD23 expression in pt1 B cells, we used lymphoblastoid cell lines that express LMP1 under the(More)
Software configurability has many benefits, but it also makes programs much harder to test, as in the worst case the program must be tested under every possible configuration. One potential remedy to this problem is combinatorial interaction testing (CIT), in which typically the developer selects a strength t and then computes a covering array containing(More)
Substitution of a pyridyl for the hydroxyphenyl moiety in the Green Fluorescent Protein analog p-hydroxybenzylidene-dimethylimidiazolinone produces a chromophore which "turns on" fluorescence in the presence of Zn(2+) or Cd(2+) ions. Such a phenomenon provides "proof of principle" for using GFP chromophores in a variety of sensing applications.
• Testing works ■ But, each test only explores one possible execution assert(f(3) == 5) ■ We hope test cases generalize, but no guarantees • Symbolic execution generalizes testing ■ Allows unknown symbolic variables in evaluation y = α; assert(f(y) == 2*y-1); ■ If execution path depends on unknown, conceptually fork symbolic executor int f(int x) { if (x >(More)
Many common elements of URLs do not adhere to the principle of information hiding. For example, filename extensions and parameter names can reveal volatile implementation details. As a result, when Website implementations change, links between pages break. Bookmarks and code that generates URLs often break as well. In this paper, we present two tools for(More)