![]() |
Connect++ 0.6.0
A fast, readable connection prover for first-order logic.
|
#include <ProofChecker.hpp>

Public Member Functions | |
| ProofChecker (Matrix &, const ProofType &, VariableIndex *, TermIndex *) | |
| pair< bool, string > | check_proof_verbose () |
| Check the proof and produce a string with a detailed description. | |
| bool | check_proof () |
| Check the proof quietly. | |
Private Member Functions | |
| bool | C_i_ok (size_t) const |
| Check index. Self-explanatory! | |
| bool | Lit_i_ok (size_t) const |
| Check index. Self-explanatory! | |
| bool | P_i_ok (size_t) const |
| Check index. Self-explanatory! | |
| bool | Lem_i_ok (size_t) const |
| Check index. Self-explanatory! | |
| string | state_to_string () const |
| Make a string containing the current state. | |
Private Attributes | |
| VariableIndex * | vi |
| Needed as we need to generate things with new variables. | |
| TermIndex * | ti |
| Needed as we need to generate things with new variables. | |
| Matrix & | matrix |
| Reference to the problem matrix. | |
| Clause | C |
| Part of the representation of the current state of the proof. | |
| vector< Literal > | P |
| Part of the representation of the current state of the proof. | |
| vector< Literal > | Lem |
| Part of the representation of the current state of the proof. | |
| ProofType | proof |
| Straightforward internal representation of the proof. | |
| Unifier | u |
| Needed to check some proof steps. | |
| vector< RightStackItem > | r_stack |
| Collection of right-hand branches to complete. | |
| size_t | num_subs |
| Use this to undo the substitutions when you've finished. | |
This is an alternative to the Prolog proof checker. It uses the contents of stack and matrix to re-construct the proof, checking as it goes that the substitutions work. As an extra check, it re-does unifications rather than using anything stored.
Note: undoes its substitutions when it's finished.
Definition at line 70 of file ProofChecker.hpp.
| ProofChecker::ProofChecker | ( | Matrix & | m, |
| const ProofType & | p, | ||
| VariableIndex * | _vi, | ||
| TermIndex * | _ti ) |
Definition at line 28 of file ProofChecker.cpp.
|
private |
Check index. Self-explanatory!
Definition at line 44 of file ProofChecker.cpp.
| bool ProofChecker::check_proof | ( | ) |
Check the proof quietly.
Definition at line 299 of file ProofChecker.cpp.
| pair< bool, string > ProofChecker::check_proof_verbose | ( | ) |
Check the proof and produce a string with a detailed description.
Definition at line 79 of file ProofChecker.cpp.
|
private |
Check index. Self-explanatory!
Definition at line 56 of file ProofChecker.cpp.
|
private |
Check index. Self-explanatory!
Definition at line 48 of file ProofChecker.cpp.
|
private |
Check index. Self-explanatory!
Definition at line 52 of file ProofChecker.cpp.
|
private |
Make a string containing the current state.
Definition at line 60 of file ProofChecker.cpp.
|
private |
Part of the representation of the current state of the proof.
Definition at line 87 of file ProofChecker.hpp.
|
private |
Part of the representation of the current state of the proof.
Definition at line 95 of file ProofChecker.hpp.
|
private |
Reference to the problem matrix.
Definition at line 83 of file ProofChecker.hpp.
|
private |
Use this to undo the substitutions when you've finished.
Definition at line 111 of file ProofChecker.hpp.
|
private |
Part of the representation of the current state of the proof.
Definition at line 91 of file ProofChecker.hpp.
|
private |
Straightforward internal representation of the proof.
Definition at line 99 of file ProofChecker.hpp.
|
private |
Collection of right-hand branches to complete.
Definition at line 107 of file ProofChecker.hpp.
|
private |
Needed as we need to generate things with new variables.
Definition at line 79 of file ProofChecker.hpp.
|
private |
Needed to check some proof steps.
Definition at line 103 of file ProofChecker.hpp.
|
private |
Needed as we need to generate things with new variables.
Definition at line 75 of file ProofChecker.hpp.