public abstract class AbstractFeatureStrategy extends StaticFeatureCollection implements Strategy
Modifier and Type | Field and Description |
---|---|
private BackTrackingManager |
btManager |
private boolean |
instantiateActive |
private Proof |
proof |
Modifier | Constructor and Description |
---|---|
protected |
AbstractFeatureStrategy(Proof proof) |
Modifier and Type | Method and Description |
---|---|
protected void |
bindRuleSet(RuleSetDispatchFeature d,
RuleSet ruleSet,
Feature f) |
protected void |
bindRuleSet(RuleSetDispatchFeature d,
RuleSet ruleSet,
long cost) |
protected void |
bindRuleSet(RuleSetDispatchFeature d,
java.lang.String ruleSet,
Feature f) |
protected void |
bindRuleSet(RuleSetDispatchFeature d,
java.lang.String ruleSet,
long cost) |
protected void |
clearRuleSetBindings(RuleSetDispatchFeature d,
RuleSet ruleSet) |
protected void |
clearRuleSetBindings(RuleSetDispatchFeature d,
java.lang.String ruleSet) |
protected void |
disableInstantiate() |
protected void |
enableInstantiate() |
protected Feature |
forEach(TermBuffer x,
TermGenerator gen,
Feature body) |
protected TacletFilter |
getFilterFor(java.lang.String[] p_names) |
protected RuleSet |
getHeuristic(java.lang.String p_name) |
protected Proof |
getProof() |
protected Feature |
ifHeuristics(java.lang.String[] heuristics,
Feature thenFeature) |
protected Feature |
ifHeuristics(java.lang.String[] heuristics,
Feature thenFeature,
Feature elseFeature) |
protected Feature |
ifHeuristics(java.lang.String[] names,
int priority) |
protected Feature |
instantiate(Name sv,
ProjectionToTerm value) |
protected Feature |
instantiate(java.lang.String sv,
ProjectionToTerm value) |
protected abstract RuleAppCost |
instantiateApp(RuleApp app,
PosInOccurrence pio,
Goal goal) |
void |
instantiateApp(RuleApp app,
PosInOccurrence pio,
Goal goal,
RuleAppCostCollector collector)
Instantiate an incomplete
RuleApp . |
protected Feature |
instantiateTriggeredVariable(ProjectionToTerm value) |
protected Feature |
oneOf(Feature[] features) |
protected Feature |
oneOf(Feature feature0,
Feature feature1) |
add, add, add, add, add, any, applyTF, applyTF, applyTFNonStrict, applyTFNonStrict, atomSmallerThan, blockContractExternalFeature, blockContractInternalFeature, c, contains, countOccurrences, eq, eq, eq, extendsTrans, ifZero, ifZero, ifZero, ifZero, implicitCastNecessary, inftyConst, inftyTermConst, instOf, instOfNonStrict, instOfTriggerVariable, isInstantiated, isSubSortFeature, isTriggerVariableInstantiated, leq, less, let, literalsSmallerThan, longConst, longTermConst, loopContractApplyHead, loopContractExternalFeature, loopContractInternalFeature, loopInvFeature, mergeRuleFeature, methodSpecFeature, monSmallerThan, not, not, op, opSub, opSub, opTerm, opTerm, opTerm, or, or, or, or, or, println, querySpecFeature, rec, sequentContainsNoPrograms, sub, sub, sub, subAt, sum, termSmallerThan
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
isApprovedApp, isStopAtFirstNonCloseableGoal, updateStrategySettings
computeCost
private final Proof proof
private final BackTrackingManager btManager
private boolean instantiateActive
protected AbstractFeatureStrategy(Proof proof)
protected Proof getProof()
protected Feature ifHeuristics(java.lang.String[] heuristics, Feature thenFeature)
heuristics
- thenFeature
- protected Feature ifHeuristics(java.lang.String[] heuristics, Feature thenFeature, Feature elseFeature)
protected Feature ifHeuristics(java.lang.String[] names, int priority)
protected TacletFilter getFilterFor(java.lang.String[] p_names)
protected RuleSet getHeuristic(java.lang.String p_name)
protected void bindRuleSet(RuleSetDispatchFeature d, RuleSet ruleSet, Feature f)
protected void bindRuleSet(RuleSetDispatchFeature d, RuleSet ruleSet, long cost)
protected void bindRuleSet(RuleSetDispatchFeature d, java.lang.String ruleSet, Feature f)
protected void bindRuleSet(RuleSetDispatchFeature d, java.lang.String ruleSet, long cost)
protected void clearRuleSetBindings(RuleSetDispatchFeature d, RuleSet ruleSet)
protected void clearRuleSetBindings(RuleSetDispatchFeature d, java.lang.String ruleSet)
public void instantiateApp(RuleApp app, PosInOccurrence pio, Goal goal, RuleAppCostCollector collector)
Strategy
RuleApp
. This method is
called when the AutomatedRuleApplicationManager
comes across a rule application in which some schema variables
are not yet instantiated, or which is in some other way
incomplete. The strategy then has the opportunity to
return/provide a list of (more) complete rule applications by
feeding them into the provided
RuleAppCostCollector
.instantiateApp
in interface Strategy
protected abstract RuleAppCost instantiateApp(RuleApp app, PosInOccurrence pio, Goal goal)
protected Feature forEach(TermBuffer x, TermGenerator gen, Feature body)
protected void enableInstantiate()
protected void disableInstantiate()
protected Feature instantiate(Name sv, ProjectionToTerm value)
protected Feature instantiateTriggeredVariable(ProjectionToTerm value)
protected Feature instantiate(java.lang.String sv, ProjectionToTerm value)