Download the Giolit Program Verifier 7.0 free trial.
Prove your C project free of run-time errors.
2 · Get the download
Unlock the C Verifier trial
One short form — the download appears instantly, for every trial you picked.
Trial details
What's in the Giolit Program Verifier trial
C verifier trial: 1000 runs, 50 days
End-to-end C projects
Testing tries a few inputs — this trial proves every input: get the giolit-verifier-7.0.0-trial.tar.gz package with the v7 command, 12 tutorial examples, 177 benchmarks with known answers (102 proven safe, 75 real bugs) and every result bundle, plus Tutorial, Product Overview, README and License Terms. Run v7 file.c on Ubuntu 24.04 — when it can't be proven you get the exact failing input plus a step-by-step trace, and each run yields a certificate your auditors can check — see what the verifier checks.
Testing tries a few inputs — proof covers them all: every input, every path and every possible thread interleaving, across every file in your project. When it can't be proven you get the exact failing input plus a step-by-step trace, never a false alarm. Each run yields a certificate your auditors can check: PROVEN, or VIOLATED with the failing input and trace. Fast and fit for daily use: typical check in about 10 seconds across 177 benchmarks (102 safe / 75 real bugs), small thread proof in about half a second (~0.5s), 35-file project entry in about 16 seconds — first answer wins.
The C project may include multiple threads or recursions, multiple functions and multiple files.
$ v7 a.c b.c -I include -D CONFIG=1
$ v7 --entry=kv_fletcher16_words -DKV_SEQUENTIAL -Iinclude src/*.c --report=out
- Multi-file, multi-flag projects — pass every translation unit and flag together:
v7 a.c b.c -I include -D CONFIG=1, withsrc/*.c+-Iincludelinked end to end. - Threads: POSIX threads + C11 atomics — every thread interleaving checked; data races surface as VIOLATED reports with the failing interleaving and trace.
- Recursion via contracts — recursive functions verify against their contracts instead of unrolling forever.
- --entry per-function proofs — prove one entry at a time (
--entry=my_func) while still linking all project files, so large codebases verify incrementally. - Project scale — kvserver project scale (~8400 lines / 34 modules); the example certificate below links 35 files / 4870 lines end to end for entry
kv_fletcher16_wordsin 16s.
Proven outputs
Example certificates
Testing tries a few inputs — proof covers them all. Every run ends with proof you can hand to an auditor: a certificate when everything is proven, or a report with the exact failing input and step-by-step trace when a bug is found, never a false alarm. Below are three real outputs — two small thread examples and one 35-file project proof. Each PDF carries the verdict, the exact command, per-check results and the full proof.

PROVEN
Concurrent mutex — all checks proven
2 PROVEN / 0 violated · 0.5s · 06_threads_mutex.c (entry main), 25 lines
Download PDF
VIOLATED
Threads race — violation found
1 violated + failing interleaving · 0.3s · 07_threads_race.c (entry main), 23 lines
Download PDF
PROVEN
kvserver project — per-function proof
9 proven / 0 violated · 16s · 35 files / 4870 lines · entry kv_fletcher16_words · 104 pages
Download PDFGenerated by the pro engine — trial produces trial-marked equivalents with the same PDF + JSON & proof bundle (full machine-readable outputs listed in the expert details below).
What's inside
C trial package contents
Testing tries a few inputs — this package proves every input. Each run yields a certificate your auditors can check.
- v7 command — verify with
v7 file.c, select properties with--checks, set budget with--timeout. - 12 tutorial examples — overflow, memory safety, concurrency and assertion checks you can run in minutes.
- 177 benchmarks with known answers (102 proven safe, 75 real bugs) and every result bundle.
- Docs — Tutorial, Product Overview, README and License Terms PDFs.
System requirements
Runs on Ubuntu 24.04 Linux x86-64
Proof covers them all — install in minutes, then get evidence, not opinions, on your own machine.
- Ubuntu 24.04 LTS x86-64 or newer (one Linux computer per trial).
- LLVM/Clang 18 (
libllvm18,libclang-cpp18),libc6-dev,libssl3. - LuaLaTeX + qpdf for PDF certificate generation (JSON & proof need no extras).
Install
Install and verify in minutes
When it can't be proven you get the exact failing input plus a step-by-step trace — fit for daily use straight from the command line.
$ tar xzf giolit-verifier-7.0.0-trial.tar.gz
$ ./install.sh
$ v7 file.c
$ v7 --checks=overflow,valid-deref file.c --report=out
$ v7 --license
v7 --license shows runs and days left without using a run.
What it checks
Run-time errors the trial detects
Testing tries a few inputs — proof checks every input for number, memory and thread mistakes, with no false alarms.
- Number mistakes — overflow, division by zero, invalid shifts.
- Memory mistakes — out-of-bounds arrays, null or dangling pointer use, double or invalid free, leaks.
- Failed checks plus thread interleaving mistakes. Full check list.
Expert details+
- Checks: integer overflow (CWE-190), division by zero (CWE-369), invalid shifts (CWE-1335), array-bounds (CWE-787), null/dangling dereference (CWE-476/416), double/invalid free (CWE-415/761), leaks (CWE-401); threads via Owicki-Gries — POSIX threads + C11 atomics, all interleavings.
- Outputs: PDF certificate + JSON, SARIF 2.1.0 & proof.json with proof on control-flow graph;
--sarifupload to GitHub code scanning or GitLab; C++ SDK. - CI: exit codes 0 proven, 1 violated, 2 unknown, 3 usage error, 4 no license;
--checks,--timeout,--entry,--report.
Meet the Giolit Program Verifier
Explore Giolit's automated formal verification technology for high-assurance software systems.
Compare
Which trial is right for me?
| C Verifier | SVA Verifier | Trade Verifier | |
|---|---|---|---|
| Built for | Firmware, embedded and systems engineers | RTL designers and verification engineers (ASIC / FPGA) | Brokers, prop and HFT desks, algo vendors, risk and compliance teams |
| You give it | C source files — multi-file projects, threads | SystemVerilog RTL with SVA assertions | Trading strategies in C++, Python or Java, or plain rules |
| It proves | Free of run-time errors: overflow, out-of-bounds, null and dangling pointers, leaks, data races | Every assertion holds for all inputs and start states; covers reachable; safety margins | Position limits, order caps, price bands, kill switches and no-overfill rules hold on every sequence of orders and fills |
| You get back | PDF certificate or report with the failing input, JSON, SARIF | Certificate with safety margins, or the failing cycle as a VCD waveform and replay testbench | Signed certificate with safety margins, or the breaking sequence as a replayable FIX 4.4 log |
| First command | v7 file.c | sva-verify --reset=rst design.sv | trade-verify strategy.gts |
| Trial | C Verifier free trialor read about the C program verifier | SVA Verifier free trialor read about the SystemVerilog assertion verifier | Trade Verifier free trialor read about the trading risk verifier |
After you download
From download to first proof
- 1
Install in minutes
Extract the archive and run ./install.sh on Ubuntu 24.04. No solver to install, no account, no network needed.
- 2
Run the worked examples
Each trial ships with tutorial examples — every bug next to its fix — and a benchmark with known answers you can rerun.
- 3
Check your own code
Point it at your project, design or strategy. Questions? Our team helps trial users get to a first result.
FAQ
Free trial questions
Are the Giolit trials free?
+
Yes. Each trial is free for 1000 runs within 50 days on one Linux computer. No credit card, and nothing to cancel — the trial simply expires.
Which trial do I need?
+
C software such as firmware, drivers and multi-file C projects: the Program Verifier. RTL hardware with SystemVerilog assertions: the SVA Verifier. Algorithmic trading strategies and pre-trade risk controls: the Trading Risk Verifier. You can request several trials with one form.
What are the system requirements?
+
Ubuntu 24.04 LTS x86-64 or newer with LLVM/Clang 18 libraries, libc6-dev and libssl3. LuaLaTeX and qpdf are needed only for PDF reports; JSON and text output need nothing extra.
How do I install a trial?
+
Extract the archive, run ./install.sh, then run the first example: v7 file.c, sva-verify --reset=rst design.sv or trade-verify 01_position_limit.gts. Each package includes a tutorial and worked examples.
Is my code uploaded anywhere?
+
No. Every verifier runs entirely on your own machine, with Giolit's own engines and no cloud service. Your source code, RTL or trading strategy never leaves it.
What does each verifier produce?
+
A verdict for every check — proven, or the exact case that breaks it — with reports: PDF, JSON and SARIF for C; waveforms and replay testbenches for SVA; replayable FIX 4.4 logs for trading. Trial reports are watermarked.
Can I use the verifiers in CI?
+
Yes. Each tool returns exit codes for proven, violated and undecided results and writes machine-readable output, so it can gate merges and releases.
What happens when the trial ends?
+
After 1000 runs or 50 days the tool stops running new checks; anything you generated stays yours. Contact Giolit Labs for a production or CI licence. The --license option shows runs and days left at any time without using a run.
Ready for production or CI?
Continued use after the trial needs a licence. Talk to us about licences for your team and build pipeline, verification services and training.
