/** * Return the _current _binding up through and including the <code>max</code> element of the pattern chain. * * @param max * @return */ private VariableBinding getBinding(final int max) { final VariableBinding newBinding = new VariableBinding(_initialBinding); for (int i = 0; i <= max; i++) _helperChain[i].setCurrentBinding(newBinding); return newBinding; }
public Individual set(final AtomIVariable key, final ATermAppl value) { final AtomIConstant constant = new AtomIConstant(value); final IndividualValueCollector collector = new IndividualValueCollector(); constant.accept(collector); return set(key, collector.getValue()); }
public ContinuousRulesStrategy(final ABox abox) { super(abox); _bindingStrategy = new BindingGeneratorStrategyImpl(abox); _partialBindings = new ConcurrentLinkedQueue<>(); _unsafeRules = new HashSet<>(); _rulesApplied = new HashMap<>(); _atermTranslator = new RulesToATermTranslator(); _ruleAtomAsserter = new RuleAtomAsserter(); _atomTester = new TrivialSatisfactionHelpers(abox); }
public DependencySet isAtomTrue(final RuleAtom atom, final VariableBinding binding) { final HeadAtomVisitor visitor = new HeadAtomVisitor(); atom.accept(visitor); final BindingTester tester = visitor.getTester(); return tester == null ? null : tester.check(binding); } }
@Override public Collection<? extends AtomVariable> getPrerequisiteVars(final Collection<AtomVariable> bound) { return VariableUtils.getVars(_atom); }
@Override public void setCurrentBinding(final VariableBinding currentBinding) { currentBinding.set(_head, _value); }
/** * Checks if a rule can be used for reasoning. * * @param rule rule to check * @return <code>true</code> if rule can be used for reasoning */ public static boolean isUsable(final Rule rule) { return explainNotUsable(rule) == null; }
@Override public Iterator<VariableBinding> iterator() { return new BindingIterator(); }
public ATermAppl translate(final Rule rule) { _term = null; visit(rule); return _term; }
@Override public String toString() { return "notClass(" + getArg() + ":" + _c + ")"; }
/** * Return the _current _binding up through and including the <code>max</code> element of the pattern chain. * * @param max * @return */ private VariableBinding getBinding(final int max) { final VariableBinding newBinding = new VariableBinding(_initialBinding); for (int i = 0; i <= max; i++) _helperChain[i].setCurrentBinding(newBinding); return newBinding; }
@Override public Collection<AtomVariable> getPrerequisiteVars(final Collection<AtomVariable> bound) { return VariableUtils.getVars(_atom); }
@Override public void setCurrentBinding(final VariableBinding currentBinding) { currentBinding.set(_var, _currentIndividual); }
@Override public Collection<AtomVariable> getBindableVars(final Collection<AtomVariable> bound) { return VariableUtils.getVars(_pattern); }