Miracle-dz/UniFAR-FTUs huggingface dataset:
Recruited macrophages elicit atrial fibrillation

Atrial fibrillation disrupts contraction of the atria, leading to stroke and heart failure. We deciphered how immune and stromal cells contribute to atrial fibrillation. Single-cell transcriptomes from human atria documented inflammatory monocyte and SPP1+ macrophage expansion in atrial fibrillation. Combining hypertension, obesity, and mitral valve regurgitation (HOMER) in mice elicited enlarged, fibrosed, and fibrillation-prone atria. Single-cell transcriptomes from HOMER mouse atria recapitulated cell composition and transcriptome changes observed in patients. Inhibiting monocyte migration reduced arrhythmia in Ccr2−∕− HOMER mice. Cell-cell interaction analysis identified SPP1 as a pleiotropic signal that promotes atrial fibrillation through cross-talk with local immune and stromal cells. Deleting Spp1 reduced atrial fibrillation in HOMER mice. These results identify SPP1+ macrophages as targets for immunotherapy in atrial fibrillation. Description Editor’s summary Atrial fibrillation (AFib), the most common type of heart arrhythmia, is a serious condition that can result in atrial blood clots and thromboembolic stroke. Hulsmans et al. performed single-cell RNA sequencing on atrial tissue from AFib patients and healthy controls to better understand how stromal and immune cells contribute to this disease. They found that recruited CCR2+ SPP1+ macrophages expanded in AFib patients. These cellular and transcriptomic changes were recapitulated in a mouse model of AFib that integrated hypertension, obesity, and mitral valve regurgitation (HOMER). Disrupting Ccr2, which coordinates inflammatory macrophage recruitment to atria, or Spp1, which helps to drive inflammatory fibroblast activation by macrophages, ameliorated disease burden in HOMER mice, suggesting two potential immunotherapy targets for Afib patients. —STS A subset of recruited macrophages drives atrial fibrillation in patients and in mouse models.
Implications of predicting race variables from medical images

AI-predicted race variables pose risks and opportunities for studying health disparities There are now more than 500 US Food and Drug Administration (FDA)-approved medical artificial intelligence (AI) devices, and AI is used in diverse medical tasks such as assessing the risk of heart failure and diagnosing cancer from images (1). Beyond predicting standard diagnoses, AI models can infer a substantial number of patient features from medical images in ways that humans cannot. For example, several studies have demonstrated that some AI models can infer race variables (crude simplistic categories) directly from medical images such as chest x-rays and cardiac ultrasounds, even though there are no known human-readable race correlates in these images (2–4). This has raised concerns about the possibility of AI systems to discriminate. At the same time, AI predictions of demographic attributes, including race variables, also have the potential to help assess and monitor health care disparities and generate new insights into risk factors (5).
Petty bribery, pluralistic ignorance, and the collective action problem

Abstract Bribery for access to public goods and services remains a widespread and seemingly innocuous practice which disproportionately targets the poor and helps keep them poor. Furthermore, its aggregate effects erode the legitimacy of government institutions and their capacity to fairly administer public goods and services as well as protection under the law. Drawing on original evidence using social norms methodology, this research tests underlying beliefs and expectations which sustain persistent forms of bribery and draws attention to the presence of pluralistic ignorance and consequent collective action problems. With examples focused on bribery in traffic law enforcement, healthcare, and education—three critical areas where bribery is often identified as an entrenched practice—this article contributes new evidence of: (a) the presence of pluralistic ignorance, a common social comparison error, surrounding bribery behavior; (b) differing social evaluations of bribe-solicitation; and finally, (c) how this context might exacerbate collective action problems. This empirical case study of Nigeria shows that even though more people are likely to be directly affected by bribery during routine interactions with public officials and institutions and many believe this practice is wrong, most people incorrectly believe that others in their community tolerate or even accept bribery behavior.
Fully Classical Quantum Gravity

It’s an experimental fact that quantum objects in the ground state do not radiate electromagnetic energy, but what are the limits on our knowledge of the gravitational equivalent of this? In semiclassical gravity it is the expectation values of quantum particle positions that form the source for the Einstein equations, thus a particle or atom in a ground state emits no gravitational radiation. Here we instead assume a fully classical quantum gravity the internal components of objects in a pure quantum state are assumed to classically radiate gravitational waves. The effects of this theory of microscopic gravity on the measured properties of the hydrogen atom, along with possibilities to experimentally measure the effects of atomic or nuclear scale gravitational radiation are explored. Essay written for the Gravity Research Foundation 2017 Awards for Essays on Gravitation. NSCIR 8 Bruce St. Bx 841 Thornbury Ontario, N0H 2P0, Canada
NodeRT: Detecting Races in Node.js Applications Practically

