Polyspace®
Quality. Safety. Security.
Polyspace – a product developed by MathWorks – is a static code analysis tool used to detect vulnerabilities and critical run-time errors for C, C++, and Ada programming languages, and to proof-check whether your source code follows appropriate code standards.
Polyspace key features
- Polyspace Bug Finder™ identifies software bugs, concurrency issues, run-time errors, and other C and C++ source code defects. It analyzes data flow, interprocedural behavior, and software control by performing static program analysis. The tool checks code compliance with coding rule standards, safety standards, and code metrics, and document compliance with MISRA, IEC 61508, ISO 26262, DO-178, and FDA regulations.
- Polyspace results can be traced back to Simulink® models, Speedgoat, and dSPACE® TargetLink® blocks for automatically generated code.
- Polyspace Code Prover™ examines C and C++ source code correctness for the presence of run-time errors such as overflow, buffer overrun, division-by-zero, out-of-bounds array access, and others. The tool checks every code instruction and provides a formal diagnostic for each operation under normal and abnormal usage conditions.
- Polyspace Client™ for Ada and Polyspace Server™ for Ada formally verify the absence of run-time errors in Ada source code by using static code analysis. The tools track software quality metrics and ensure the delivery of software quality objectives.
Industries
Biotech and Pharmaceutical
Take your pharmaceutical research and development to the next level.
MATLAB, Simulink, and COMSOL Multiphysics allow biotech and pharmaceutical companies to advance the design and optimization of pharmaceutical production, develop algorithms, process multidisciplinary data, easily manage their entire workflows, and perform modeling and simulation for drug discovery and development.
Products
- Polyspace Access
-
Identifies coding defects, monitors software quality metrics, and reviews static analysis results.
Learn more
- Polyspace Code Prover
-
Formally prove the correctness of your code without executing it.
Learn more
- Polyspace Bug Finder
-
Identify run-time errors, data flow problems, and other defects in C and C++ embedded software.
Learn more
- Polyspace Client for Ada
-
Verifies the absence of overflow, divide-by-zero, and other run-time errors in your source code.
Learn more
- Polyspace Code Prover Server
-
Confirms the absence of run-time errors.
Learn more
- Polyspace Server for Ada
-
Verifies code on computer clusters and publishes metrics.
Learn more
- Polyspace Bug Finder Server
-
Identifies software defects via static analyses.
Learn more
Licenses
Events
Frequently Asked Questions
-
What Polyspace Access does?
Polyspace Access is a platform that lets you check your code quality throughout the software development life cycle. It’s a central place to identify coding defects, review static analysis, and monitor software quality metrics.
-
Can I install Polyspace separately from MATLAB or Simulink?
Starting from R2019a, Polyspace Bug Finder and Polyspace Code Prover are standalone products that can be installed independently of MATLAB and Simulink. However, integration with MATLAB/Simulink requires additional steps.To install Polyspace R2019a or later, follow these steps:
- Download the MathWorks Installer
- Launch the installer and log in to your MathWorks account when prompted.
- In the installer, select your “Polyspace Desktop,” “Polyspace Server,” or “Polyspace Test” license. Contact your local MATLAB license administrator if no Polyspace license is available.
- Follow the remaining instructions to install the Polyspace products.
-
How does Polyspace help find bugs in code?
Polyspace Bug Finder uses static analysis including semantic analysis to look at software control, data flow and interprocedural behavior. By finding defects early you can triage and fix bugs at the beginning of the development process.
-
What is Polyspace Code Prover?
Polyspace Code Prover uses static analysis and abstract interpretation based on formal methods. It can be applied to handwritten code, generated code or a combination of the two. Each operation is color coded to show if it’s free of run-time errors, proven to fail, unreachable or unproven.
-
What is Polyspace Test?
Polyspace Test provides tools to develop, manage and execute unit and integration tests for C and C++ code in embedded systems. You can create tests using the Polyspace xUnit API or a graphical editor, with stubs or mocks to isolate and verify code. Tests can run on host computers or embedded targets and be linked to requirements for traceability.It includes code coverage analysis (e.g., decision, condition, MC/DC) and automatic test generation for full coverage and boundary testing. The Polyspace Test comes with a common user interface which allows you to configure, run and review static analysis results to ensure test robustness. Industry standard support is available through IEC Certification Kit (ISO 26262, IEC 61508) and DO Qualification Kit (DO-178).
-
How do I use Polyspace with Simulink?
We can integrate Polyspace with MATLAB and Simulink to analyze Generated Code.To connect your MATLAB and Polyspace installations, follow these steps:
- Launch MATLAB with administrator privileges.
- (For versions prior to R2021a) Navigate to the directory polyspaceroot\toolbox\polyspace\pscore\pscore\, where polyspaceroot is the folder where Polyspace is installed, e.g., C:\Program Files\Polyspace\R2019a.
- In the MATLAB command prompt, enter: polyspacesetup(‘install’)
- A prompt will appear informing you that the workspace will be cleared and all open models closed. Click “Yes” to proceed. The process may take a few minutes.
- Restart MATLAB.
-
Can Polyspace be integrated into CI/CD?
Yes, Polyspace can be integrated with CI/CD workflows, including Jenkins and Bamboo, to automate static code analysis or dynamic testing. So you can find and fix code defects early.Polyspace in your CI/CD pipeline means continuous compliance to quality and safety standards, reducing the risk of runtime errors and making your software more reliable.
Blogs and user stories
Learn about MATLAB, Simulink, COMSOL Multiphysics, and Speedgoat from enthusiastic developers and engineering experts devoted to redifining the limits of science.
Highlights from SciEngineering Conference 2024
Explore how the 2024 SciEngineering Conference brought engineers, researchers, and industry leaders together to solve real-world problems with cutting-edge tools.
11 Best Practices for Developing ISO 26262 Applications with Simulink
This white paper offers guidance on modeling practices to help segment algorithms and reduce verification and deployment efforts when following ISO 26262 and using Model-Based Design.
Meeting ISO 26262 Compliance: A Guide to Success with Model-Based Design
This blog dives into how to achieve ISO 26262 compliance with model-based design using MATLAB and Simulink. Including key areas, workflows, & best practices for developing safety-critical software.
Why Use Virtual Prototyping for Electric Vehicle Development?
Learn why virtual prototyping is becoming increasingly essential in electric vehicle development and why MATLAB and SIMULINK are standout tools for this purpose.
Key MATLAB and Simulink Capabilities for Aerospace and Defense
Explore MATLAB and Simulink capabilities that can help aerospace and defense organizations with control systems, system design, and physical modeling.
MATLAB and Simulink for Automotive
Discover how MATLAB and Simulink drive automotive innovation. Learn how these tools expedite vehicle development and help OEMs meet evolving market demands.
Expletive Pharma Improves Productivity with a MATLAB-Driven Pricing System
Expletive Pharma transforms an existing pricing solution into an improved, user-friendly, and flexible system that could also function as a base for any further advancements with the help of MATLAB.

