Polyspace Code Prover
Prove the absence of run-time errors in software
Polyspace Code Prover™ is a sound static analysis tool that proves the absence of overflow, divide-by-zero, out-of-bounds array access, and 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 to verify handwritten code, generated code, or a combination of the two. Each code statement is color-coded to indicate whether it is free of run-time errors, proven to fail, unreachable, or unproven.
Polyspace Code Prover displays range information for variables and function return values, and can prove which variables exceed specified range limits. Code verification results can be used to track quality metrics and check conformance with your software quality objectives. Polyspace Code Prover can be used with the Eclipse™ IDE to verify code on your desktop
Support for industry standards is available through IEC Certification Kit (for IEC 61508 and ISO 26262) and DO Qualification Kit (for DO-178).
Verify Code Using Formal Mathematics
Achieve high levels of quality and safety with no false negatives.
Prove the Absence of Critical Run-Time Errors
Identify C/C++ and Ada code operations that will never experience a run-time error, regardless of the run-time conditions.
Detect Errors That Elude Other Means of Testing
Analyze all code paths against all possible inputs without code execution.
Create Certification Artifacts
Complete the certification process for projects based on industry standards.
Understand and Improve Code
Reduce time spent on code reviews, debugging, and robustness testing.
Understand the Root Cause of Issues and Improve Design
Examine control and data flow through software and see range information associated with variables and operators.
Prevent Unintended Software Behavior
Find all code sections that cannot be reached via any execution path and errors in logic and program structure.
Trace Code Verification Results to Simulink Models
Run verification on generated code and trace findings to the source model block in Simulink.
Automating the Code Verification Process
Use Polyspace Code Prover Server™ to run the Polyspace Code Prover static analysis engine on a server-class machine with build automation tools such as Jenkins and Bamboo.
Notify and Upload Results for Collaborative Review
Automatically assign defects to component owners, send email notifications, and upload results to Polyspace Code Prover Access so you can triage and resolve issues.
Review Polyspace Code Prover Results So You Can Triage and Resolve Issues
Polyspace Code Prover Access™ provides a web browser interface to Polyspace code verification results and quality metrics stored in a central repository. Use navigation tools in your web browser to investigate code verification results, which are displayed along with the code.
Project Quality and Software Quality Objectives
Dashboards display information that you can use to monitor software quality, project status, the number of defects, code metrics, and software quality objectives.
Integrate with the Bug Tracking Tools You Already Use
Use the web browser interface to create and assign tickets in bug tracking tools such as Jira.
Project Authorization Management
Create and enforce authorization policies for access to project
Check for run-time mismatch between AUTOSAR specifications and code implementation
Stack Size Computation
Determine maximum stack usage by a C program and individual functions
Configuration from Build System
Automatically generate Polyspace configuration modules from build system
Multitasking Code Verification Setup
Specify cyclic tasks and nonpreemptable interrupts directly as verification options