33#include "LaTeXUtilities.hpp"
34#include "BasicTypes.hpp"
35#include "Parameters.hpp"
36#include "vic_strings.hpp"
62 Predicate(ID new_id) : id(new_id), name(), arity(0) {}
63 Predicate(ID new_id,
const string& new_name)
64 : id(new_id), name(new_name), arity(0) {}
65 Predicate(ID new_id,
const string& new_name, Arity new_arity)
66 : id(new_id), name(new_name), arity(new_arity) {}
82 inline ID
get_ID()
const {
return id; }
86 inline string get_name()
const {
return name; }
Basic representation of predicates: here just names, ids and arities.
Arity get_arity() const
Basic get method.
bool is_compatible_with(const Predicate &) const
Do the name and the arity of a pair of Predicates both match?
ID get_ID() const
Basic get method.
Predicate()
These should only be constructed by PredicateIndex, which is a friend, and the constructors are there...
Predicate(const Predicate &)=delete
Don't allow copies of these to be made.
string make_LaTeX() const
Make a useable LaTeX version.
friend ostream & operator<<(ostream &, const Predicate &)
Only for debugging.
string to_string() const
Converting to a string just gives you the name.
string get_name() const
Basic get method.
Management of Predicate objects.