31#include "InferenceItem.hpp"
76 void find_reductions(
Unifier&, vector<InferenceItem>&,
const Literal&,
93 inline uint32_t
length()
const {
return len; }
101 inline void set_num_preds(
size_t num_predicates) { num_preds = num_predicates; }
169 string to_string(
bool =
false)
const;
179 vector<Literal>::const_iterator
cbegin()
const {
return path.cbegin(); }
180 vector<Literal>::const_iterator cend()
const {
return path.cend(); }
181 vector<Literal>::iterator begin() {
return path.begin(); }
182 vector<Literal>::iterator end() {
return path.end(); }
184 friend ostream& operator<<(ostream&,
const SimplePath&);
Representation of clauses.
Definition Clause.hpp:50
Basic representation of literals, bundling together (pointers to) a Predicate, a collection of argume...
Definition Literal.hpp:50
Simple representation of the path within a proof tree.
Definition SimplePath.hpp:55
vector< Literal >::const_iterator cbegin() const
Iterators just traverse the path vector.
Definition SimplePath.hpp:179
uint32_t length() const
Straightforward get method.
Definition SimplePath.hpp:93
void push(const Literal &)
Add a new Literal to the Path.
Definition SimplePath.cpp:39
void show_path_only(ostream &)
Show just the path.
Definition SimplePath.cpp:129
string make_LaTeX(bool=false) const
Convert the Path only to a LaTeX representation.
Definition SimplePath.cpp:148
void set_num_preds(size_t num_predicates)
Set method for num_predicates.
Definition SimplePath.hpp:101
bool test_for_regularity(Clause &) const
Regularity test.
Definition SimplePath.cpp:64
void find_limited_reductions(Unifier &, vector< InferenceItem > &, Clause &)
Given a Clause, find all possible reductions given the current Path, but only for the first Literal i...
Definition SimplePath.cpp:102
void clear()
evert to the empty state without changing num_preds.
Definition SimplePath.cpp:34
SimplePath()
You should () usually never need a more compilcated constructor.
Definition SimplePath.hpp:82
void pop()
Remove the last item from the Path.
Definition SimplePath.cpp:54
Literal back() const
Get the last Literal in the Path. Non-destructive.
Definition SimplePath.cpp:44
void find_all_reductions(Unifier &, vector< InferenceItem > &, Clause &)
Given a Clause, find all possible reductions given the current Path.
Definition SimplePath.cpp:115
Wrap up various applications of unificiation into a single class: all the unification you need to do ...
Definition Unifier.hpp:83