summaryrefslogtreecommitdiff
path: root/src/proof/proof_manager.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/proof/proof_manager.h')
-rw-r--r--src/proof/proof_manager.h64
1 files changed, 64 insertions, 0 deletions
diff --git a/src/proof/proof_manager.h b/src/proof/proof_manager.h
new file mode 100644
index 000000000..5d8b9d271
--- /dev/null
+++ b/src/proof/proof_manager.h
@@ -0,0 +1,64 @@
+/********************* */
+/*! \file proof_manager.h
+ ** \verbatim
+ ** Original author: lianah
+ ** Major contributors: none
+ ** This file is part of the CVC4 prototype.
+ ** Copyright (c) 2009, 2010, 2011 The Analysis of Computer Systems Group (ACSys)
+ ** Courant Institute of Mathematical Sciences
+ ** New York University
+ ** See the file COPYING in the top-level source directory for licensing
+ ** information.\endverbatim
+ **
+ ** \brief A manager for Proofs.
+ **
+ ** A manager for Proofs.
+ **
+ **
+ **/
+
+#ifndef __CVC4__PROOF_MANAGER_H
+#define __CVC4__PROOF_MANAGER_H
+
+#include <iostream>
+#include "proof.h"
+
+// forward declarations
+namespace Minisat {
+class Solver;
+}
+
+namespace CVC4 {
+namespace prop {
+class CnfStream;
+}
+class SatProof;
+class CnfProof;
+
+// different proof modes
+enum ProofFormat {
+ LFSC,
+ NATIVE
+};
+
+class ProofManager {
+ SatProof* d_satProof;
+ CnfProof* d_cnfProof;
+ ProofFormat d_format;
+
+ static ProofManager* proofManager;
+ static bool isInitialized;
+ ProofManager(ProofFormat format);
+public:
+ static ProofManager* currentPM();
+
+ static void initSatProof(Minisat::Solver* solver);
+ static void initCnfProof(CVC4::prop::CnfStream* cnfStream);
+
+ static SatProof* getSatProof();
+ static CnfProof* getCnfProof();
+
+};
+
+} /* CVC4 namespace*/
+#endif /* __CVC4__PROOF_MANAGER_H */
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback