![]() |
Connect++ 0.6.0
A fast, readable connection prover for first-order logic.
|
Full representation of inferences, beyond just the name. More...
#include <InferenceItem.hpp>
Public Member Functions | |
InferenceItem () | |
Constructor - probably unused. | |
InferenceItem (InferenceItemType) | |
Constructor - probably unused. | |
InferenceItem (InferenceItemType, ClauseNum) | |
Constructor - probably unused. | |
InferenceItem (InferenceItemType, const Literal &, LitNum) | |
Constructor - probably unused. | |
InferenceItem (InferenceItemType, const Literal &, LitNum, size_t) | |
Constructor for lemmata. | |
InferenceItem (InferenceItemType, const Literal &, LitNum, ClauseNum, LitNum, size_t, size_t) | |
Constructor for extensions. | |
InferenceItem (InferenceItemType, const Literal &, LitNum, ClauseNum, LitNum, const Substitution &, size_t) | |
Constructor for reductions. | |
Public Attributes | |
InferenceItemType | T |
What kind of inference is this? | |
Literal | L |
The Literal that is used to make the inference. | |
LitNum | Lindex |
The index of the literal within the clause being used. | |
ClauseNum | C_2 |
For extensions, the number of the clause for which a fresh copy is being made. | |
LitNum | Lprime |
The index of the literal in C_2 being used. | |
Substitution | sigma |
A copy of the substitution that makes the rule applicable. This may or may not be reusable, depending on the specific implementation. As of V0.5.0 extensions need to recompute it. | |
size_t | index_in_path |
The index in the path of the literal being used. | |
size_t | index_in_lemmata |
For certification, you want to know which element of the lemmata list was used when the Lemma rule was employed. | |
size_t | index_in_LC_index |
Estensions are performance-critical. We store the index into the literal_clause_index, and the second index giving us the relevant pair. | |
size_t | index_to_LC |
Estensions are performance-critical. We store the index into the literal_clause_index, and the second index giving us the relevant pair. | |
Full representation of inferences, beyond just the name.
The nomenclature here deliberately mimics that used in many of the publications describing the method, in an attempt to maintain readability.
As these are mostly used just to store information as the stack representing the proof is built, the methods are mostly just constructors.
Definition at line 61 of file InferenceItem.hpp.
InferenceItem::InferenceItem | ( | ) |
Constructor - probably unused.
Definition at line 51 of file InferenceItem.cpp.
InferenceItem::InferenceItem | ( | InferenceItemType | _T | ) |
Constructor - probably unused.
Definition at line 64 of file InferenceItem.cpp.
InferenceItem::InferenceItem | ( | InferenceItemType | _T, |
ClauseNum | _C_2 ) |
Constructor - probably unused.
Definition at line 78 of file InferenceItem.cpp.
InferenceItem::InferenceItem | ( | InferenceItemType | _T, |
const Literal & | _L, | ||
LitNum | _Lindex ) |
Constructor - probably unused.
Definition at line 93 of file InferenceItem.cpp.
InferenceItem::InferenceItem | ( | InferenceItemType | _T, |
const Literal & | _L, | ||
LitNum | _Lindex, | ||
size_t | _index_in_lemmata ) |
Constructor for lemmata.
The last parameter is for index_in_lemmata.
Definition at line 109 of file InferenceItem.cpp.
InferenceItem::InferenceItem | ( | InferenceItemType | _T, |
const Literal & | _L, | ||
LitNum | _Lindex, | ||
ClauseNum | _C_2, | ||
LitNum | _LPrime, | ||
size_t | _LC_i, | ||
size_t | _LC ) |
Constructor for extensions.
Definition at line 126 of file InferenceItem.cpp.
InferenceItem::InferenceItem | ( | InferenceItemType | _T, |
const Literal & | _L, | ||
LitNum | _Lindex, | ||
ClauseNum | _C_2, | ||
LitNum | _LPrime, | ||
const Substitution & | _sigma, | ||
size_t | _index_in_path ) |
Constructor for reductions.
Definition at line 146 of file InferenceItem.cpp.
ClauseNum InferenceItem::C_2 |
For extensions, the number of the clause for which a fresh copy is being made.
Definition at line 78 of file InferenceItem.hpp.
size_t InferenceItem::index_in_LC_index |
Estensions are performance-critical. We store the index into the literal_clause_index, and the second index giving us the relevant pair.
Definition at line 104 of file InferenceItem.hpp.
size_t InferenceItem::index_in_lemmata |
For certification, you want to know which element of the lemmata list was used when the Lemma rule was employed.
Definition at line 98 of file InferenceItem.hpp.
size_t InferenceItem::index_in_path |
The index in the path of the literal being used.
Definition at line 93 of file InferenceItem.hpp.
size_t InferenceItem::index_to_LC |
Estensions are performance-critical. We store the index into the literal_clause_index, and the second index giving us the relevant pair.
Definition at line 110 of file InferenceItem.hpp.
Literal InferenceItem::L |
The Literal that is used to make the inference.
Definition at line 69 of file InferenceItem.hpp.
LitNum InferenceItem::Lindex |
The index of the literal within the clause being used.
Definition at line 73 of file InferenceItem.hpp.
LitNum InferenceItem::Lprime |
The index of the literal in C_2 being used.
Definition at line 82 of file InferenceItem.hpp.
Substitution InferenceItem::sigma |
A copy of the substitution that makes the rule applicable. This may or may not be reusable, depending on the specific implementation. As of V0.5.0 extensions need to recompute it.
Definition at line 89 of file InferenceItem.hpp.
InferenceItemType InferenceItem::T |
What kind of inference is this?
Definition at line 65 of file InferenceItem.hpp.