Check Prime Number - Ada-spark Typing CST Test
Loading…
Check Prime Number — Ada-spark Code
A SPARK Ada function that checks if a number is prime.
function Is_Prime(N : Natural) return Boolean is
begin
if N <= 1 then
return False;
end if;
for I in 2 .. N - 1 loop
if N mod I = 0 then
return False;
end if;
end loop;
return True;
end Is_Prime;Ada-spark Language Guide
SPARK is a formally verifiable subset of the Ada programming language designed for high-integrity and safety-critical systems. It enforces strong typing, design-by-contract, and static analysis to mathematically prove program correctness and eliminate entire classes of bugs.
Primary Use Cases
- ▸Avionics flight control software
- ▸Railway signaling and interlocking
- ▸Medical device firmware
- ▸Cybersecure embedded systems
- ▸Automotive safety ECUs
Notable Features
- ▸Design-by-contract with pre/postconditions
- ▸Strong static typing and modularization
- ▸GNATprove formal verification
- ▸Guaranteed absence of runtime errors (AoRTE)
- ▸High-integrity code generation support
Origin & Creator
Developed by Praxis (now Altran UK) and later extended by AdaCore, leading vendors of Ada technology for mission- and safety-critical software.
Industrial Note
SPARK is used where DO-178C Level A or IEC 61508 SIL-4 compliance is required, enabling mathematical proof of correctness for safety-critical and security-critical applications.