| G. Puebla and M. Hermenegildo. Optimized Algorithms for the Incremental Analysis of Logic Programs. In International Static Analysis Symposium, number 1145 in LNCS, pages 270--284. Springer-Verlag, September 1996. |
....Example Program in the extended program is uniquely identi ed by a pair (literal; id j ) It should be noted that the traditional xpoint algorithm in PLAI had to be modi ed slightly so that this information is correctly stored, but this modi cation is straightforward. The newer xpoint algorithm [52] recently integrated into PLAI computes Analysis ancestors(P; p; D ) rather than Analysis(P; p; D ) The ancestor information is useful for guiding iterations and for performing incremental analysis and thus, in that case, no modi cation of the xpoint algorithm is needed at all. In the ....
....is performed as follows [6] Firstly, if requested by the user, the Prolog program is analyzed using one or more global analyzers. These analyzers [28, 48, 47] are aimed at inferring useful information for detecting independence. These analyses use the optimized xpoint algorithm presented in [52]. Secondly, since side e ects cannot be allowed to execute freely in parallel, the original program is analyzed using the global analyzer described in [44] which propagates the side e ect characteristics of builtins determining the scope of side e ects. In the current implementation, ....
[Article contains additional citation context not shown here]
G. Puebla and M. Hermenegildo. Optimized Algorithms for the Incremental Analysis of Logic Programs. In International Static Analysis Symposium, number 1145 in LNCS, pages 270-284. Springer-Verlag, September 1996.
No context found.
G. Puebla and M. Hermenegildo. Optimized Algorithms for the Incremental Analysis of Logic Programs. In International Static Analysis Symposium, number 1145 in LNCS, pages 270--284. Springer-Verlag, September 1996.
No context found.
G. Puebla and M. Hermenegildo. Optimized Algorithms for the Incremental Analysis of Logic Programs. In International Static Analysis Symposium, number 1145 in LNCS, pages 270--284. Springer-Verlag, September 1996.
....in the source language, is supported [HPB99] 6 tively, the abstract call and success substitutions. 7 Due to space limitations, and given that it is now well understood, we do not describe here how we compute Analysis(P; entries; D ) More details can be found in [Bru91, MH90, MH92, HPMS95, PH96] Given Analysis(P; entries; D ) fhp 1 ; c 1 ; s 1 i; hp n ; c n ; s n ig, correctness of abstract interpretation guarantees that the following propositions hold: Proposition 3.2 [Correctness w.r.t. successes] The abstract success substitutions cover all the concrete ....
....In that case, the previous analysis results for the module are used in order to compute the new local xed point. For this, the incremental addition algorithm of [HPMS95] can be used. This is not a great restriction since incremental analysis algorithms can be as fast as non incremental ones [PH96] Possibility 2 has the advantage of not performing any speculative work as analysis does not continue until an optimal success substitution is computed. However, care must be taken when there are circular dependencies among modules, as we may end up in a deadlock or in an in nite loop. Also, ....
G. Puebla and M. Hermenegildo. Optimized Algorithms for the Incremental Analysis of Logic Programs. In International Static Analysis Symposium, number 1145 in LNCS, pages 270-284. Springer-Verlag, September 1996.
....to process arcs in the order they were introduced in the dependency arc table, and the global strategy is to use a LIFO stack and eliminate subsumed arcs , i.e. other arcs in the queue exist which ensure that their computation is redundant. Due to lack of space, subsumed arcs are not studied here [PH96]. The incremental updating strategy is to use a FIFO queue and eliminate subsumed arcs. DD uses depth dependent and both DI and DI S depth independent propagations ( PH96] 6.1 Analysis Times for the Non Incremental Case Table 1 shows the analysis times for a series of benchmark programs using ....
....in the queue exist which ensure that their computation is redundant. Due to lack of space, subsumed arcs are not studied here [PH96] The incremental updating strategy is to use a FIFO queue and eliminate subsumed arcs. DD uses depth dependent and both DI and DI S depth independent propagations ([PH96]) 6.1 Analysis Times for the Non Incremental Case Table 1 shows the analysis times for a series of benchmark programs using the algorithms mentioned above. Times are in milliseconds on a Sparc 10 (SICStus 2.1, fastcode) A relatively wide range of programs has been used as benchmarks. They can ....
G. Puebla and M. Hermenegildo. Optimized Algorithms for Incremental Analysis of Logic Programs. Technical Report CLIP3/96.0, Facultad de Inform'atica, UPM, 1996.
....debugging and validation and Section 4 for program transformation and optimization. 2 Static Analysis and Program Assertions The fundamental functionality behind Ciaopp is static program analysis. For this task Ciaopp uses the PLAI abstract interpreter [18, 2] its CLP [11] and incremental [15, 22] versions, and adaptations of Gallagher s regular type analysis [8] The system includes several abstract domains and can infer information on basic properties such as moded types, de niteness, freeness, and grounding dependencies, as well as on more complex properties such as determinacy, ....
G. Puebla and M. Hermenegildo. Optimized Algorithms for the Incremental Analysis of Logic Programs. In International Static Analysis Symposium, number 1145 in LNCS, pages 270-284. Springer-Verlag, September 1996.
....fg; D) fhp(A) fg; fA=agi; hq(X) fg; fX=agi; hr(X) fX=ag; fX=agig and Figure 1 depicts a possible and or analysis graph. 2 Due to space limitations, and given that it is now well understood, we do not describe in detail here how to build analysis and or graphs. More details can be found in [Bru91, MH90, MH92, HPMS95, PH96]. The graph has two sorts of nodes: those which correspond to atoms (called or nodes) and those which correspond to clauses (called and nodes) Or nodes are triples hp i ; c i ; s i i. As before, c i and s i are, respectively, a pair of abstract call and success substitutions for the ....
....i.e. using hp i ; Aadd( c i ) Aadd( s i )i instead of hp i ; c i ; s i i for the nodes to the right of the unfolded node, with the associated computational cost. This cost could however be kept quite reasonable by the use of incremental analysis techniques such as those presented in [HPMS95, PH96]. Example 5.5 Consider the following program and the goal r(X) r(X) q(X) p(X) q(a) q(f(X) q(X) p(a) p(f(X) p(X) p(g(X) p(X) The third clause for p can be eliminated in the specialized program for r(X) provided that the call substitution for p(X) i.e. the success ....
G. Puebla and M. Hermenegildo. Optimized Algorithms for the Incremental Analysis of Logic Programs. In International Static Analysis Symposium, number 1145 in LNCS, pages 270--284. Springer-Verlag, September 1996.
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC