bluuebunny/crossref_metadata_2025_split huggingface dataset:
Verifying safety and accuracy of approximate parallel programs via canonical sequentialization
Authors: Fernando Vimuth , Joshi Keyur , Misailovic Sasa 
Published: October 2019

We present Parallely, a programming language and a system for verification of approximations in parallel message-passing programs. Parallely's language can express various software and hardware level approximations that reduce the computation and communication overheads at the cost of result accuracy.
Parallely's safety analysis can prove the absence of deadlocks in approximate computations and its type system can ensure that approximate values do not interfere with precise values. Parallely's quantitative accuracy analysis can reason about the frequency and magnitude of error. To support such analyses, Parallely presents an approximation-aware version of canonical sequentialization, a recently proposed verification technique that generates sequential programs that capture the semantics of well-structured parallel programs (i.e., ones that satisfy a symmetric nondeterminism property). To the best of our knowledge, Parallely is the first system designed to analyze parallel approximate programs.
We demonstrate the effectiveness of Parallely on eight benchmark applications from the domains of graph analytics, image processing, and numerical analysis. We also encode and study five approximation mechanisms from literature. Our implementation of Parallely automatically and efficiently proves type safety, reliability, and accuracy properties of the approximate benchmarks.
Modular verification of heap reachability properties in separation logic
Authors: Ter-Gabrielyan Arshavir , Summers Alexander J. , Müller Peter 
Published: October 2019

The correctness of many algorithms and data structures depends on reachability properties, that is, on the existence of chains of references between objects in the heap. Reasoning about reachability is difficult for two main reasons. First, any heap modification may affect an unbounded number of reference chains, which complicates modular verification, in particular, framing. Second, general graph reachability is not supported by first-order SMT solvers, which impedes automatic verification.
In this paper, we present a modular specification and verification technique for reachability properties in separation logic. For each method, we specify reachability only locally within the fragment of the heap on which the method operates. We identify relative convexity, a novel relation between the heap fragments of a client and a callee, which enables (first-order) reachability framing, that is, extending reachability properties from the heap fragment of a callee to the larger fragment of its client, enabling precise procedure-modular reasoning. Our technique supports practically important heap structures, namely acyclic graphs with a bounded outdegree as well as (potentially cyclic) graphs with at most one path (modulo cycles) between each pair of nodes. The integration into separation logic allows us to reason about reachability and other properties in a uniform way, to verify concurrent programs, and to automate our technique via existing separation logic verifiers. We demonstrate that our verification technique is amenable to SMT-based verification by encoding a number of benchmark examples into the Viper verification infrastructure.
Staged abstract interpreters: fast and modular whole-program analysis via meta-programming
Authors: Wei Guannan , Chen Yuxuan , Rompf Tiark 
Published: October 2019

It is well known that a staged interpreter is a compiler: specializing an interpreter to a given program produces an equivalent executable that runs faster. This connection is known as the first Futamura projection. It is even more widely known that an abstract interpreter is a program analyzer: tweaking an interpreter to run on abstract domains produces a sound static analysis. What happens when we combine these two ideas, and apply specialization to an abstract interpreter?
In this paper, we present a unifying framework that naturally extends the first Futamura projection from concrete interpreters to abstract interpreters. Our approach derives a sound staged abstract interpreter based on a generic interpreter with type-level binding-time abstractions and monadic abstractions. By using different instantiations of these abstractions, the generic interpreter can flexibly behave in one of four modes: as an unstaged concrete interpreter, a staged concrete interpreter, an unstaged abstract interpreter, or a staged abstract interpreter. As an example of abstraction without regret, the overhead of these abstraction layers is eliminated in the generated code after staging. We show that staging abstract interpreters is practical and useful to optimize static analysis, all while requiring less engineering effort and without compromising soundness. We conduct three case studies, including a comparison with Boucher and Feeley’s abstract compilation, applications to various control-flow analyses, and a demonstration for modular analysis. We also empirically evaluate the effect of staging on the execution time. The experiment shows an order of magnitude speedup with staging for control-flow analyses.
A fault-tolerant programming model for distributed interactive applications
Authors: Mogk Ragnar , Drechsler Joscha , Salvaneschi Guido , Mezini Mira 
Published: October 2019

