private void execAllFastCore(final Query q, final ResultBinding binding, final Collection<ATermAppl> distVars, final Collection<ATermAppl> undistVars) { if (distVars.isEmpty()) exec(binding); else { final ATermAppl var = distVars.iterator().next(); distVars.remove(var); final Map<ATermAppl, Boolean> instances = fastPrune(q, var); for (final Entry<ATermAppl, Boolean> entry : instances.entrySet()) { final ATermAppl b = entry.getKey(); final ResultBinding newBinding = binding.duplicate(); newBinding.setValue(var, b); final Query q2 = q.apply(newBinding); if (entry.getValue() || QueryEngine.execBooleanABoxQuery(q2)) execAllFastCore(q2, newBinding, distVars, undistVars); } distVars.add(var); } }
private void execAllFastCore(final Query q, final ResultBinding binding, final Collection<ATermAppl> distVars, final Collection<ATermAppl> undistVars) { if (distVars.isEmpty()) exec(binding); else { final ATermAppl var = distVars.iterator().next(); distVars.remove(var); final Map<ATermAppl, Boolean> instances = fastPrune(q, var); for (final Entry<ATermAppl, Boolean> entry : instances.entrySet()) { final ATermAppl b = entry.getKey(); final ResultBinding newBinding = binding.duplicate(); newBinding.setValue(var, b); final Query q2 = q.apply(newBinding); if (entry.getValue() || QueryEngine.execBooleanABoxQuery(q2)) execAllFastCore(q2, newBinding, distVars, undistVars); } distVars.add(var); } }
private void execAllFastCore(final Query q, final ResultBinding binding, final Collection<ATermAppl> distVars, final Collection<ATermAppl> undistVars) { if (distVars.isEmpty()) exec(binding); else { final ATermAppl var = distVars.iterator().next(); distVars.remove(var); final Map<ATermAppl, Boolean> instances = fastPrune(q, var); for (final Entry<ATermAppl, Boolean> entry : instances.entrySet()) { final ATermAppl b = entry.getKey(); final ResultBinding newBinding = binding.duplicate(); newBinding.setValue(var, b); final Query q2 = q.apply(newBinding); if (entry.getValue() || QueryEngine.execBooleanABoxQuery(q2)) execAllFastCore(q2, newBinding, distVars, undistVars); } distVars.add(var); } }
private static void testABoxQuery(final boolean expected, final Query query) { assertEquals(expected, QueryEngine.execBooleanABoxQuery(query)); }
if (QueryEngine.execBooleanABoxQuery(q.apply(mappy))) exec(mappy); if (QueryEngine.execBooleanABoxQuery(q.apply(candidate))) exec(candidate);
if (QueryEngine.execBooleanABoxQuery(q.apply(mappy))) exec(mappy); if (QueryEngine.execBooleanABoxQuery(q.apply(candidate))) exec(candidate);
if (QueryEngine.execBooleanABoxQuery(q.apply(mappy))) exec(mappy); if (QueryEngine.execBooleanABoxQuery(q.apply(candidate))) exec(candidate);
if (QueryEngine.execBooleanABoxQuery(q)) results.add(new ResultBindingImpl()); final boolean queryTrue = QueryEngine.execBooleanABoxQuery(q.apply(bindingCandidate)); if (queryTrue)
if (QueryEngine.execBooleanABoxQuery(q)) results.add(new ResultBindingImpl()); final boolean queryTrue = QueryEngine.execBooleanABoxQuery(q.apply(bindingCandidate)); if (queryTrue)
if (QueryEngine.execBooleanABoxQuery(q)) results.add(new ResultBindingImpl()); final boolean queryTrue = QueryEngine.execBooleanABoxQuery(q.apply(bindingCandidate)); if (queryTrue)
if (QueryEngine.execBooleanABoxQuery(q)) results.add(new ResultBindingImpl()); final boolean queryTrue = QueryEngine.execBooleanABoxQuery(q.apply(mappy)); if (queryTrue) results.add(mappy); final boolean queryTrue = q.getDistVarsForType(VarType.INDIVIDUAL).size() == 1 || QueryEngine.execBooleanABoxQuery(q.apply(b)); if (queryTrue) results.add(b);
if (QueryEngine.execBooleanABoxQuery(q)) results.add(new ResultBindingImpl()); final boolean queryTrue = QueryEngine.execBooleanABoxQuery(q.apply(mappy)); if (queryTrue) results.add(mappy); final boolean queryTrue = q.getDistVarsForType(VarType.INDIVIDUAL).size() == 1 || QueryEngine.execBooleanABoxQuery(q.apply(b)); if (queryTrue) results.add(b);
if (QueryEngine.execBooleanABoxQuery(q)) results.add(new ResultBindingImpl()); final boolean queryTrue = QueryEngine.execBooleanABoxQuery(q.apply(mappy)); if (queryTrue) results.add(mappy); final boolean queryTrue = q.getDistVarsForType(VarType.INDIVIDUAL).size() == 1 || QueryEngine.execBooleanABoxQuery(q.apply(b)); if (queryTrue) results.add(b);
if (constants.isEmpty()) if (QueryEngine.execBooleanABoxQuery(core.getQuery())) _result.add(binding);
if (constants.isEmpty()) if (QueryEngine.execBooleanABoxQuery(core.getQuery())) _result.add(binding);
if (constants.isEmpty()) if (QueryEngine.execBooleanABoxQuery(core.getQuery())) _result.add(binding);