task_symbolic__abacus__target_value_match_label¶
1) Identity¶
- Domain:
symbolic - Scene id:
abacus - Task id:
task_symbolic__abacus__target_value_match_label - Objective: select the labeled abacus option whose bead positions represent the target integer named in the prompt.
Program Contract¶
Program: selection.option_match(scene=abacus, scope=six_abacus_options, rule=target_value_equal_displayed_abacus_value, output=option_letter)
Candidate set: the six visible abacus option cards labeled A..F.
Operands: the prompt target integer and the value represented by each option's three-column soroban-style abacus.
Operation: compute every option value from its bead states and select the unique option whose value equals the prompt target.
Output binding: answer is the selected option letter.
Annotation witnesses: the scalar bbox of the selected option card.
Query ids: single.
Reasoning Operations¶
Families: formula_evaluation, matching
2) Scene + Task Contract¶
- Supported public
query_idvalues:single answer_gt.type:option_letter- Annotation schema:
bbox annotation_gt.type:bbox- Non-semantic visual axes:
scene_variant=clean_card|wood_frame|worksheet, plus shared symbolic background/noise. - Scene contract:
- exactly six visual option cards labeled
A..F, - each option card contains one compact three-column soroban-style abacus with columns labeled
100,10, and1, - each abacus column has one upper bead worth
5and four lower beads worth1, - the target value appears in the prompt, not as target text inside the image,
- exactly one option represents the target value,
- target value support is
0..999.
3) Prompt Contract¶
- Bundle:
symbolic_abacus_v1 scene_key:abacustask_key:abacus_target_value_match_query- Required task slot:
question_text - Prompt-facing answer is the single matching option label.
4) Annotation + Trace Contract¶
- Annotation is the scalar pixel-space bounding box
[x0,y0,x1,y1]around the selected option card. - Annotating the selected option card is allowed because this is a visual option-panel task.
- Option cards are non-overlapping and arranged in fixed row-major order.
- Answer and annotation are bound from the same finalized option record.
5) Tests¶
- Behavior/trace/prompt tests:
tests/test_symbolic_abacus_tasks.py - Prompt/config tests:
tests/test_prompt_system.py,tests/test_symbolic_core_scene_config.py - Source-layout contract tests:
tests/test_public_source_layout_contracts.py