Searcharxiv⌕ Search

arXiv subjects

Kui Liu

Publications and source records attributed to Kui Liu.

At least 73 records · Page 4Linked to original sources

Random walks on generalized visible lattice points

We consider the proportion of generalized visible lattice points in the plane visited by random walkers. Our work concerns the visible lattice points in random walks in three aspects: (1) generalized visibility along curves; (2) one random walker visible from multiple watchpoints; (3) simultaneous visibility of multiple random walkers. Moreover, we found new phenomenon in the case of multiple random walkers: for visibility along a large class of curves and for any number of random walkers, the proportion of steps at which all random walkers are visible simultaneously is almost surely larger than a positive constant.

math.NT↗

Evaluating Representation Learning of Code Changes for Predicting Patch Correctness in Program Repair

A large body of the literature of automated program repair develops approaches where patches are generated to be validated against an oracle (e.g., a test suite). Because such an oracle can be imperfect, the generated patches, although validated by the oracle, may actually be incorrect. While the state of the art explore research directions that require dynamic information or rely on manually-crafted heuristics, we study the benefit of learning code representations to learn deep features that may encode the properties of patch correctness. Our work mainly investigates different representation learning approaches for code changes to derive embeddings that are amenable to similarity computations. We report on findings based on embeddings produced by pre-trained and re-trained neural networks. Experimental results demonstrate the potential of embeddings to empower learning algorithms in reasoning about patch correctness: a machine learning predictor with BERT transformer-based embeddings associated with logistic regression yielded an AUC value of about 0.8 in predicting patch correctness on a deduplicated dataset of 1000 labeled patches. Our study shows that learned representations can lead to reasonable performance when comparing against the state-of-the-art, PATCH-SIM, which relies on dynamic information. These representations may further be complementary to features that were carefully (manually) engineered in the literature.

cs.SE↗

On the Efficiency of Test Suite based Program Repair: A Systematic Assessment of 16 Automated Repair Systems for Java Programs

Test-based automated program repair has been a prolific field of research in software engineering in the last decade. Many approaches have indeed been proposed, which leverage test suites as a weak, but affordable, approximation to program specifications. Although the literature regularly sets new records on the number of benchmark bugs that can be fixed, several studies increasingly raise concerns about the limitations and biases of state-of-the-art approaches. For example, the correctness of generated patches has been questioned in a number of studies, while other researchers pointed out that evaluation schemes may be misleading with respect to the processing of fault localization results. Nevertheless, there is little work addressing the efficiency of patch generation, with regard to the practicality of program repair. In this paper, we fill this gap in the literature, by providing an extensive review on the efficiency of test suite based program repair. Our objective is to assess the number of generated patch candidates, since this information is correlated to (1) the strategy to traverse the search space efficiently in order to select sensical repair attempts, (2) the strategy to minimize the test effort for identifying a plausible patch, (3) as well as the strategy to prioritize the generation of a correct patch. To that end, we perform a large-scale empirical study on the efficiency, in terms of quantity of generated patch candidates of the 16 open-source repair tools for Java programs. The experiments are carefully conducted under the same fault localization configurations to limit biases.

cs.SE↗

Neural Network Activation Quantization with Bitwise Information Bottlenecks

