Skip to content

task_charts__multiseries__pair_equality_label

Contract

  • Domain: charts
  • Scene id: multiseries
  • Query id: single
  • Answer schema: string_label
  • Annotation schema: point_map
  • Program contract: select_unique(categories, value(series_a) == value(series_b))

Program Contract

Program: select_label(unique(category where value(category, series_a) == value(category, series_b))); output=string_label; annotation=point_map(mark_center(answer_category, {series_a,series_b})); scene=multiseries; scope=pair_equality_label

Candidate set: the visible series marks across shared x/category labels inside the pair_equality_label objective scope. Operands: prompt-bound labels, categories, series names, thresholds, intervals, references, and encoded chart values, plus the task's prompt-bound target operands when present. Operation: evaluate select_label over the candidate set using the filters, comparisons, aggregations, rankings, projections, or counterfactual edits named in the program expression; generation enforces a unique final answer. Output binding: answer is the unspecified value bound by string_label. Annotation witnesses: unspecified witnesses bound by point_map(mark_center(answer_category, {series_a,series_b})). The Annotation Contract below defines the prompt-facing witnesses. Query ids: single.

Reasoning Operations

Families: comparison, matching

Implementation

  • Source: src/trace_tasks/tasks/charts/multiseries/pair_equality_label.py
  • Class: ChartsMultiseriesPairEqualityLabelTask
  • Prompt bundle: src/trace_tasks/resources/prompts/charts/multiseries/charts_multiseries_v1.json

Annotation

Annotate the two queried series marks in the answer category using keys of the form <category>:<series>.