previous_group previous up next next_group
Previous: 5. Conclusion about APRON Up: 3. Related Work Next: 4. Conclusion


2. Parma Project

As we can state from our HQ's documentation [QUE], the Parma library's interface is the richest one, compared to the other three libraries $C^3$, New POLKA and Octagons. Implemented in $C++$, it is designed to be a general-purpose library, with a strong support for any static analyzer. Therefore, its objectives overlap with our work. However, we consider that its current interface is not totally satisfying.

Firstly, since the interface of the Parma library PPL is not frozen until its official $1.0$ release [*], it can still be changed.

Secondly, PPL is different from our approach since multi-algorithm signatures are not supported. PPL's important algorithms such as projection, minimization and convex hull are based on the Chernikova algorithm, i.e. dual conversion-based like in New POLKA. Therefore interesting implementations using constraint system manipulation algorithms in $C^3$ are not available. However, these algorithms are interesting due to the fact that some algorithms have very low complexity and can be used as approximations. Static analyses using polyhedral abstract domain are expensive, thus approximations are fundamental.

Thirdly, since PPL is developed in C++, issues like exception handlers for $C$ language are not considered. And timeout exceptions are not yet supported.

Finally, since PPL library is designed as a polyhedral library, newly introduced libraries such as the octagon library with its interface, are not yet taken into account.


previous_group previous up next next_group
Previous: 5. Conclusion about APRON Up: 3. Related Work Next: 4. Conclusion
Nguyen Que Duong
2006-09-16