diff options
Diffstat (limited to 'prolog/problems/family_relations/ancestor_2/common.py')
-rw-r--r-- | prolog/problems/family_relations/ancestor_2/common.py | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/prolog/problems/family_relations/ancestor_2/common.py b/prolog/problems/family_relations/ancestor_2/common.py index 2353eab..a7c491d 100644 --- a/prolog/problems/family_relations/ancestor_2/common.py +++ b/prolog/problems/family_relations/ancestor_2/common.py @@ -31,6 +31,7 @@ hint_type = { 'descendant_need_not_be_parent': Hint('descendant_need_not_be_parent'), 'wrong_direction': Hint('wrong_direction'), 'only_two_levels_deep': Hint('only_two_levels_deep'), + 'predicate_always_false': Hint('predicate_always_false'), 'timeout': Hint('timeout'), } @@ -84,6 +85,10 @@ def hint(code, aux_code): return [{'id': 'grandparent_used_markup', 'start': m[0], 'end': m[1]} for m in marks] + \ [{'id': 'grandparent_used'}] + # target predicate seems to always be false + if not prolog.engine.ask_truthTO(engine_id, 'ancestor(_, _)'): + return [{'id': 'predicate_always_false'}] + # descendant instead of ancestor (wrong direction) # warning: knowledge base dependent if prolog.engine.ask_truthTO(engine_id, |