fr.boreal.backward_chaining.cover.CoverFunction Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of integraal-backward-chaining Show documentation
Show all versions of integraal-backward-chaining Show documentation
InteGraal has been designed in a modular way, in order to facilitate
software reuse and extension.
It should make it easy to test new scenarios and techniques, in
particular by combining algorithms.
The main features of Graal are currently the following:
(1) internal storage to store data by using a SQL or RDF representation
(Postgres, MySQL, HSQL, SQLite, Remote SPARQL endpoints, Local in-memory
triplestores) as well as a native in-memory representation
(2) data-integration capabilities for exploiting federated heterogeneous
data-sources through mappings able to target systems such as SQL, RDF,
and black-box (e.g. Web-APIs)
(3) algorithms for query-answering over heterogeneous and federated data
based on query rewriting and/or forward chaining (or chase)
package fr.boreal.backward_chaining.cover;
import java.util.Set;
import fr.boreal.model.formula.api.FOFormula;
import fr.boreal.model.query.api.FOQuery;
/**
* From Melanie Konïg's thesis
*
* Let Q1s and Q2s two set of queries
* We say that Q1s covers Q2s (noted Q1s >= Q2s)
* if for every query Q2 of Q2
* there exist a query Q1 from Q1s such that
* Q1 >= Q2 (Q1 subsumes Q2)
*
* For termination reasons, the cover should keep in priority the already explored queries
*
*/
public interface CoverFunction {
/**
* @param queries the set of queries to compute the cover of
* @return the cover of the given queries
*/
Set> cover(Set> queries);
}