Mutating code annotations: An empirical evaluation on Java and C# programs

2020 ◽  
Vol 191 ◽  
pp. 102418 ◽  
Author(s):  
Pedro Pinheiro ◽  
José Carlos Viana ◽  
Márcio Ribeiro ◽  
Leo Fernandes ◽  
Fabiano Ferrari ◽  
...  
Author(s):  
Aleksandar S. Dimovski ◽  
Sven Apel ◽  
Axel Legay

AbstractLifted (family-based) static analysis by abstract interpretation is capable of analyzing all variants of a program family simultaneously, in a single run without generating any of the variants explicitly. The elements of the underlying lifted analysis domain are tuples, which maintain one property per variant. Still, explicit property enumeration in tuples, one by one for all variants, immediately yields combinatorial explosion. This is particularly apparent in the case of program families that, apart from Boolean features, contain also numerical features with large domains, thus giving rise to astronomical configuration spaces.The key for an efficient lifted analysis is a proper handling of variability-specific constructs of the language (e.g., feature-based runtime tests and $$\texttt {\#if}$$ # if directives). In this work, we introduce a new symbolic representation of the lifted abstract domain that can efficiently analyze program families with numerical features. This makes sharing between property elements corresponding to different variants explicitly possible. The elements of the new lifted domain are constraint-based decision trees, where decision nodes are labeled with linear constraints defined over numerical features and the leaf nodes belong to an existing single-program analysis domain. To illustrate the potential of this representation, we have implemented an experimental lifted static analyzer, called SPLNum$$^2$$ 2 Analyzer, for inferring invariants of C programs. An empirical evaluation on BusyBox and on benchmarks from SV-COMP yields promising preliminary results indicating that our decision trees-based approach is effective and outperforms the baseline tuple-based approach.


1986 ◽  
Vol 47 (7) ◽  
pp. 1149-1154
Author(s):  
Le Quang Rang ◽  
D. Voslamber

2018 ◽  
Author(s):  
Timothy Newhouse ◽  
Daria E. Kim ◽  
Joshua E. Zweig

The diverse molecular architectures of terpene natural products are assembled by exquisite enzyme-catalyzed reactions. Successful recapitulation of these transformations using chemical synthesis is hard to predict from first principles and therefore challenging to execute. A means of evaluating the feasibility of such chemical reactions would greatly enable the development of concise syntheses of complex small molecules. Herein, we report the computational analysis of the energetic favorability of a key bio-inspired transformation, which we use to inform our synthetic strategy. This approach was applied to synthesize two constituents of the historically challenging indole diterpenoid class, resulting in a concise route to (–)-paspaline A in 9 steps from commercially available materials and the first pathway to and structural confirmation of emindole PB in 13 steps. This work highlights how traditional retrosynthetic design can be augmented with quantum chemical calculations to reveal energetically feasible synthetic disconnections, minimizing time-consuming and expensive empirical evaluation.


2009 ◽  
Vol 20 (3) ◽  
pp. 597-607
Author(s):  
Tian-Lin ZHOU ◽  
Liang SHI ◽  
Bao-Wen XU ◽  
Yu-Ming ZHOU
Keyword(s):  

Sign in / Sign up

Export Citation Format

Share Document