CiaoPP

CiaoPP is the abstract interpretation-based preprocessor of the Ciao multi-paradigm program development environment. CiaoPP can perform a number of program debugging, analysis, and source-to-source transformation tasks on (Ciao) Prolog programs. These tasks include: Inference of properties of the predicates and literals of the program, including types, modes and other variable instantiation properties, non-failure, determinacy, bounds on computational cost, bounds on sizes of terms in the program, etc. Certain kinds of static debugging and verification, finding errors before running the program. This includes checking how programs call system library predicates and also checking the assertions present in the program or in other modules used by the program. Such assertions represent essentially partial specifications of the program. Several kinds of source to source program transformations such as program specialization, slicing, partial evaluation of a program, program parallelization (taking granularity control into account), inclusion of run-time tests for assertions which cannot be checked completely at compile-time, etc. The abstract model of the program inferred by the analyzers is used in the system to certify that an untrusted mobile code is safe w.r.t. the given policy (i.e., an abstraction-carrying code approach to mobile code safety).


References in zbMATH (referenced in 31 articles , 1 standard article )

Showing results 1 to 20 of 31.
Sorted by year (citations)

1 2 next

  1. Haemmerlé, R.; López-García, P.; Liqat, U.; Klemen, M.; Gallagher, J.P.; Hermenegildo, M.V.: A transformational approach to parametric accumulated-cost static profiling (2016)
  2. Serrano, A.; Lopez-Garcia, P.; Hermenegildo, M.V.: Resource usage analysis of logic programs via abstract interpretation using sized types (2014)
  3. Albert, Elvira; Arenas, Puri; Genaim, Samir; Puebla, German; Zanardini, Damiano: Cost analysis of object-oriented bytecode programs (2012)
  4. Albert, Elvira; Arenas, Puri; Puebla, Germán; Hermenegildo, Manuel: Certificate size reduction in abstraction-carrying code (2012)
  5. Lopez-Garcia, Pedro; Darmawan, Luthfi; Bueno, Francisco; Hermenegildo, Manuel: Interval-based resource usage verification: formalization and prototype (2012)
  6. Albert, Elvira; Arenas, Puri; Genaim, Samir; Puebla, Germán: Closed-form upper bounds in static cost analysis (2011)
  7. Lu, Lunjin: A polymorphic type dependency analysis for logic programs (2011)
  8. Lopez-Garcia, Pedro; Bueno, Francisco; Hermenegildo, Manuel: Automatic inference of determinacy and mutual exclusion for logic programs using mode and type analyses (2010)
  9. Lopez-Garcia, Pedro; Darmawan, Luthfi; Bueno, Francisco: A framework for verification and debugging of resource usage properties: resource usage verification (2010)
  10. Gras, Daniel Cabeza; Hermenegildo, Manuel V.: Non-strict independence-based program parallelization using sharing and freeness information (2009)
  11. Navas, Jorge; Méndez-Lojo, Mario; Hermenegildo, Manuel V.: User-definable resource usage bounds analysis for Java bytecode (2009)
  12. Albert, Elvira; Puebla, Germán; Hermenegildo, Manuel: Abstraction-carrying code: a model for mobile code safety (2008)
  13. Ochoa, Claudio; Puebla, Germán: A study on the practicality of poly-controlled partial evaluation. (2007)
  14. Albert, Elvira; Arenas, Puri; Puebla, Germán; Hermenegildo, Manuel: Reduced certificates for abstraction-carrying code (2006)
  15. Albert, Elvira; Puebla, Germán; Gallagher, John P.: Non-leftmost unfolding in partial evaluation of logic programs with impure predicates (2006)
  16. Gallagher, John P.; Puebla, Germán; Albert, Elvira: Converting one type-based abstract domain to another (2006)
  17. Pietrzak, Paweł; Correas, Jesús; Puebla, Germán; Hermenegildo, Manuel V.: Context-sensitive multivariant assertion checking in modular programs (2006)
  18. Puebla, Germán; Albert, Elvira; Hermenegildo, Manuel: Abstract interpretation with specialized definitions (2006)
  19. Albert, Elvira; Puebla, Germán; Hermenegildo, Manuel V.: An abstract interpretation-based approach to mobile code safety. (2005)
  20. Hermenegildo, Manuel V.; Puebla, Germán; Bueno, Francisco; López-García, Pedro: Integrated program debugging, verification, and optimization using abstract interpretation (and the Ciao system preprocessor) (2005)

1 2 next


Further publications can be found at: http://clip.dia.fi.upm.es/~clip/Software/Ciao/ciaopp-1.2.0.html/ciaopp_ref_manrefs.html