Ubiquitous connectivity of web, mobile, and IoT computing platforms has fostered a variety of distributed applications with decentralized state. These applications execute across multiple devices with varying reliability and connectivity. Unfortunately, there is no declarative fault-tolerant programming model for distributed interactive applications with an inherently decentralized system model.
We present a novel approach to automating fault tolerance using high-level programming abstractions tailored to the needs of distributed interactive applications. Specifically, we propose a calculus that enables formal reasoning about applications' dataflow within and across individual devices. Our calculus reinterprets the functional reactive programming model to seamlessly integrate its automated state change propagation with automated crash recovery of device-local dataflow and disconnection-tolerant distribution with guaranteed automated eventual consistency semantics based on conflict-free replicated datatypes. As a result, programmers are relieved of handling intricate details of distributing change propagation and coping with distribution failures in the presence of interactivity. We also provides proofs of our claims, an implementation of our calculus, and an empirical evaluation using a common interactive application.
Modular verification of web page layout
Authors: Panchekha Pavel , Ernst Michael D. , Tatlock Zachary , Kamil Shoaib 
Published: October 2019

Automated verification can ensure that a web page satisfies accessibility, usability, and design properties regardless of the end user's device, preferences, and assistive technologies. However, state-of-the-art verification tools for layout properties do not scale to large pages because they rely on whole-page analyses and must reason about the entire page using the complex semantics of the browser layout algorithm.
This paper introduces and formalizes modular layout proofs. A modular layout proof splits a monolithic verification problem into smaller verification problems, one for each component of a web page. Each component specification can use rely/guarantee-style preconditions to make it verifiable independently of the rest of the page and enabling reuse across multiple pages. Modular layout proofs scale verification to pages an order of magnitude larger than those supported by previous approaches.
We prototyped these techniques in a new proof assistant, Troika. In Troika, a proof author partitions a page into components and writes specifications for them. Troika then verifies the specifications, and uses those specifications to verify whole-page properties. Troika also enables the proof author to verify different component specifications with different verification tools, leveraging the strengths of each. In a case study, we use Troika to verify a large web page and demonstrate a speed-up of 13--1469x over existing tools, taking verification time from hours to seconds. We develop a systematic approach to writing Troika proofs and demonstrate it on 8 proofs of properties from prior work to show that modular layout proofs are short, easy to write, and provide benefits over existing tools.
Precise reasoning with structured time, structured heaps, and collective operations
Authors: Essertel Grégory M. , Wei Guannan , Rompf Tiark 
Published: October 2019

Despite decades of progress, static analysis tools still have great difficulty dealing with programs that combine arithmetic, loops, dynamic memory allocation, and linked data structures. In this paper we draw attention to two fundamental reasons for this difficulty: First, typical underlying program abstractions are low-level and inherently scalar, characterizing compound entities like data structures or results computed through iteration only indirectly. Second, to ensure termination, analyses typically project away the dimension of time, and merge information per program point, which incurs a loss in precision.
As a remedy, we propose to make collective operations first-class in program analysis – inspired by Σ-notation in mathematics, and also by the success of high-level intermediate languages based on @map/reduce@ operations in program generators and aggressive optimizing compilers for domain-specific languages (DSLs). We further propose a novel structured heap abstraction that preserves a symbolic dimension of time, reflecting the program’s loop structure and thus unambiguously correlating multiple temporal points in the dynamic execution with a single point in the program text.
This paper presents a formal model, based on a high-level intermediate analysis language, a practical realization in a prototype tool that analyzes C code, and an experimental evaluation that demonstrates competitive results on a series of benchmarks. Remarkably, our implementation achieves these results in a fully semantics-preserving strongest-postcondition model, which is a worst-case for analysis/verification. The underlying ideas, however, are not tied to this model and would equally apply in other settings, e.g., demand-driven invariant inference in a weakest-precondition model. Given its semantics-preserving nature, our implementation is not limited to analysis for verification, but can also check program equivalence, and translate legacy C code to high-performance DSLs.
Casting about in the dark: an empirical study of cast operations in Java programs
Authors: Mastrangelo Luis , Hauswirth Matthias , Nystrom Nathaniel 
Published: October 2019

The main goal of a static type system is to prevent certain kinds of errors from happening at run time. A type system is formulated as a set of constraints that gives any expression or term in a program a well-defined type. Yet mainstream programming languages are endowed with type systems that provide the means to circumvent their constraints through casting.
We want to understand how and when developers escape the static type system to use dynamic typing. We empirically study how casting is used by developers in more than seven thousand Java projects. We find that casts are widely used (8.7% of methods contain at least one cast) and that 50% of casts we inspected are not guarded locally to ensure against potential run-time errors.
To help us better categorize use cases and thus understand how casts are used in practice, we identify 25 cast-usage patterns---recurrent programming idioms using casts to solve a specific issue. This knowledge can be: (a) a recommendation for current and future language designers to make informed decisions (b) a reference for tool builders, e.g., by providing more precise or new refactoring analyses, (c) a guide for researchers to test new language features, or to carry out controlled programming experiments, and (d) a guide for developers for better practices.
Reflection-aware static regression test selection
Authors: Shi August , Hadzi-Tanovic Milica , Zhang Lingming , Marinov Darko , Legunsen Owolabi 
Published: October 2019

