Package edu.tufts.hrilab.belief.provers
Interface Prover
- All Known Implementing Classes:
ClingoProver
,DCEC
,Prolog
public interface Prover
-
Nested Class Summary
Nested Classes -
Method Summary
Modifier and TypeMethodDescriptionvoid
assertBelief
(Term belief) Adds a single belief to the Belief State of the agent.void
assertBelief
(String belief) Assert belief to prover.void
assertRule
(Term head, List<Term> body) void
assertRule
(String rule) Add rule to prover.Get the theory representation in its source formatGet the theory representation as a string in target language format.void
initializeFromFiles
(List<String> filenames) initialize the knowledge base from a filequeryBelief
(Term query) Queries the Belief State about the term in the argument, and a set of bindings corresponding to all of the found answers.querySupport
(Term query) checks validity of a belief.querySupportWithExplanation
(Term query) checks validity of a belief, with an explanation from spy.void
retractBelief
(Term belief) Removes a single belief from the Belief State of the agent.void
retractBelief
(String belief) Retract belief from prover.void
retractRule
(Term head, List<Term> body) remove the specified rulevoid
retractRule
(String rule) Retract rule from prover.Convert DIARC FOL Term to appropriate prover syntax.boolean
Set the theory (aka beliefs aka assumptions).
-
Method Details
-
querySupport
checks validity of a belief.- Parameters:
query
- The query / belief- Returns:
- whether the belief holds
-
querySupportWithExplanation
org.apache.commons.lang3.tuple.Pair<Boolean,Map<Term, querySupportWithExplanationBoolean>> (Term query) checks validity of a belief, with an explanation from spy.- Parameters:
query
- The query / belief- Returns:
- whether the belief holds
-
queryBelief
Queries the Belief State about the term in the argument, and a set of bindings corresponding to all of the found answers.- Parameters:
query
- : a query in Term format- Returns:
- an ArrayList of bindings: here represented as a HashMap from Variables to Symbols
-
assertBelief
Adds a single belief to the Belief State of the agent. Note: new beliefs are added such that they take priority in unification to old beliefs. queryBelief() will still return all asserted and inferred bindings.- Parameters:
belief
-
-
retractBelief
Removes a single belief from the Belief State of the agent.- Parameters:
belief
-
-
assertRule
- Parameters:
head
-body
-
-
retractRule
remove the specified rule -
initializeFromFiles
initialize the knowledge base from a file- Throws:
IOException
-
getTheory
String getTheory()Get the theory representation as a string in target language format. Returned string depends on prover implementation.- Returns:
- internal theory representation
-
getInternalTheory
Object getInternalTheory()Get the theory representation in its source format- Returns:
- internal theory representation
-
setTheory
Set the theory (aka beliefs aka assumptions).- Returns:
- true if theory was set successfully
-
assertBelief
Assert belief to prover.- Parameters:
belief
-
-
retractBelief
Retract belief from prover.- Parameters:
belief
-
-
assertRule
Add rule to prover.- Parameters:
rule
-
-
retractRule
Retract rule from prover.- Parameters:
rule
-
-
sanitize
Convert DIARC FOL Term to appropriate prover syntax. TODO: consolidate all code related to converting FOL to/from Prover and replace this method with two new methods (1) convertToProverForm and (2) convertToDiarcForm- Parameters:
term
-- Returns:
-