Main Page > Polyspace > Polyspace Code Prover

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).

Get Started:

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.

Automate Code Verification with Polyspace Code Prover Server

Enable continuous integration by performing analysis on code changes early and often.

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.

Collaborative Review with Polyspace Code Prover Access

Share verification results and quality metrics with the software development team.

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.

Read, Learn, Explore!

Sign up for best practices, webinar and training dates and for being always up-to-date with MATLAB ® & Simulink ® and COMSOL Multiphysics ®!

If you have any questions about private trainings, please feel free to contact us. Our customer service representatives will be happy to help you!

Get in Touch!

Just fill in your contact details and any specific comments or questions you may have, and click on the “Send” button below. Your request is immediately sent to a sales representative in your geographical area.