Regression test selection (RTS) aims to speed up regression testing by rerunning only tests that are affected by code changes. RTS can be performed using static or dynamic analysis techniques. Our prior study showed that static and dynamic RTS perform similarly for medium-sized Java projects. However, the results of that prior study also showed that static RTS can be unsafe, missing to select tests that dynamic RTS selects, and that reflection was the only cause of unsafety observed among the evaluated projects.
In this paper, we investigate five techniques—three purely static techniques and two hybrid static-dynamic techniques—that aim to make static RTS safe with respect to reflection. We implement these reflection-aware (RA) techniques by extending the reflection-unaware (RU) class-level static RTS technique in a tool called STARTS. To evaluate these RA techniques, we compare their end-to-end times with RU, and with RetestAll, which reruns all tests after every code change. We also compare safety and precision of the RA techniques with Ekstazi, a state-of-the-art dynamic RTS technique; precision is a measure of unaffected tests selected.
Our evaluation on 1173 versions of 24 open-source Java projects shows negative results. The RA techniques improve the safety of RU but at very high costs. The purely static techniques are safe in our experiments but decrease the precision of RU, with end-to-end time at best 85.8% of RetestAll time, versus 69.1% for RU. One hybrid static-dynamic technique improves the safety of RU but at high cost, with end-to-end time that is 91.2% of RetestAll. The other hybrid static-dynamic technique provides better precision, is safer than RU, and incurs lower end-to-end time—75.8% of RetestAll, but it can still be unsafe in the presence of test-order dependencies. Our study highlights the challenges involved in making static RTS safe with respect to reflection.
Persistent insulin signaling coupled with restricted PI3K activation causes insulin-induced vasoconstriction
Authors: Olver T. Dylan , Grunewald Zachary I. , Ghiarone Thaysa , Restaino Robert M. , Sales Allan R. K. , Park Lauren K. , Thorne Pamela K. , Ganga Rama Rao , Emter Craig A. , Lemon Peter W. R. , Shoemaker J. Kevin , Manrique-Acevedo Camila , Martinez-Lemus Luis A. , Padilla Jaume 
Published: October 2019

Insulin modulates vasomotor tone through vasodilator and vasoconstrictor signaling pathways. The purpose of the present work was to determine whether insulin-stimulated vasoconstriction is a pathophysiological phenomenon that can result from a combination of persistent insulin signaling, suppressed phosphatidylinositol-3 kinase (PI3K) activation, and an ensuing relative increase in MAPK/endothelin-1 (ET-1) activity. First, we examined previously published work from our group where we assessed changes in lower-limb blood flow in response to an oral glucose tolerance test (endogenous insulin stimulation) in lean and obese subjects. The new analyses showed that the peak rise in vascular resistance during the postprandial state was greater in obese compared with lean subjects. We next extended on these findings by demonstrating that insulin-induced vasoconstriction in isolated resistance arteries from obese subjects was attenuated with ET-1 receptor antagonism, thus implicating ET-1 signaling in this constriction response. Last, we examined in isolated resistance arteries from pigs the dual roles of persistent insulin signaling and blunted PI3K activation in modulating vasomotor responses to insulin. We found that prolonged insulin stimulation did not alter vasomotor responses to insulin when insulin-signaling pathways remained unrestricted. However, prolonged insulinization along with pharmacological suppression of PI3K activity resulted in insulin-induced vasoconstriction, rather than vasodilation. Notably, such aberrant vascular response was rescued with either MAPK inhibition or ET-1 receptor antagonism. In summary, we demonstrate that insulin-induced vasoconstriction is a pathophysiological phenomenon that can be recapitulated when sustained insulin signaling is coupled with depressed PI3K activation and the concomitant relative increase in MAPK/ET-1 activity. NEW & NOTEWORTHY This study reveals that insulin-induced vasoconstriction is a pathophysiological phenomenon. We also provide evidence that in the setting of persistent insulin signaling, impaired phosphatidylinositol-3 kinase activation appears to be a requisite feature precipitating MAPK/endothelin 1-dependent insulin-induced vasoconstriction.
“The Muslim Question” and Muslim Women Talking Back
Authors: van den Brandt Nella 
Published: October 2019

Abstract
In this article, I draw on critical investigations of gendered, racialised and sexualised discourses on Islam and Muslim minorities in Western Europe to explore two recent instances of Muslim female intellectuals and artists responding to what has been dubbed “the Muslim question”. I shall show that Muslim women’s counter-voices are multilayered, conveyed through various means, and context-dependent, as well as dependent on intersectional marginalised positionalities. My goal is to theoretically rethink the feminist methodology of ‘talking back’ on the basis of the complex ways in which Muslim women establish modes of critique.
Exploration of the Factors Influencing Attitudes to Breastfeeding in Public
Authors: Morris Cecile , Schofield Peter , Hirst Craig 
Published: October 2019