Node.js has become one of the most popular development platforms due to its superior concurrency support. However, races induced by the nondeterministic execution order of event handlers may occur in Node.js applications, causing serious runtime failures. The state-of-the-art Node.js race detector NRace builds a happens-before (HB) graph before detection with a set of HB relation rules. In detection, NRace utilizes a heavy-weight BFS-based algorithm to query the reachability between resource operations, which introduces substantial overhead in practice, causing NRace inapplicable to real-world Node.js application test processes. This paper proposes a more practical Node.js dynamic race detection approach called NodeRT (Node.js Race Tracker). To reduce unnecessary overhead, NodeRT simplifies the HB relation rules, and divides the detection into three stages: trace collection stage, race candidate detection stage, and false positive removal stage. In the trace collection stage, NodeRT constructs a partial HB graph called asynchronous call tree (ACTree), enabling efficient reachability queries between event handlers. In the race candidate detection stage, NodeRT performs detection on the ACTree, which effectively eliminates most non-racing event handlers and outputs race candidates. In the false positive removal stage, NodeRT utilizes matching rules derived from HB relation rules and features of resources to reduce false positives in the race candidates. In experiments, NodeRT detects all known races and 9 unknown harmful races in real-world applications, whereas NRace only detects 3 of the unknown harmful races, with 64× more time consumption on average. Compared with NRace, NodeRT significantly reduces the overhead, making it practical to be integrated into real-world test processes.
MD-based approaches for system health monitoring: a review

Health monitoring of machines and electronic devices as well as their manufacturing processes plays a significant role in improving their safety, reliability, and their effective lifetime. The Mahalanobis distance (MD)-based approach is a powerful health monitoring method that has recently received more interest from industrial and academic communities. It has been extensively studied and widely applied in many fields since the early 2000s. This study briefly surveys recent developments and implementation issues of the MD-based approach in system health monitoring. It provides comprehensive references for researchers, highlights relevant papers, and predicts future research trends.
Guiding Greybox Fuzzing with Mutation Testing

Greybox fuzzing and mutation testing are two popular but mostly independent fields of software testing research that have so far had limited overlap. Greybox fuzzing, generally geared towards searching for new bugs, predominantly uses code coverage for selecting inputs to save. Mutation testing is primarily used as a stronger alternative to code coverage in assessing the quality of regression tests; the idea is to evaluate tests for their ability to identify artificially injected faults in the target program. But what if we wanted to use greybox fuzzing to synthesize high-quality regression tests? In this paper, we develop and evaluate Mu2, a Java-based framework for incorporating mutation analysis in the greybox fuzzing loop, with the goal of producing a test-input corpus with a high mutation score. Mu2 makes use of a differential oracle for identifying inputs that exercise interesting program behavior without causing crashes. This paper describes several dynamic optimizations implemented in Mu2 to overcome the high cost of performing mutation analysis with every fuzzer-generated input. These optimizations introduce trade-offs in fuzzing throughput and mutation killing ability, which we evaluate empirically on five real-world Java benchmarks. Overall, variants of Mu2 are able to synthesize test-input corpora with a higher mutation score than state-of-the-art Java fuzzer Zest.
Silent Compiler Bug De-duplication via Three-Dimensional Analysis

Compiler testing is an important task for assuring the quality of compilers, but investigating test failures is very time-consuming. This is because many test failures are caused by the same compiler bug (known as bug duplication problem). In particular, this problem becomes much more challenging on silent compiler bugs (also called wrong code bugs), since these bugs can provide little information (unlike crash bugs that can produce error messages) for bug de-duplication. In this work, we propose a novel technique (called D3) to solve the duplication problem on silent compiler bugs. Its key insight is to characterize the silent bugs from the testing process and identify three-dimensional information (i.e., test program, optimizations, and test execution) for bug de-duplication. However, there are huge amount of bug-irrelevant details on the three dimensions, D3 then systematically conducts causal analysis to identify bug-causal features from each of the three dimensions for more accurate bug de-duplication. Finally, D3 ranks the test failures that are more likely to be caused by different silent bugs higher by measuring the distance among test failures based on the three-dimensional bug-causal features. Our experimental results on four datasets (including duplicate bugs of both GCC and LLVM) demonstrate the significant superiority of D3 over the two state-of-the-art compiler bug de-duplication techniques, achieving the average improvement of 19.36% and 51.43% in identifying unique silent compiler bugs when analyzing the same number of test failures.
In Defense of Simple Techniques for Neural Network Test Case Selection

