☰
↑
←
→
🔍
TOC
The CiaoPP Program Processor
»
Table of Contents
Table of Contents
Introduction
PART I - Using CiaoPP
The CiaoPP high-level interface
The CiaoPP low-level interface
The CiaoPP command-line interface
Available abstract domains
aeq (abstract domain)
def: definiteness (abstract domain)
deftypes: defined types (based on termsd) (abstract domain)
depth-k (abstract domain)
eterms: types with lnewiden_el/4 (abstract domain)
etermsvar: eterms with variables (abstract domain)
frdef: freeness+definiteness (abstract domain)
fr: minimal freeness (abstract domain)
gr: simple groundness (abstract domain)
lsign (abstract domain)
lsigndiff (abstract domain)
det: determinancy (abstract domain)
nf: non-failure (abstract domain)
Intervals (abstract domain)
pd (abstract domain)
pdb: pd with bottom (abstract domain)
polyhedra (abstract domain)
ptypes: types with topological class widening (abstract domain)
shfr: sharing+freeness (abstract domain)
amgu-based sharing+freeness (abstract domain)
CLIQUE-sharing+freeness (abstract domain)
CLIQUE-sharing+freeness+definiteness (abstract domain)
shfrnv: sharing+freeness+nonvar (abstract domain)
shareson: sharing+sondergaard (abstract domain)
share: sharing (abstract domain)
amgu-based sharing (abstract domain)
CLIQUE-sharing (abstract domain)
1-CLIQUE-sharing (abstract domain)
CLIQUE-sharing+definiteness (abstract domain)
shfret: sharing+freeness+regtypes (abstract domain)
amgu-based sharing+freeness+linearity (abstract domain)
shfrson: sharing+freeness+sondergaard (abstract domain)
son: sondergaard (abstract domain)
svterms: eterms + same value (abstract domain)
termsd: types with shortening (abstract domain)
path (abstract domain)
Available program transformations
Available fixpoints
Other commands
Display information about CiaoPP files
CiaoPP batch processing
XML report for ciaopp-batch output
PART III - Extending CiaoPP
Adding a new analysis domain to CiaoPP
Domain Interface for Defining Abstract Domains
PART IV - CiaoPP Internals
Frontend driver (monolithic)
Advanced output of preprocessor
Analyze driver (monolithic)
Transform driver (monolithic)
Modular driver
Database for intermodular analysis driver
Intermodular analysis scheduler
Program structure for intermodular analysis
Intermodular entry policy
Intermodular success policy
Preprocessing Flags
Debugging PLAI analyses
Incremental analysis (high level)
Incremental analysis (low level)
Update plai_db after clause deletion (incremental analysis)
Database for incremental analysis
Persistent database for incremental analysis
Incremental computation of tarjan algorithm
Diff algorithm
fixpo_dd (library)
The Preprocessing Unit Component
The Preprocessing Unit
Preprocessing Unit Handling Library
native (library)
program_keys (library)
tr_syntax (library)
The Global Information Server
Analysis Information Server
The Abstract Interpretation Component -PLAI
PLAI- Abstract Interpretation-based Analysis
Program Analysis (PLAI)
fixpo_plai (library)
Available type domains and widenings
plai_db (library)
Applying assertions during fixpoint
Improving Analysis Using Trust Assertions
Debugging the fixpoint operations
Fixpoint tracer
view_fixp (library)
Batch analysis client
ciaopp_master (application)
Worker for CiaoPP batch processing
Auxiliary predicates
Database for ciaopp_batch process
tasks_db (library)