Background Negative attitudes toward breastfeeding in public have consistently been identified as a key barrier to breastfeeding continuation. In order to design effective social marketing campaigns to improve public attitude toward breastfeeding in public, it is critical to identify segments of the population who are less likely to support this activity, their underlying reasons, and the medium through which they can be reached. Research aim The aims were to (a) identify the underlying dimensions that drive acceptance or opposition to breastfeeding in public, (b) test whether specific population segments were more or less likely to support breastfeeding in public, and (c) identify suitable media outlets to reach them. Methods A cross-sectional survey testing agreement with 60 statements was administered online between May 2016 and May 2017 and was completed by 7190 respondents. Exploratory factor analysis was used to identify 12 dimensions driving acceptance or opposition to breastfeeding in public. The influence of demographics and media consumption on attitudes toward breastfeeding in public was tested using Welch’s t tests and one-way analyses of variance (ANOVAs). Results Acceptance of breastfeeding in public was found to differ with gender, age, religion, and parental and breastfeeding status, but not household income. Support for breastfeeding in public also varied with media consumption habits. Conclusions This work lays the foundation to design effective social marketing campaigns aimed at increasing public support for breastfeeding in public.
Levator recession and minimal lateral tarsorrhaphy for the management of lagophthalmos and corneal exposure in facial palsy
Authors: Eshraghi Bahram , Ghadimi Hadi , Nikdel Mojgan 
Published: October 2019

Purpose: Recession of levator muscle can potentially decrease the severity of corneal exposure by reducing margin-reflex distance 1. The purpose of this study is evaluation of effects of levator recession on lagophthalmos in facial palsy. Materials and methods: In a non-comparative case series of consecutive patients with exposure keratopathy due to facial paralysis between 2012 and 2017, levator recession was performed through lid crease incision. Small-size (⩽3 mm) lateral tarsorrhaphy was performed on a case-by-case basis for those with moderate-to-severe keratopathy. Preoperative and postoperative measurements of margin-reflex distance 1 and lagophthalmos were compared using paired t-test. Results: Thirty-four patients (14 men and 20 women) were enrolled with an average age of 52.3 years. Mean follow-up was 13.3 months (range, 6–36 months). The most common etiology of facial paralysis was Bell’s palsy (22 cases), followed by motor vehicle accident (8), parotid surgery (3), and brain tumor surgery (1). No additional procedure was performed for eight patients, while lateral tarsorrhaphy was performed in 26 cases. Mean margin-reflex distance 1 decreased from 5.0 ± 0.4 mm to 4.0 ± 0.5 mm ( p < 0.001) and mean lagophthalmos decreased from 3.3 ± 0.9 mm to 1.8 ± 0.9 mm ( p < 0.001). Subgroups of patients with additional lateral tarsorrhaphy and without tarsorrhaphy experienced the same amount of reduction in margin-reflex distance 1 and lagophthalmos. Conclusion: Recession of levator muscle was effective in reduction of margin-reflex distance 1 and lagophthalmos in facial palsy patients. This procedure can be added to the surgical armamentarium for management of patients with facial palsy and lagophthalmos.
Abdominal Aortic Aneurysm Repair in Renal and Liver Transplant Recipients
Authors: Premaratne Sobath , Hopkins Jonathan , Duddy Martin , Tai Ket Sang , Kay Mark , Rogoveanu Radu , Nicholl Phil , Tiwari Alok 
Published: October 2019

Background: Abdominal aortic aneurysm (AAA) repair in patients with organ transplant remains a challenge. We looked at AAA repair in patients with organ transplants at our tertiary liver and kidney transplant unit. Methods: A retrospective analysis of a prospectively maintained database was undertaken from January 2008 to July 2018. We looked at patient demographics, type of repair, and technical success including reinterventions, perioperative transplant organ function, and 30-day and 1-year survival rate. Eight of 662 patients who underwent AAA repair had a solid organ transplant. Of these, 5 were kidney transplants, 2 liver transplants, and 1 had kidney and liver transplant; 75% were male; and average age was 63.4 (range: 49-83). All patients had asymptomatic AAAs, and 6 were treated with standard endovascular repair, 1 standard repair with iliac branch device, and 1 open repair. Adjunctive techniques such as CO2 angiograms, deployment of main body through contralateral iliac, low-profile sheaths, custom-made stent grafts, and temporary axillo-femoral shunting were used to protect transplant organs. Thirty-day survival was 100% with 1 death at 5 months from liver failure, and 1 patient has a persistent type-2 endoleak 3 years after the procedure. Conclusion: Abdominal aortic aneurysm repair in patients with organ transplants can be undertaken using adjunctive endovascular and open surgical techniques.