Recent researches on information bottleneck shed new light on the continuous attempts to open the black box of neural signal encoding. Inspired by the problem of lossy signal compression for wireless communication, this paper presents a Bitwise Information Bottleneck approach for quantizing and encoding neural network activations. Based on the rate-distortion theory, the Bitwise Information Bottleneck attempts to determine the most significant bits in activation representation by assigning and approximating the sparse coefficient associated with each bit. Given the constraint of a limited average code rate, the information bottleneck minimizes the rate-distortion for optimal activation quantization in a flexible layer-by-layer manner. Experiments over ImageNet and other datasets show that, by minimizing the quantization rate-distortion of each layer, the neural network with information bottlenecks achieves the state-of-the-art accuracy with low-precision activation. Meanwhile, by reducing the code rate, the proposed method can improve the memory and computational efficiency by over six times compared with the deep neural network with standard single-precision representation. Codes will be available on GitHub when the paper is accepted \url{https://github.com/BitBottleneck/PublicCode}.

cs.CV↗

A high fidelity heralded squeezing gate

A universal squeezing gate capable of squeezing arbitrary input states is essential for continuous-variable quantum computation~\cite{PRA79062318,PRL112120504}. However, in present state-of-the-art techniques~\cite{PRA90060302,PRL106240504}, the fidelity of such gates is ultimately limited by the need to create squeezed vacuum modes of unbounded energy. Here we circumvent this fundamental limitation by using a heralded squeezing gate. We propose and experimentally demonstrate a squeezing gate that can achieve near unit fidelity for coherent input states. In particular, for a target squeezing of \SI{2.3}{\dB}, we report a fidelity of \SI{98.5}{\%}. This result cannot be reproduced by conventional schemes even if the currently best available squeezing of \SI{15}{\dB}~\cite{PRL117110801} is utilised when benchmarked on identical detection inefficiencies. Our technique can be applied to non-Gaussian states and provides a promising pathway towards high-fidelity gate operations and fault-tolerant quantum computation.

quant-ph↗

Visible lattice points along curves

This paper concerns the number of lattice points in the plane which are visible along certain curves to all elements in some set S of lattice points simultaneously. By proposing the concept of level of visibility, we are able to analyze more carefully about both the "visible" points and the "invisible" points in the definition of previous research. We prove asymptotic formulas for the number of lattice points in different levels of visibility.

math.NT↗

Generation of the Squeezed State with an Arbitrary Complex Amplitude Distribution

The squeezed state is important in quantum metrology and quantum information. The most effective generation tool known is the optical parametric oscillator (OPO). Currently, only the squeezed states of lower-order spatial modes can be generated by an OPO. However, the squeezed states of higher-order complex spatial modes are more useful for applications such as quantum metrology, quantum imaging and quantum information. A major challenge for future applications is efficient generation. Here, we use cascaded phase-only spatial light modulators to modulate the amplitude and phase of the incident fundamental mode squeezed state. This efficiently generates a series of squeezed higher-order Hermite-Gauss modes and a squeezed arbitrary complex amplitude distributed mode. The method may yield new applications in biophotonics, quantum metrology and quantum information processing.

quant-ph↗

3 m$\times$3 m heterolithic passive resonant gyroscope with cavity length stabilization

Large-scale high sensitivity laser gyroscopes have important applications for ground-based and space-based gravitational wave detection. We report on the development of a 3 m$\times$3 m heterolithic passive resonant gyroscope (HUST-1) which is installed on the ground of a cave laboratory. We operate the HUST-1 on different longitudinal cavity modes and the rotation sensitivity reaches $1.6\times10^{-9}$ rad/s/$\rm \sqrt{Hz}$ beyond 1 Hz. The drift of the cavity length is one of the major sensitivity limits for our gyroscope in the low frequency regime. By locking cavity length to an ultra-stable reference laser, we achieve a fractional cavity length stability of $5.6\times10^{-9}$ m$/\rm \sqrt{Hz}$ at 0.1 mHz, a four orders of magnitude improvement over the unconstrained cavity in the low frequency regime. We stabilize the cavity length of a large-scale heterolithic passive resonant gyroscope through active feedback and realize long-term operation. The rotation sensitivity reaches $1.7\times10^{-7}$ rad/s/$\sqrt{\rm{Hz}}$ at 0.1 mHz, a three orders of magnitude improvement, which is no longer limited by the cavity length drift in this frequency range.

physics.ins-det↗

FixMiner: Mining Relevant Fix Patterns for Automated Program Repair

Patching is a common activity in software development. It is generally performed on a source code base to address bugs or add new functionalities. In this context, given the recurrence of bugs across projects, the associated similar patches can be leveraged to extract generic fix actions. While the literature includes various approaches leveraging similarity among patches to guide program repair, these approaches often do not yield fix patterns that are tractable and reusable as actionable input to APR systems. In this paper, we propose a systematic and automated approach to mining relevant and actionable fix patterns based on an iterative clustering strategy applied to atomic changes within patches. The goal of FixMiner is thus to infer separate and reusable fix patterns that can be leveraged in other patch generation systems. Our technique, FixMiner, leverages Rich Edit Script which is a specialized tree structure of the edit scripts that captures the AST-level context of the code changes. FixMiner uses different tree representations of Rich Edit Scripts for each round of clustering to identify similar changes. These are abstract syntax trees, edit actions trees, and code context trees. We have evaluated FixMiner on thousands of software patches collected from open source projects. Preliminary results show that we are able to mine accurate patterns, efficiently exploiting change information in Rich Edit Scripts. We further integrated the mined patterns to an automated program repair prototype, PARFixMiner, with which we are able to correctly fix 26 bugs of the Defects4J benchmark. Beyond this quantitative performance, we show that the mined fix patterns are sufficiently relevant to produce patches with a high probability of correctness: 81% of PARFixMiner's generated plausible patches are correct.

cs.SE↗

iFixR: Bug Report driven Program Repair

Issue tracking systems are commonly used in modern software development for collecting feedback from users and developers. An ultimate automation target of software maintenance is then the systematization of patch generation for user-reported bugs. Although this ambition is aligned with the momentum of automated program repair, the literature has, so far, mostly focused on generate-and-validate setups where fault localization and patch generation are driven by a well-defined test suite. On the one hand, however, the common (yet strong) assumption on the existence of relevant test cases does not hold in practice for most development settings: many bugs are reported without the available test suite being able to reveal them. On the other hand, for many projects, the number of bug reports generally outstrips the resources available to triage them. Towards increasing the adoption of patch generation tools by practitioners, we investigate a new repair pipeline, iFixR, driven by bug reports: (1) bug reports are fed to an IR-based fault localizer; (2) patches are generated from fix patterns and validated via regression testing; (3) a prioritized list of generated patches is proposed to developers. We evaluate iFixR on the Defects4J dataset, which we enriched (i.e., faults are linked to bug reports) and carefully-reorganized (i.e., the timeline of test-cases is naturally split). iFixR generates genuine/plausible patches for 21/44 Defects4J faults with its IR-based fault localizer. iFixR accurately places a genuine/plausible patch among its top-5 recommendation for 8/13 of these faults (without using future test cases in generation-and-validation).

cs.SE↗

TBar: Revisiting Template-based Automated Program Repair

We revisit the performance of template-based APR to build comprehensive knowledge about the effectiveness of fix patterns, and to highlight the importance of complementary steps such as fault localization or donor code retrieval. To that end, we first investigate the literature to collect, summarize and label recurrently-used fix patterns. Based on the investigation, we build TBar, a straightforward APR tool that systematically attempts to apply these fix patterns to program bugs. We thoroughly evaluate TBar on the Defects4J benchmark. In particular, we assess the actual qualitative and quantitative diversity of fix patterns, as well as their effectiveness in yielding plausible or correct patches. Eventually, we find that, assuming a perfect fault localization, TBar correctly/plausibly fixes 74/101 bugs. Replicating a standard and practical pipeline of APR assessment, we demonstrate that TBar correctly fixes 43 bugs from Defects4J, an unprecedented performance in the literature (including all approaches, i.e., template-based, stochastic mutation-based or synthesis-based APR).

cs.SE↗

AVATAR : Fixing Semantic Bugs with Fix Patterns of Static Analysis Violations

Fix pattern-based patch generation is a promising direction in Automated Program Repair (APR). Notably, it has been demonstrated to produce more acceptable and correct patches than the patches obtained with mutation operators through genetic programming. The performance of pattern-based APR systems, however, depends on the fix ingredients mined from fix changes in development histories. Unfortunately, collecting a reliable set of bug fixes in repositories can be challenging. In this paper, we propose to investigate the possibility in an APR scenario of leveraging code changes that address violations by static bug detection tools. To that end, we build the AVATAR APR system, which exploits fix patterns of static analysis violations as ingredients for patch generation. Evaluated on the Defects4J benchmark, we show that, assuming a perfect localization of faults, AVATAR can generate correct patches to fix 34/39 bugs. We further find that AVATAR yields performance metrics that are comparable to that of the closely-related approaches in the literature. While AVATAR outperforms many of the state-of-the-art pattern-based APR systems, it is mostly complementary to current approaches. Overall, our study highlights the relevance of static bug finding tools as indirect contributors of fix ingredients for addressing code defects identified with functional test cases.

cs.SE↗

You Cannot Fix What You Cannot Find! An Investigation of Fault Localization Bias in Benchmarking Automated Program Repair Systems

Properly benchmarking Automated Program Repair (APR) systems should contribute to the development and adoption of the research outputs by practitioners. To that end, the research community must ensure that it reaches significant milestones by reliably comparing state-of-the-art tools for a better understanding of their strengths and weaknesses. In this work, we identify and investigate a practical bias caused by the fault localization (FL) step in a repair pipeline. We propose to highlight the different fault localization configurations used in the literature, and their impact on APR systems when applied to the Defects4J benchmark. Then, we explore the performance variations that can be achieved by `tweaking' the FL step. Eventually, we expect to create a new momentum for (1) full disclosure of APR experimental procedures with respect to FL, (2) realistic expectations of repairing bugs in Defects4J, as well as (3) reliable performance comparison among the state-of-the-art APR systems, and against the baseline performance results of our thoroughly assessed kPAR repair tool. Our main findings include: (a) only a subset of Defects4J bugs can be currently localized by commonly-used FL techniques; (b) current practice of comparing state-of-the-art APR systems (i.e., counting the number of fixed bugs) is potentially misleading due to the bias of FL configurations; and (c) APR authors do not properly qualify their performance achievement with respect to the different tuning parameters implemented in APR systems.

cs.SE↗

D&C: A Divide-and-Conquer Approach to IR-based Bug Localization

Many automated tasks in software maintenance rely on information retrieval techniques to identify specific information within unstructured data. Bug localization is such a typical task, where text in a bug report is analyzed to identify file locations in the source code that can be associated to the reported bug. Despite the promising results, the performance offered by IR-based bug localization tools is still not significant for large adoption. We argue that one reason could be the attempt to build a one-size-fits-all approach. In this paper, we extensively study the performance of state-of-the-art bug localization tools, focusing on query formulation and its importance with respect to the localization performance. Building on insights from this study, we propose a new learning approach where multiple classifier models are trained on clear-cut sets of bug-location pairs. Concretely, we apply a gradient boosting supervised learning approach to various sets of bug reports whose localizations appear to be successful with specific types of features. The training scenario builds on our findings that the various state-of-the-art localization tools can be highly performant for specific sets of bug reports. We implement D&C, which computes appropriate weights that should be assigned to the similarity measurements between pairs of information token types. Experimental results on large and up-to-date datasets reveal that D&C outperforms state-of-the-art tools. On average, the experiments yield an MAP score of 0.52, and an MRR score of 0.63 with a curated dataset, which provides a substantial performance improvement over all tools: MAP is improved by between 4 and up to 10 percentage points, while MRR is improved by between 1 and up to 12. Finally, we note that D&C is stable in its localization performance: around 50% of bugs can be located at Top1, 77% at Top5 and 85% at Top10.

cs.SE↗

Mining Fix Patterns for FindBugs Violations

In this paper, we first collect and track a large number of fixed and unfixed violations across revisions of software. The empirical analyses reveal that there are discrepancies in the distributions of violations that are detected and those that are fixed, in terms of occurrences, spread and categories, which can provide insights into prioritizing violations. To automatically identify patterns in violations and their fixes, we propose an approach that utilizes convolutional neural networks to learn features and clustering to regroup similar instances. We then evaluate the usefulness of the identified fix patterns by applying them to unfixed violations. The results show that developers will accept and merge a majority (69/116) of fixes generated from the inferred fix patterns. It is also noteworthy that the yielded patterns are applicable to four real bugs in the Defects4J major benchmark for software testing and automated repair.

cs.SE↗

Suppression of residual amplitude modulation effect in the Pound-Drever-Hall locking

Residual amplitude modulation (RAM) effect in a Pound-Drever-Hall (PDH) technique locked cavity system is analysed in this paper. Frequency shift caused by RAM in PDH is found to be both related to the amplitude of the RAM and to the cavity's mode matching and impedance matching. The cavity reflection contrast depends on the mode matching of the incident laser light and impedance matching of the cavity. The suppression of the amplitude of the RAM has been investigated by many groups, while the effect of the cavity response has not received full attention. According to our analysis, RAM effect can be fully suppressed by proper impedance matching and magic mode coupling. We have measured the RAM to frequency conversion coefficients at different coupling efficiencies. The result agrees well with the calculation, demonstrating the potential of full suppression of the RAM effect through proper design of cavities.

physics.ins-det↗

Higher Order Mode Entanglement in a Type II Optical Parametric Oscillator

Nonclassical beams in high order spatial modes have attracted much interest but they exhibit much less squeezing and entanglement than the fundamental spatial modes, limiting their applications. We experimentally demonstrate the relation between pump modes and entanglement of first-order HG modes (HG10 entangled states) in a type II OPO and show that the maximum entanglement of high order spatial modes can be obtained by optimizing the pump spatial mode. To our knowledge, this is the first time to report this. Utilizing the optimal pump mode, the HG10 mode threshold can be reached easily without HG00 oscillation and HG10 entanglement is enhanced by 53.5% over HG00 pumping. The technique is broadly applicable to entanglement generation in high order modes.

quant-ph↗

Cancellations between Kloosterman sums modulo a prime power with prime arguments

We obtain a nontrivial bound for cancellations between the Kloosterman sums modulo a large prime power with a prime argument running over very short interval, which in turn is based on a new estimate on bilinear sums of Kloosterman sums. These results are analogues of those obtained by various authors for Kloosterman sums modulo a prime. However the underlying technique is different and allows us to obtain nontrivial results starting from much shorter ranges.

math.NT↗