Although deep learning (DL) software has been pervasive in various applications, the brittleness of deep neural networks (DNN) hinders their deployment in many tasks especially high-stake ones. To mitigate the risk accompanied with DL software fault, a variety of DNN testing techniques have been proposed such as test case selection. Among those test case selection or prioritization methods, the uncertainty-based ones such as DeepGini have demonstrated their effectiveness in finding DNN’s faults. Recently, TestRank, a learning based test ranking method has shown their out-performance over simple uncertainty-based test selection methods. However, this is achieved with a more complicated design which needs to train a graph convolutional network and a multi-layer Perceptron. In this paper, we propose a novel and lightweight DNN test selection method to enhance the effectiveness of existing simple ones. Besides the DNN model’s uncertainty on test case itself, we take into account model’s uncertainty on its neighbors. This could diversify the selected test cases and improve the effectiveness of existing uncertainty-based test selection methods. Extensive experiments on 5 datasets demonstrate the effectiveness of our approach.
KDAlloc: The KLEE Deterministic Allocator: Deterministic Memory Allocation during Symbolic Execution and Test Case Replay

The memory allocator can have an important impact in symbolic execution. Taking a user-centric view, this tool demonstration paper discusses some of the main benefits provided by KLEE's new allocator KDAlloc in terms of improved deterministic execution and bug-finding capabilities. We then introduce a new replay tool for KLEE which enables the native execution to integrate KDAlloc and receive the same heap addresses as during symbolic execution.
Automatic Testing and Benchmarking for Configurable Static Analysis Tools

Static analysis is an important tool for detecting bugs in real-world software. The advent of numerous analysis algorithms with their own tradeoffs has led to the proliferation of configurable static analysis tools, but their complex, undertested configuration spaces are obstacles to their widespread adoption. To improve the reliability of these tools, my research focuses on developing new approaches to automatically test and debug them. First, I describe an empirical study that helps to understand the performance and behavior of configurable taint analysis tools for Android. The findings of this study motivate the development of ECSTATIC, a framework for testing and debugging that goes beyond taint analysis to test any configurable static analysis tool. The next steps for this research involve the automatic creation of real-world benchmarks for static analysis with associated ground truths and analysis features.
Building Critical Testing Scenarios for Autonomous Driving from Real Accidents

One of the aims of the development and spread of autonomous driving technology is to reduce traffic accidents caused by human factors. But recently reported data on fatal accidents involving autonomous driving system (ADS) shows that this important goal has not been achieved. So there is an emerge requirement on more comprehensive and targeted testing especially on safe driving. In this paper, we propose an approach to automatically building critical testing scenarios from real-world accident data. Firstly, we propose a new model called M-CPS (Multi-channel Panoptic Segmentation) to extract the effective information from the accident record (such as images or videos), and separate the independent individuals of different traffic participants for further scene recovery. Compared with the traditional panoramic segmentation models, M-CPS model is able to effectively handle segmentation challenges due to the shooting angle, image quality, pixel overlap and other problems existing in the accident record. Next, the extracted core information is then connected with the virtual testing platform to generate the original scene set. Besides, we also design a mutation testing solution on the basis of the original scene set, thus greatly enriching the scene library for testing. In our experiments, the M-CPS model reaches a result of 66.1% PQ on CityScapes test set, shows that our model has only slight fluctuations on performance compared with the best benchmark model on pure panoptic segmentation task. It also reaches a result of 84.5% IoU for semantic segmentation branch and 40.3% mAP for instance segmentation branch on SHIFT dataset. Then we use UCF-Crime, CADP and US-Accidents datasets to generate the original and mutated scene set. Those generated scene sets are connected to Apollo and Carla simulation platforms to test ADS prototypes. We find three types of scenarios that can lead to accidents of ADS prototypes, which indicates that the existing ADS prototype has defects. Our solution provides a new possible direction for the recovery of key scenarios in ADS testing, and can improve the efficiency in related fields.
Security Checking of Trigger-Action-Programming Smart Home Integrations

Internet of Things (IoT) has become prevalent in various fields, especially in the context of home automation (HA). To better control HA-IoT devices, especially to integrate several devices for rich smart functionalities, trigger-action programming, such as the If This Then That (IFTTT), has become a popular paradigm. Leveraging it, novice users can easily specify their intent in applets regarding how to control a device/service through another once a specific condition is met. Nevertheless, the users may design IFTTT-style integrations inappropriately, due to lack of security experience or unawareness of the security impact of cyber-attacks against individual devices. This has caused financial loss, privacy leakage, unauthorized access and other security issues. To address these problems, this work proposes a systematic framework named MEDIC to model smart home integrations and check their security. It automatically generates models incorporating the service/device behaviors and action rules of the applets, while taking into consideration the external attacks and in-device vulnerabilities. Our approach takes around one second to complete the modeling and checking of one integration. We carried out experiments based on 200 integrations created from a user study and a dataset crawled from ifttt.com. To our great surprise, nearly 83% of these integrations have security issues.
Comparison of Two Local Rainfall Forecasting Models Applied for Smart Irrigation Systems

