@@ -50,11 +50,11 @@ Aeon:
50
50
</p>
51
51
52
52
<p>
53
- <code>satabs *.c --pointer-check --bounds-check --show-claims </code>
53
+ <code>satabs *.c --pointer-check --bounds-check --show-properties </code>
54
54
</p>
55
55
56
56
<p class="justified">
57
- SATABS will show about 300 claims in various functions
57
+ SATABS will show about 300 properties in various functions
58
58
(read <a href="properties.shtml">this</a> for more information
59
59
on the property instrumentation).
60
60
Now consider the first few lines of the <code>main</code> function
@@ -126,7 +126,7 @@ matches the string at <code>NAME</code>. If a variable name matches,
126
126
SATABS has no information whatsoever about the content of
127
127
<code>environ</code>. Even if SATABS could access the
128
128
en­vi­ron­ment variables on your computer, a successful verification
129
- of <code>Aeon</code> would then only guarantee that the claims for
129
+ of <code>Aeon</code> would then only guarantee that the properties for
130
130
this program hold on your computer with a specific set of
131
131
en­vi­ron­ment variables. We have to assume that <code>environ</code>
132
132
contains en­vi­ron­ment variables that have an arbitrary content
@@ -137,10 +137,10 @@ can be modified by the user. The approximation of the behavior of
137
137
content of the string.</p>
138
138
139
139
<p class="justified">
140
- Now let us have another look at the claims that SATABS generates for the
140
+ Now let us have another look at the properties that SATABS generates for the
141
141
models of the the string library and for <code>getenv</code>. Most of these
142
- claims require that we verify that the upper and lower bounds of buffers or
143
- arrays are not violated. Let us look at one of the claims that SATABS
142
+ properties require that we verify that the upper and lower bounds of buffers or
143
+ arrays are not violated. Let us look at one of the properties that SATABS
144
144
generates for the code in function <code>getConfig</code>:
145
145
</p>
146
146
@@ -156,12 +156,12 @@ Claim getConfig.3:<br>
156
156
<p class="justified">The model of the function <code>strcpy</code>
157
157
dereferences the pointer returned by <code>getenv</code>, which may
158
158
return a NULL pointer. This possibility is detected by the static
159
- analysis, and thus a corresponding claim is generated. Let us
160
- check this specific claim :
159
+ analysis, and thus a corresponding property is generated. Let us
160
+ check this specific property :
161
161
</p>
162
162
163
163
<p>
164
- <code>satabs *.c --pointer-check --bounds-check --claim getConfig.3</code>
164
+ <code>satabs *.c --pointer-check --bounds-check --property getConfig.3</code>
165
165
</p>
166
166
167
167
<p class="justified">SATABS immediately returns a counterexample path
@@ -171,7 +171,7 @@ bug in this program: it requires that the environment variable
171
171
HOME is set, and crashes otherwise.
172
172
</p>
173
173
174
- <p class="justified">Let us examine one more claim in the
174
+ <p class="justified">Let us examine one more property in the
175
175
same function:</p>
176
176
177
177
<p><code>
@@ -182,7 +182,7 @@ Claim getConfig.7:<br>
182
182
</code></p>
183
183
184
184
<p class="justified">
185
- This claim asserts that the upper bound of the array <code>home</code>
185
+ This property asserts that the upper bound of the array <code>home</code>
186
186
is not violated. The variable <code>home</code>
187
187
looks familiar: We encountered it in the function <code>getConfig</code>
188
188
given above. The function <code>getenv</code> in combination with functions
@@ -192,7 +192,7 @@ to check the upper bound of the array <code>home</code>:
192
192
</p>
193
193
194
194
<p>
195
- <code>satabs *.c --pointer-check --bounds-check --claim getConfig.7</code>
195
+ <code>satabs *.c --pointer-check --bounds-check --property getConfig.7</code>
196
196
</p>
197
197
198
198
<p class="justified">
@@ -212,7 +212,7 @@ such loops and will therefore unroll the loop body as often as necessary.
212
212
The array <code>home</code> has <code>MAX_LEN</code> elements, and
213
213
<code>MAX_LEN</code> is defined to be 512 in <code>aeon.h</code>.
214
214
Therefore, SATABS would have to run through at least 512 iterations, only to
215
- verify (or reject) one of the more than 300 claims ! Does this fact
215
+ verify (or reject) one of the more than 300 properties ! Does this fact
216
216
defeat the purpose of static verification?
217
217
</p>
218
218
@@ -242,7 +242,7 @@ use BOPPO instead of the default model checker SMV:
242
242
</p>
243
243
244
244
<p>
245
- <code>satabs --claim 5 --modelchecker boppo --loop-detection \</code><br>
245
+ <code>satabs --property 5 --modelchecker boppo --loop-detection \</code><br>
246
246
<code> aeon.c base64.c lib_aeon.c</code>
247
247
</p>
248
248
0 commit comments