Agent Software Testing

bc

1.08.2
Terms
Run
One campaign of one tool on one program.
Cores
The parallel processes of one campaign.
Budget
The longest a campaign may run.
Fixed track
The command line is given and the tool supplies only the input. Method
Open track
The tool also chooses arguments, files and environment. Method
Median
The middle value over a tool's runs; the median of two runs is their mean.
standard
Conventional gcov replay of every retained test case, same counting code and denominators. Method
Unreached
A branch that none of the main-group tools that ran on the program reaches (4 to 12 tools).
Union of runs
The branches that at least one of a tool's runs reaches, each counted once.
Output tokens
Model output of a whole campaign, reasoning included, as self-reported in the release.
Sanitiser signature
The sanitiser, the error kind and the innermost frame in the program's own source; two can share a cause.
Language model
A system in which a language model does the central reasoning of a classical technique, such as concolic execution.
Symbolic
Runs the program on symbolic inputs and asks a constraint solver for concrete inputs that reach new paths.
Fuzzer
Coverage-guided fuzzing: mutates inputs and keeps those that reach new code.
Hybrid
A fuzzer paired with a concolic executor; each supplies the other with inputs.
Main
Shown by default: the tools a reader is most likely to compare.
Ablation
Variants of the agent that switch off or change one part, to show what that part adds.
Seeding
Runs of a tool that start from seeds produced by another system.
Control
Systems that run without the agent, as a reference for the main group.
Release
A dated snapshot of the data, named like 2026.1. It never changes; corrections go into the next release.
Superseded
An entry that a newer one replaces. It stays in the release and shows under all versions.
Withdrawn
An entry taken out of the comparison after it was published.

GNU bc is a calculator language with arbitrary-precision numbers and a syntax similar to C.

Branches
1,92216.6% unreached (5 tools)
Language
C
Inputs
command-line arguments, files, standard input, environment
Fixed track
none agreed
Tools with runs
115 main
Runs
3939 with branch sets

Branch map

execute.cstorage.cnumber.cbc.cscan.c
1 tool 1962 tools 7843 tools 644 tools 101all 5 458Unreached 319

Coverage over time

Use the left and right arrow keys, Home and End to move along the time axis. The value of every line at that time is read out.

The chart needs JavaScript. The final values are in the Final coverage table below.

Showing 5 of 5
Curves: curves/ in the results repository

Final coverage

Final coverage of every tool on bc
ToolMedianMin to maxShare (median)RunsMedian curveOutput tokens
Main group, 5 tools
Agolic KLEE, GPT-5.5agent, open track, six cores, version 1.0.1+2407fd07
1,4491,443–1,5413248,934
ConcoLLMic, GPT-5.5language model, open track, version 9634e686+f3fd7c36
1,3331,306–1,3393796,474
KLEE fixed options, 6 coressymbolic, open track, six cores, version efa1e052
430394–4813not applicable
KLEE uniform options, 6 coressymbolic, open track, six cores, version efa1e052
527505–5563not applicable
SymTuner, 6 coressymbolic, open track, six cores, version 71806b45
537530–5383not applicable
Ablation group, 1 tool
Seeding group, 2 tools
Control group, 3 tools
finals.csv in the results repository

Branches reached by one tool only

Branches reached by each main-group tool and by it only, on bc
ToolRuns in unionBranches reachedShare (union)Reached by this tool only
Agolic KLEE, GPT-5.5
31,575180
ConcoLLMic, GPT-5.5
31,40115
KLEE fixed options, 6 cores
35201
KLEE uniform options, 6 cores
35770
SymTuner, 6 cores
35770

Sanitiser findings

Signatures in each tool’s final test cases.

Distinct sanitiser signatures of each tool on bc
ToolRuns replayedAddressSanitizerkind, signaturesUndefinedBehaviorSanitizerkind, signatures
Agolic KLEE, GPT-5.5
3
  • segv1
  • heap-buffer-overflow1
none found
ConcoLLMic, GPT-5.5
3
  • segv1
  • heap-buffer-overflow1
none found
KLEE fixed options, 6 cores
3none foundnone found
KLEE uniform options, 6 cores
3none foundnone found
SymTuner, 6 cores
3none foundnone found
KLEE fixed options, 1 core
5none foundnone found
KLEE uniform options, 1 core
5none foundnone found
SymTuner, 1 core
5none foundnone found
Agolic KLEE, GPT-5.4
3
  • segv1
  • heap-buffer-overflow1
none found
SymTuner rerun, 6 cores
3none foundnone found
SymTuner from the agent's seeds, 6 cores, its own tests
3none foundnone found

Counts are of untriaged signatures. † marks fewer than three runs.