Polyspace Code Prover



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.

Detecting run-time errors

Detect Errors That Elude Other Means of Testing

Analyze all code paths against all possible inputs without code execution.

Call hierarchy.

Create Certification Artifacts

Complete the certification process for projects based on industry standards.

DO Qualification Kit.

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.

Tooltip displaying the possible ranges for all run-time conditions.

Prevent Unintended Software Behavior

Find all code sections that cannot be reached via any execution path and errors in logic and program structure.

Find dead code.

Trace Code Verification Results to Simulink Models

Run verification on generated code and trace findings to the source model block in Simulink.

Tracing code verification results to the Simulink model.

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.

Automating the code verification process.

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.

Send email notifications with Polyspace Code Prover results.

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.

Detecting run-time errors

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.

Project overview dashboard.

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.

Create ticket.

Latest Features

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

See release notes for details on any of these features and corresponding functions.

Polyspace Code Prover™ は堅実な静的解析ツールとして、C および C++ ソースコードにオーバーフロー、ゼロ除算、配列の領域外へのアクセスやその他特定の実行時エラーがないことを証明します。結果の生成には、プログラムの実行や、コードの計測、テスト ケースは必要ありません。Polyspace Code Prover は、形式的手法に基づいたセマンティック解析と抽象的解釈を用いて、ソフトウェアの手続き間、制御フローおよびデータフローの動作を検証します。手書きのコード、生成されたコード、またはこの 2 つの混合コードに使用することができます。ソースコードに対し、ランタイム エラーは発生しない(常に信頼できる)、ランタイムエラーは常に発生する、到達不能な処理がある、ランタイムエラーの可能性がある(未証明)を示すように色分け表示されます。

また、Polyspace Code Prover は変数および関数の戻り値の範囲情報を表示し、変数が指定された範囲の限界を超える条件を明示することもできます。結果をダッシュボードに表示して、品質メトリクスを追跡し、ソフトウェアの品質目標を確実に達成することができます。Polyspace Code Prover を自動検証用のビルド システムに統合することもできます。

業界標準には、IEC Certification Kit (IEC 61508 および ISO 26262 用) および DO Qualification Kit (DO-178 用) に対応しています。Ada 言語 にも対応しています。

Get a Free Trial

30 days of exploration at your fingertips.

Download now

Ready to Buy?

Get pricing information and explore related products.

Are You a Student?

Get MATLAB and Simulink student software.

Learn more