dlvhex  2.5.0
ExternalLearningHelper::InputNogoodProvider Class Reference

Extracts the relevant part of a query which is the reason for some tuple to be in the output or not. More...

#include <include/dlvhex2/ExternalLearningHelper.h>

Inheritance diagram for ExternalLearningHelper::InputNogoodProvider:

Public Member Functions

virtual bool dependsOnOutputTuple () const
 Defines if the input tuple depends on the current output tuple; if not, then the same reason may be used for all output atoms.
virtual Nogood operator() (const PluginAtom::Query &query, const ExtSourceProperties &prop, bool contained, const Tuple tuple=Tuple(), int *weakenedPremiseLiterals=0) const =0
 Computes the reason for a tuple to be in the output or not.

Detailed Description

Extracts the relevant part of a query which is the reason for some tuple to be in the output or not.

Definition at line 58 of file ExternalLearningHelper.h.


Member Function Documentation

Defines if the input tuple depends on the current output tuple; if not, then the same reason may be used for all output atoms.

Parameters:
Falseif the same reason justifies all output atoms of one externalcall, otherwise false.

Reimplemented in ExternalLearningHelper::DefaultInputNogoodProvider.

Definition at line 66 of file ExternalLearningHelper.h.

virtual Nogood ExternalLearningHelper::InputNogoodProvider::operator() ( const PluginAtom::Query query,
const ExtSourceProperties prop,
bool  contained,
const Tuple  tuple = Tuple(),
int *  weakenedPremiseLiterals = 0 
) const [pure virtual]

Computes the reason for a tuple to be in the output or not.

Parameters:
queryExternal atom query.
propProperties of the external source.
containedSpecified whether we want a reason for a tuple to be contained in the output (true) or not (false).
tupleThe output tuple for which we want to compute the reason.
weakenedPremiseLiteralsIndicates the number of literals from the premise which were removed because they are currently unassigned and thus do not influence the result; can be 0.
Returns:
The constructed reason in form of a nogood.

Implemented in ExternalLearningHelper::DefaultInputNogoodProvider.


The documentation for this class was generated from the following file: