54 research outputs found
Enforcing Termination of Interprocedural Analysis
Interprocedural analysis by means of partial tabulation of summary functions
may not terminate when the same procedure is analyzed for infinitely many
abstract calling contexts or when the abstract domain has infinite strictly
ascending chains. As a remedy, we present a novel local solver for general
abstract equation systems, be they monotonic or not, and prove that this solver
fails to terminate only when infinitely many variables are encountered. We
clarify in which sense the computed results are sound. Moreover, we show that
interprocedural analysis performed by this novel local solver, is guaranteed to
terminate for all non-recursive programs --- irrespective of whether the
complete lattice is infinite or has infinite strictly ascending or descending
chains
Succinct Representations for Abstract Interpretation
Abstract interpretation techniques can be made more precise by distinguishing
paths inside loops, at the expense of possibly exponential complexity.
SMT-solving techniques and sparse representations of paths and sets of paths
avoid this pitfall. We improve previously proposed techniques for guided static
analysis and the generation of disjunctive invariants by combining them with
techniques for succinct representations of paths and symbolic representations
for transitions based on static single assignment. Because of the
non-monotonicity of the results of abstract interpretation with widening
operators, it is difficult to conclude that some abstraction is more precise
than another based on theoretical local precision results. We thus conducted
extensive comparisons between our new techniques and previous ones, on a
variety of open-source packages.Comment: Static analysis symposium (SAS), Deauville : France (2012
Improving Strategies via SMT Solving
We consider the problem of computing numerical invariants of programs by
abstract interpretation. Our method eschews two traditional sources of
imprecision: (i) the use of widening operators for enforcing convergence within
a finite number of iterations (ii) the use of merge operations (often, convex
hulls) at the merge points of the control flow graph. It instead computes the
least inductive invariant expressible in the domain at a restricted set of
program points, and analyzes the rest of the code en bloc. We emphasize that we
compute this inductive invariant precisely. For that we extend the strategy
improvement algorithm of [Gawlitza and Seidl, 2007]. If we applied their method
directly, we would have to solve an exponentially sized system of abstract
semantic equations, resulting in memory exhaustion. Instead, we keep the system
implicit and discover strategy improvements using SAT modulo real linear
arithmetic (SMT). For evaluating strategies we use linear programming. Our
algorithm has low polynomial space complexity and performs for contrived
examples in the worst case exponentially many strategy improvement steps; this
is unsurprising, since we show that the associated abstract reachability
problem is Pi-p-2-complete
Logico-numerical max-strategy iteration
Strategy iteration methods are used for solving fixed point equations. It has been shown that they improve precision in static analysis based on abstract interpretation and template abstract domains, e.g. intervals, octagons or template polyhedra. However, they are limited to numerical programs. In this paper, we propose a method for applying max-strategy iteration to logico-numerical programs, i.e. programs with numerical and Boolean variables, without explicitly enumerating the Boolean state space. The method is optimal in the sense that it computes the least fixed point w.r.t. the abstract domain; in particular, it does not resort to widening. Moreover, we give experimental evidence about the efficiency and precision of the approach
Using Bounded Model Checking to Focus Fixpoint Iterations
Two classical sources of imprecision in static analysis by abstract
interpretation are widening and merge operations. Merge operations can be done
away by distinguishing paths, as in trace partitioning, at the expense of
enumerating an exponential number of paths. In this article, we describe how to
avoid such systematic exploration by focusing on a single path at a time,
designated by SMT-solving. Our method combines well with acceleration
techniques, thus doing away with widenings as well in some cases. We illustrate
it over the well-known domain of convex polyhedra
Nucleozin Targets Cytoplasmic Trafficking of Viral Ribonucleoprotein-Rab11 Complexes in Influenza A Virus Infection
Novel antivirals are needed to supplement existing control strategies for influenza A virus (IAV). A promising new class of drug, exemplified by the compound nucleozin, has recently been identified that targets the viral nucleoprotein (NP). These inhibitors are thought to act as "molecular staples" that stabilize interactions between NP monomers, promoting the formation of nonfunctional aggregates. Here we detail the inhibitory mechanism of nucleozin, finding that the drug has both early- and late-acting effects on the IAV life cycle. When present at the start of infection, it inhibited viral RNA and protein synthesis. However, when added at later time points, it still potently blocked the production of infectious progeny but without affecting viral macromolecular synthesis. Instead, nucleozin blocked the cytoplasmic trafficking of ribonucleoproteins (RNPs) that had undergone nuclear export, promoting the formation of large perinuclear aggregates of RNPs along with cellular Rab11. This effect led to the production of much reduced amounts of often markedly smaller virus particles. We conclude that the primary target of nucleozin is the viral RNP, not NP, and this work also provides proof of the principle that IAV replication can be effectively inhibited by blocking cytoplasmic trafficking of the viral genome.MRC grant: (G0700815), University of Cambridge/Trinity College grant: (Newton Trust), RGC Hong Kong grant: (GRF 768010 M)
ADP-ribosylation of arginine
Arginine adenosine-5′-diphosphoribosylation (ADP-ribosylation) is an enzyme-catalyzed, potentially reversible posttranslational modification, in which the ADP-ribose moiety is transferred from NAD+ to the guanidino moiety of arginine. At 540 Da, ADP-ribose has the size of approximately five amino acid residues. In contrast to arginine, which, at neutral pH, is positively charged, ADP-ribose carries two negatively charged phosphate moieties. Arginine ADP-ribosylation, thus, causes a notable change in size and chemical property at the ADP-ribosylation site of the target protein. Often, this causes steric interference of the interaction of the target protein with binding partners, e.g. toxin-catalyzed ADP-ribosylation of actin at R177 sterically blocks actin polymerization. In case of the nucleotide-gated P2X7 ion channel, ADP-ribosylation at R125 in the vicinity of the ligand-binding site causes channel gating. Arginine-specific ADP-ribosyltransferases (ARTs) carry a characteristic R-S-EXE motif that distinguishes these enzymes from structurally related enzymes which catalyze ADP-ribosylation of other amino acid side chains, DNA, or small molecules. Arginine-specific ADP-ribosylation can be inhibited by small molecule arginine analogues such as agmatine or meta-iodobenzylguanidine (MIBG), which themselves can serve as targets for arginine-specific ARTs. ADP-ribosylarginine specific hydrolases (ARHs) can restore target protein function by hydrolytic removal of the entire ADP-ribose moiety. In some cases, ADP-ribosylarginine is processed into secondary posttranslational modifications, e.g. phosphoribosylarginine or ornithine. This review summarizes current knowledge on arginine-specific ADP-ribosylation, focussing on the methods available for its detection, its biological consequences, and the enzymes responsible for this modification and its reversal, and discusses future perspectives for research in this field
- …