Benchmarks
duty-standby pump station with alternation (ST twin)
|
|
| suite id |
st_pump_alternation |
| domain |
water_treatment |
| language |
ST |
| difficulty |
medium |
| validation status |
candidate |
| origin |
authored |
| license |
CC-BY-4.0 |
| syntax pair of |
g_pump_alternation |
Structured Text rendering of g_pump_alternation, for cross-language comparison of the same machine
What is proved
From benchmarks/water_treatment/st_pump_alternation/props.yaml. What each kind claims, and what it becomes on either route, is on The properties we prove.
| id |
kind |
claim |
requirement |
P1 |
mutual_exclusion |
never true together: PumpA, PumpB |
Duty-standby: one pump runs at a time, so the standby stays available and the rising main is not over-pressured. |
Variants
| file |
expected verdict |
violates |
method |
pump_alternation.st |
SAFE |
none |
expert |
Files
Recorded runs
A task can carry two routes. ld is ESBMC's ladder front end reading the program directly. via C is the same solver reached through Beremiz and MatIEC, which is the only route that reaches ST, IL, FBD and SFC; see How ESBMC-PLC works.
st_pump_alternation__pump_alternation__viac via C (props.yaml, expected SAFE): master SAFE