license:apache-2.0 region:us
---
license: apache-2.0
---

# Dataset Card for "Calc-math_qa"


## Summary

This dataset is an instance of math_qa dataset, converted to a simple HTML-like language that can be easily parsed (e.g. by BeautifulSoup). The data contains 3 types of tags:
- gadget: A tag whose content is intended to be evaluated by calling an external tool (sympy-based calculator in this case)
- output: An output of the external tool
- result: The final answer of the mathematical problem (a number)


## Supported Tasks

The dataset is intended for training Chain-of-Thought reasoning **models able to use external tools** to enhance the factuality of their responses.
This dataset presents in-context scenarios where models can outsource the computations in the reasoning chain to a calculator.


## Construction Process

We took the original math_qa dataset, parsed the nested formulas, linearized them into a sequence (chain) of operations, and replace all advanced
function calls (such as `circle_area`) with explicit elementary operations. We evaluate all the steps in each example and filter out examples if their
evaluation does not match the answer selected as correct in the data with a 5% tolerance. The sequence of steps is then saved in HTML-like language
in the `chain` column. We keep the original columns in the dataset for convenience.


## Content and Data splits

Content and splits correspond to the original math_qa dataset.
See [mathqa HF dataset](https://huggingface.co/datasets/math_qa) and [official website](https://math-qa.github.io/) for more info.

Columns:

- `problem` - description of a mathematical problem in natural language
- `options` - dictionary with choices 'a' to 'e' as possible solutions
- `correct` - correct answer, one of 'a', ..., 'e'
- `rationale` - human-annotated free-text reasoning that leads to the correct answer
- `annotated_formula` - human-annotated nested expression that (approximately) evaluates to the selected correct answer
- `linear_formula` - same as `annotated_formula`, but linearized. Provided by original math_qa authors
- `chain` - linearized `annotated_formula`, provided by us. Converted to HTML-like language with expressions that can be evaluated using our sympy-based calculator
- `index` - index of the example in the original math_qa dataset
- `options_float` - same as 'options', but with simple parsing and evaluation applied to convert options to float. This is best-effort only - not all values are (or can be) extracted correctly



## Licence

Apache 2.0, consistently with the original dataset.