In this paper, the application of LSTM and XGBoost models for rainfall prediction of a local area is investigated. The raw weather data, provided by the Central Weather Bureau of Taiwan government, for the Tamsui district of New Taipei City from 2001 to 2020 is utilized and cleaned, which is organized into three datasets: 1) the dataset of weather data for the same month only, 2) the dataset of weather data for the same month associated the two months before and after, respectively, and 3) the dataset of weather data for each month associated the whole year. The execution details show that LSTM and XGBoost have their own applicable months, respectively, and 1) for the rainfall forecast of each month, it is not necessary to use all the weather data of 12 months. In this regard, computing resources can be reduced, while the prediction results are even more accurate; 2) In 2020, the local rainfall pattern of nearly six different months do exhibit a time shift phenomenon; 3) There is no magic time sequence that is suited for all months.
To Kill a Mutant: An Empirical Study of Mutation Testing Kills

Mutation testing has been used and studied for over four decades as a method to assess the strength of a test suite. This technique adds an artificial bug (i.e., a mutation) to a program to produce a mutant, and the test suite is run to determine if any of its test cases are sufficient to detect this mutation (i.e., kill the mutant). In this situation, a test case that fails is the one that kills the mutant. However, little is known about the nature of these kills. In this paper, we present an empirical study that investigates the nature of these kills. We seek to answer questions, such as: How are test cases failing so that they contribute to mutant kills? How many test cases fail for each killed mutant, given that only a single failure is required to kill that mutant? How do program crashes contribute to kills, and what are the origins and nature of these crashes? We found several revealing results across all subjects, including the substantial contribution of "crashes" to test failures leading to mutant kills, the existence of diverse causes for test failures even for a single mutation, and the specific types of exceptions that commonly instigate crashes. We posit that this study and its results should likely be taken into account for practitioners in their use of mutation testing and interpretation of its mutation score, and for researchers who study and leverage mutation testing in their future work.
Non-contact emotion analysis based on videos

Facial temperature changes contain information about emotional states. Judging human emotional states by facial temperature is an active area of research. In this paper, we use film clips to induce emotions. During the whole process, we obtained RGB video, thermal video, and Galvanic Skin Response (GSR) data of the subjects. We employ GSR data as a baseline reference for emotional state judgment. The RGB video was used to calibrate and track key facial regions in the thermal video to obtain more accurate temperature variability data for later sentiment analysis. The validity of sentiment state detection was tested by using Galvanic skin response data as a reference metric. Firstly, we obtain some desired emotional features based on temperature data at different locations on face, and then fuse these features into the linear discriminant analysis (LDA) classifier to judge the emotional state. We studied and verified 128 emotional video datas (fear, happiness, depression) from 45 participants. We achieved 77% accuracy rate in emotional state judgment.
June: A Type Testability Transformation for Improved ATG Performance

Strings are universal containers: they are flexible to use, abundant in code, and difficult to test. String-controlled programs are programs that make branching decisions based on string input. Automatically generating valid test inputs for these programs considering only character sequences rather than any underlying string-encoded structures, can be prohibitively expensive. We present June, a tool that enables Java developers to expose any present latent string structure to test generation tools. June is an annotation-driven testability transformation and an extensible library, JuneLib, of structured string definitions. The core JuneLib definitions are empirically derived and provide templates for all structured strings in our test set. June takes lightly annotated source code and injects code that permits an automated test generator (ATG) to focus on the creation of mutable substrings inside a structured string. Using June costs the developer little, with an average of 2.1 annotations per string-controlled class. June uses standard Java build tools and therefore deploys seamlessly within a Java project. By feeding string structure information to an ATG tool, June dramatically reduces wasted effort; branches are effortlessly covered that would otherwise be extremely difficult, or impossible, to cover. This waste reduction both increases and speeds coverage. EvoSuite, for example, achieves the same coverage on June-ed classes in 1 minute, on average, as it does in 9 minutes on the un-June-ed class. These gains increase over time. On our corpus, June-ing a program compresses 24 hours of execution time into ca. 2 hours. We show that many ATG tools can reuse the same June-ed code: a few June annotations, a one-off cost, benefit many different testing regimes.