Inter4ql  5.2
Math.h
1 #ifndef MATH_H
2 #define MATH_H
3 
4 #include "../ModuleInternal.h"
5 
6 namespace Inter4ql {
7 
8  class VariableSpace;
9 
12  class Math : public ModuleInternal {
13  public:
18  explicit Math(VariableSpace *_v);
19 
26  static Inter4ql::logic_type::type runPlugin(std::string relation, std::vector<Value*>* bindedValues);
27 
28  void reason();
29  Result ask_for_result(Fact * term) const;
30  private:
31  void add_relation(std::string name, std::string interface);
32  };
33 }
34 
35 #endif /* MATH_H */
36 
type
Enumeration type for four-valued logic.
Definition: Types.h:45
VariableSpace class for handling all values in interpreter environment.
Definition: VariableSpace.h:13
class that implements a fact
Definition: Fact.h:14
void reason()
performs reasoning
Definition: Math.cc:187
Definition: Result.h:16
Definition: Application.cc:37
Result ask_for_result(Fact *term) const
provides valuations matching given Fact
Definition: Math.cc:192
std::string name
name of external module
Definition: ModuleInternal.h:51
class that handles hardcoded relations in modules (f.e. math functions)
Definition: ModuleInternal.h:20
Math(VariableSpace *_v)
constructor for Math module
Definition: Math.cc:17
static Inter4ql::logic_type::type runPlugin(std::string relation, std::vector< Value *> *bindedValues)
Function executing math function.
Definition: Math.cc:69
Math module used to implement basic math operations.
Definition: Math.h:12