CBMC
witness_provider.h
Go to the documentation of this file.
1 /*******************************************************************\
2 
3 Module: Interface for outputting GraphML Witnesses for Goto Checkers
4 
5 Author: Daniel Kroening, Peter Schrammel
6 
7 \*******************************************************************/
8 
11 
12 #ifndef CPROVER_GOTO_CHECKER_WITNESS_PROVIDER_H
13 #define CPROVER_GOTO_CHECKER_WITNESS_PROVIDER_H
14 
15 class goto_tracet;
16 
20 {
21 public:
22  virtual ~witness_providert() = default;
23 
24  // Outputs an error witness in GraphML format (see `graphml_witnesst`)
25  virtual void output_error_witness(const goto_tracet &) = 0;
26 
27  // Outputs a proof in GraphML format (see `graphml_witnesst`)
28  virtual void output_proof() = 0;
29 };
30 
31 #endif // CPROVER_GOTO_CHECKER_WITNESS_PROVIDER_H
Trace of a GOTO program.
Definition: goto_trace.h:177
An implementation of incremental_goto_checkert may implement this interface to provide GraphML witnes...
virtual void output_error_witness(const goto_tracet &)=0
virtual void output_proof()=0
virtual ~witness_providert()=default