Skip to content

Commit 3007f9a

Browse files
Add options for incremental one-loop BMC
for incremental unwinding and assertion checking of a specified loop.
1 parent 55ebdb9 commit 3007f9a

File tree

1 file changed

+12
-1
lines changed

1 file changed

+12
-1
lines changed

src/goto-checker/bmc_util.h

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -153,7 +153,10 @@ void update_status_of_unknown_properties(
153153
"(unwind):" \
154154
"(unwindset):" \
155155
"(graphml-witness):" \
156-
"(unwindset):"
156+
"(incremental-loop):" \
157+
"(unwind-min):" \
158+
"(unwind-max):" \
159+
"(ignore-properties-before-unwind-min)"
157160

158161
#define HELP_BMC \
159162
" --paths [strategy] explore paths one at a time\n" \
@@ -164,6 +167,14 @@ void update_status_of_unknown_properties(
164167
" --unwind nr unwind nr times\n" \
165168
" --unwindset L:B,... unwind loop L with a bound of B\n" \
166169
" (use --show-loops to get the loop IDs)\n" \
170+
" --incremental-loop L check properties after each unwinding\n" \
171+
" of loop L\n" \
172+
" (use --show-loops to get the loop IDs)\n" \
173+
" --unwind-min nr start incremental-loop after nr unwindings\n" \
174+
" --unwind-max nr stop incremental-loop after nr unwindings\n" \
175+
" --ignore-properties-before-unwind-min\n" \
176+
" do not check properties before unwind-min\n" \
177+
" when using incremental-loop\n" \
167178
" --show-vcc show the verification conditions\n" \
168179
" --slice-formula remove assignments unrelated to property\n" \
169180
" --unwinding-assertions generate unwinding assertions (cannot be\n" \

0 commit comments

Comments
 (0)