Go to the previous, next section.

## FlFRule -- Fuzzy Rule

### SYNOPSIS

`#include <FuzzyLib/FRule.h>`

### TYPE

`Fl_FRULE`

### BASE CLASSES

FlObject

### DERIVED CLASSES

None

### RELATED CLASSES

None

### DESCRIPTION

Constructors:

`FlFRule();`
`FlFRule(FlParam *param);`
  Initializes a `FlFRule` variable.

In addition to the member functions required by FuzzyLib, `FlFRule` provides:

`void add_lhs(FlFClause *clause);`
`void add_lhs(FlFClause &clause);`
`void add_rhs(FlFClause *clause);`
`void add_rhs(FlFClause &clause);`
  Adds a `FlFClause` to the LHS or the RHS rules.

`int get_n_lhs() const;`
`int get_n_rhs() const;`
  Gets the total number of LHS/RHS clauses.

`FlFClause* get_lhs(int i) const;`
`FlFClause* get_rhs(int i) const;`
  Returns the LHS/RHS clause from array-position `i`.

`double certainty(double x);`
`double set_certainty(double x);`
  Sets the certainty to `x` and returns the old certainty.

`double certainty() const;`
`double get_certainty() const;`
  Returns the certainty.

`double aggregate_value() const;`
  Returns the current value of the aggregation.

`double aggregate()`
  Aggregates the LHS rule inputs and returns the result.

Go to the previous, next section.