Skip to content

Commit 574f29c

Browse files
author
martin
committed
Add comments to the abstract interpreter interface.
1 parent 7aca753 commit 574f29c

File tree

1 file changed

+7
-0
lines changed

1 file changed

+7
-0
lines changed

src/analyses/ai.h

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@ Author: Daniel Kroening, [email protected]
2525

2626
#include "ai_domain.h"
2727

28+
/// The basic interface of an abstract interpreter. This should be enough
29+
/// to create, run and query an abstract interpreter.
2830
// don't use me -- I am just a base class
2931
// use ait instead
3032
class ai_baset
@@ -41,6 +43,7 @@ class ai_baset
4143
{
4244
}
4345

46+
/// Running the interpretter
4447
void operator()(
4548
const goto_programt &goto_program,
4649
const namespacet &ns)
@@ -100,6 +103,7 @@ class ai_baset
100103
return abstract_state_before(std::next(l));
101104
}
102105

106+
/// Resets the domain
103107
virtual void clear()
104108
{
105109
}
@@ -244,6 +248,9 @@ class ai_baset
244248
const goto_functionst &goto_functions,
245249
const namespacet &ns);
246250

251+
// Visit performs one step of abstract interpretation from history h
252+
// Depending on the instruction type it may compute a number of "edges"
253+
// or applications of the abstract transformer
247254
// true = found something new
248255
bool visit(
249256
locationt l,

0 commit comments

Comments
 (0)