700 research outputs found
Cerberus-BMC: A Principled Reference Semantics and Exploration Tool for Concurrent and Sequential C
C remains central to our infrastructure, making verification of C code
an essential and much-researched topic, but the semantics of C is
remarkably complex, and important aspects of it are still unsettled,
leaving programmers and verification tool builders on shaky
ground.
This paper describes a tool, Cerberus-BMC, that for the first time
provides a principled reference semantics that simultaneously supports
(1) a choice of concurrency memory model (including substantial
fragments of the C11, RC11, and Linux kernel memory models), (2) a modern memory object model,
and (3) a well-validated thread-local semantics for a large fragment
of the language.
The tool should be useful for C programmers, compiler writers,
verification tool builders, and members of the C/C++ standards committees
sCompile: Critical path identification and analysis for smart contracts
Ethereum smart contracts are an innovation built on top of the blockchain
technology, which provides a platform for automatically executing contracts in
an anonymous, distributed, and trusted way. The problem is magnified by the
fact that smart contracts, unlike ordinary programs, cannot be patched easily
once deployed. It is important for smart contracts to be checked against
potential vulnerabilities. In this work, we propose an alternative approach to
automatically identify critical program paths (with multiple function calls
including inter-contract function calls) in a smart contract, rank the paths
according to their criticalness, discard them if they are infeasible or
otherwise present them with user friendly warnings for user inspection. We
identify paths which involve monetary transaction as critical paths, and
prioritize those which potentially violate important properties. For
scalability, symbolic execution techniques are only applied to top ranked
critical paths. Our approach has been implemented in a tool called sCompile,
which has been applied to 36,099 smart contracts. The experiment results show
that sCompile is efficient, i.e., 5 seconds on average for one smart contract.
Furthermore, we show that many known vulnerabilities can be captured if user
inspects as few as 10 program paths generated by sCompile. Lastly, sCompile
discovered 224 unknown vulnerabilities with a false positive rate of 15.4%
before user inspection.Comment: Accepted by ICFEM 201
GPURepair: Automated Repair of GPU Kernels
This paper presents a tool for repairing errors in GPU kernels written in
CUDA or OpenCL due to data races and barrier divergence. Our novel extension to
prior work can also remove barriers that are deemed unnecessary for
correctness. We implement these ideas in our tool called GPURepair, which uses
GPUVerify as the verification oracle for GPU kernels. We also extend GPUVerify
to support CUDA Cooperative Groups, allowing GPURepair to perform inter-block
synchronization for CUDA kernels. To the best of our knowledge, GPURepair is
the only tool that can propose a fix for intra-block data races and barrier
divergence errors for both CUDA and OpenCL kernels and the only tool that fixes
inter-block data races for CUDA kernels. We perform extensive experiments on
about 750 kernels and provide a comparison with prior work. We demonstrate the
superiority of GPURepair through its capability to fix more kernels and its
unique ability to remove redundant barriers and handle inter-block data races.Comment: 19 pages, 1 algorithm, 3 figures, 22nd International Conference on
Verification Model Checking and Abstract Interpretation (VMCAI 2021
Parameterized Synthesis with Safety Properties
Parameterized synthesis offers a solution to the problem of constructing
correct and verified controllers for parameterized systems. Such systems occur
naturally in practice (e.g., in the form of distributed protocols where the
amount of processes is often unknown at design time and the protocol must work
regardless of the number of processes). In this paper, we present a novel
learning based approach to the synthesis of reactive controllers for
parameterized systems from safety specifications. We use the framework of
regular model checking to model the synthesis problem as an infinite-duration
two-player game and show how one can utilize Angluin's well-known L* algorithm
to learn correct-by-design controllers. This approach results in a synthesis
procedure that is conceptually simpler than existing synthesis methods with a
completeness guarantee, whenever a winning strategy can be expressed by a
regular set. We have implemented our algorithm in a tool called L*-PSynth and
have demonstrated its performance on a range of benchmarks, including robotic
motion planning and distributed protocols. Despite the simplicity of L*-PSynth
it competes well against (and in many cases even outperforms) the
state-of-the-art tools for synthesizing parameterized systems.Comment: 18 page
A Decision Procedure for String Logic with Quadratic Equations, Regular Expressions and Length Constraints
Enhanced Leishmania braziliensis Infection Following Pre-Exposure to Sandfly Saliva
Parasites of the genus Leishmania cause a variety of diseases known as leishmaniasis, that are transmitted by bites of female sand flies that, during blood-feeding, inject humans with parasites and saliva. It was shown that, in mice, immunity to sand-fly saliva is able to protect against the development of leishmaniasis. We have investigated, in the present study, whether this finding extends the sand fly species Lutzomyia intermedia, which is responsible for transmission of Leishmania braziliensis, a parasite species able to cause destructive skin lesions that can be fatal if left untreated. We observed that mice injected with sand fly saliva develop a specific immune response against salivary proteins. Most importantly, however, this immune response was unable to protect mice against a challenge infection with L. braziliensis, indicating that exposure to this sand fly saliva is harmful to the host. Indeed, subjects with cutaneous leishmaniasis have a higher immune response against L. intermedia saliva. These findings indicate that the anti-saliva immune response to sand fly saliva plays an important role in the outcome of leishmaniasis caused by L. braziliensis, in both mice and humans, and emphasize possible hurdles in the development of vaccines based on sand fly saliva
Positive Selection Results in Frequent Reversible Amino Acid Replacements in the G Protein Gene of Human Respiratory Syncytial Virus
Human respiratory syncytial virus (HRSV) is the major cause of lower respiratory tract infections in children under 5 years of age and the elderly, causing annual disease outbreaks during the fall and winter. Multiple lineages of the HRSVA and HRSVB serotypes co-circulate within a single outbreak and display a strongly temporal pattern of genetic variation, with a replacement of dominant genotypes occurring during consecutive years. In the present study we utilized phylogenetic methods to detect and map sites subject to adaptive evolution in the G protein of HRSVA and HRSVB. A total of 29 and 23 amino acid sites were found to be putatively positively selected in HRSVA and HRSVB, respectively. Several of these sites defined genotypes and lineages within genotypes in both groups, and correlated well with epitopes previously described in group A. Remarkably, 18 of these positively selected tended to revert in time to a previous codon state, producing a “flip-flop” phylogenetic pattern. Such frequent evolutionary reversals in HRSV are indicative of a combination of frequent positive selection, reflecting the changing immune status of the human population, and a limited repertoire of functionally viable amino acids at specific amino acid sites
Antiplasmodial volatile extracts from Cleistopholis patens Engler & Diels and Uvariastrum pierreanum Engl. (Engl. & Diels) (Annonaceae) growing in Cameroon
In a search for alternative treatment for malaria, plant-derived essential oils extracted from the stem barks and leaves of Cleistopholis patens and Uvariastrum pierreanum (Annonaceae) were evaluated in vitro for antiplasmodial activity against the W2 strain of Plasmodium falciparum. The oils were obtained from 500 g each of stem barks and leaves, respectively, by hydrodistillation, using a Clevenger-type apparatus with the following yields: 0.23% and 0.19% for C. patens and 0.1% and 0.3% for U. pierreanum (w/w relative to dried material weight). Analysis of 10% (v/v) oil in hexane by gas chromatography and mass spectrometry identified only terpenoids in the oils, with over 81% sesquiterpene hydrocarbons in C. patens extracts and U. pierreanum stem bark oil, while the leaf oil from the latter species was found to contain a majority of monoterpenes. For C. patens, the major components were α-copaene, δ-cadinene, and germacrene D for the stem bark oil and β-caryophyllene, germacrene D, and germacrene B for the leaf oil. The stem bark oil of U. pierreanum was found to contain mainly β-bisabolene and α-bisabolol, while α- and β-pinenes were more abundant in the leaf extract. Concentrations of oils obtained by diluting 1-mg/mL stock solutions were tested against P. falciparum in culture. The oils were active, with IC50 values of 9.19 and 15.19 μg/mL for the stem bark and leaf oils, respectively, of C. patens and 6.08 and 13.96 μg/mL, respectively, for those from U. pierreanum. These results indicate that essential oils may offer a promising alternative for the development of new antimalarials
- …