Polyspace Code Prover™ is a sound static analysis tool that proves the absence of overflow, divide-by-zero, out-of-bounds array access, and certain other run-time errors in C and C++ source code. It produces results without requiring program execution, code instrumentation, or test cases. Polyspace Code Prover uses semantic analysis and abstract interpretation based on formal methods to verify software interprocedural, control, and data flow behavior. You can use it on handwritten code, generated code, or a combination of the two. Each operation is color-coded to indicate whether it is free of run-time errors, proven to fail, unreachable, or unproven.
Polyspace Code Prover also displays range information for variables and function return values, and can prove conditions under which variables exceed specified range limits. Results can be published to a dashboard to track quality metrics and ensure conformance with software quality objectives. Polyspace Code Prover can be integrated into build systems for automated verification.
Verify generated code or mixed code which contains both generated and handwritten code.Learn more
Discover more about Polyspace Code Prover by exploring these resources.
Explore documentation for Polyspace Code Prover functions and features, including release notes and examples.
View system requirements for the latest release of Polyspace Code Prover.
View articles that demonstrate technical advantages of using Polyspace Code Prover.
Read how Polyspace Code Prover is accelerating research and development in your industry.
Find answers to questions and explore troubleshooting resources.
Read more about common and topical applications for Polyspace static analysis tools.
Polyspace Code Prover apps enable you to quickly access common tasks through an interactive interface.
Polyspace Code Prover requires Polyspace Bug Finder.
Use Polyspace Code Prover to solve scientific and engineering challenges: