diff options
Diffstat (limited to 'prolog/problems/lists/conc_3/common.py')
-rw-r--r-- | prolog/problems/lists/conc_3/common.py | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/prolog/problems/lists/conc_3/common.py b/prolog/problems/lists/conc_3/common.py index 105f801..58152a6 100644 --- a/prolog/problems/lists/conc_3/common.py +++ b/prolog/problems/lists/conc_3/common.py @@ -30,6 +30,7 @@ hint_type = { 'two_heads_markup': HintPopup('two_heads_markup'), 'two_heads': Hint('two_heads'), 'insertion_into_second_list': Hint('insertion_into_second_list'), + 'base_case_arbitrary': Hint('base_case_arbitrary'), } test_cases = [ @@ -107,6 +108,10 @@ def hint(code, aux_code): return [{'id': 'two_heads_markup', 'start': m[0], 'end': m[1]} for m in marks] + \ [{'id': 'two_heads'}] + # base case succeeds with arbitrary result + if prolog.engine.ask_truthTO(engine_id, 'conc([], [a,b,c], L), var(L)'): + return [{'id': 'base_case_arbitrary'}] + # missing/failed base case if not prolog.engine.ask_one(engine_id, 'conc([], [qa,qb,qc], [qa,qb,qc])'): return [{'id': 'base_case'}] |