Skip to content

Commit e65f027

Browse files
author
martin
committed
Add comments to the abstract interpreter interface.
1 parent 1fe0796 commit e65f027

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 interpreter
4447
void operator()(
4548
const goto_programt &goto_program,
4649
const namespacet &ns)
@@ -101,6 +104,7 @@ class ai_baset
101104
return abstract_state_before(std::next(l));
102105
}
103106

107+
/// Resets the domain
104108
virtual void clear()
105109
{
106110
}
@@ -245,6 +249,9 @@ class ai_baset
245249
const goto_functionst &goto_functions,
246250
const namespacet &ns);
247251

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

0 commit comments

Comments
 (0)