Paper deep dive
MetaReason: Precise Interleaved Multimodal Reasoning via Editing Meta Information for Solving Geometry Problems
Penghao Yin, Haomin Wang, Qihong Tang, Xiaoye Qu, Hongjie Zhang, Xiao-Ping Zhang
Intelligence
Status: succeeded | Model: Gemma-4-26B-A4B | Prompt: intel-v1 | Confidence: 92%
Last extracted: 8/18/2026, 5:09:25 AM
Summary
The paper introduces MetaReason, a framework for precise multimodal reasoning in plane geometry that utilizes structured meta-information (JSON) to enable accurate auxiliary-line construction. It addresses limitations of existing vision-language models by parsing geometric images into meta-information, verifying it, and using a toolbox to draw auxiliary lines iteratively. The authors also present TutorGeo, a large-scale dataset for training, and ExamGeo, a benchmark for evaluation, demonstrating significant performance improvements over existing models.
Entities (10)
Relation Signals (9)
MetaReason â evaluatedon â ExamGeo
confidence 95% ¡ We also introduce ExamGeo... Experimental results demonstrate that MetaReason significantly outperforms existing open-source models
MetaReason â trainedon â TutorGeo
confidence 95% ¡ Using this dataset [TutorGeo], we combine supervised fine-tuning and reinforcement learning to develop robust multimodal reasoning capabilities.
MetaReason â uses â MetaReasoner
confidence 95% ¡ MetaReason is composed of 3 models, MetaConverter, MetaJudge, and MetaReasoner.
MetaReason â uses â MetaConverter
confidence 95% ¡ MetaReason is composed of 3 models, MetaConverter, MetaJudge, and MetaReasoner.
MetaReason â uses â MetaJudge
confidence 95% ¡ MetaReason is composed of 3 models, MetaConverter, MetaJudge, and MetaReasoner.
MetaReasoner â optimizedby â GRPO
confidence 90% ¡ we further optimize MetaReasoner using the GRPO algorithm
MetaReasoner â usesasrewardmodel â Qwen3-VL-8B-Instruct
confidence 90% ¡ We utilize Qwen3-VL-8B-Instruct as the reward model to evaluate the generated trajectories.
MetaReason â outperforms â GeoQA
confidence 85% ¡ MetaReason establishes new state-of-the-art performance among similarly sized models on prior benchmarks like GeoQA
Cypher Suggestions (0)
No Cypher suggestions yet.
Abstract
Abstract:Although visual reasoning is crucial for solving complex geometry tasks, existing vision-language models rely heavily on text-only reasoning. Some recent methods introduce intermediate visual states to facilitate reasoning, but they are often hindered by inaccurate geometric representations and low rendering fidelity, ultimately leading to unreliable outputs. To address these limitations, we propose MetaReason, a framework for multimodal reasoning in plane geometry that leverages structured meta-information to enable accurate auxiliary-line construction. The framework first parses geometric images into meta-information, performs controllable edits with predefined tools to synthesize high-fidelity visual states, and then conducts reasoning based on these augmented views. To support this framework, we construct TutorGeo, a comprehensive dataset containing 17k image-to-meta conversion samples, 60k text-only reasoning traces, and 60k interleaved multimodal reasoning traces. Using this dataset, we combine supervised fine-tuning and reinforcement learning to develop robust multimodal reasoning capabilities. We also introduce ExamGeo, a benchmark derived from real-world examination problems that enables systematic evaluation across varying difficulty levels. Experimental results demonstrate that MetaReason significantly outperforms existing open-source models and achieves competitive performance against proprietary models.
Tags
Links
- Source: https://arxiv.org/abs/2608.15006v1
- Canonical: https://arxiv.org/abs/2608.15006v1
Trouble viewing inline? Open PDF directly â
Full Text
81,534 characters extracted from source content.
Expand or collapse full text
MetaReason: Precise Interleaved Multimodal Reasoning via Editing Meta Information for Solving Geometry Problems Penghao Yin 1,2 , Haomin Wang 3,2 , Qihong Tang 4 , Xiaoye Qu 2 , Hongjie Zhang 2 , Xiao-Ping Zhang 1â 1 Tsinghua University 2 Shanghai AI Laboratory 3 Shanghai Jiao Tong University 4 Nanjing University phyin2024@gmail.com Abstract Although visual reasoning is crucial for solving complex ge- ometry tasks, existing vision-language models rely heavily on text-only reasoning. Some recent methods introduce inter- mediate visual states to facilitate reasoning, but they are of- ten hindered by inaccurate geometric representations and low rendering fidelity, ultimately leading to unreliable outputs. To address these limitations, we propose MetaReason, a frame- work for multimodal reasoning in plane geometry that lever- ages structured meta-information to enable accurate auxiliary- line construction. The framework first parses geometric im- ages into meta-information, performs controllable edits with predefined tools to synthesize high-fidelity visual states, and then conducts reasoning based on these augmented views. To support this framework, we construct TutorGeo, a com- prehensive dataset containing 17k image-to-meta conversion samples, 60k text-only reasoning traces, and 60k interleaved multimodal reasoning traces. Using this dataset, we combine supervised fine-tuning and reinforcement learning to develop robust multimodal reasoning capabilities. We also introduce ExamGeo, a benchmark derived from real-world examina- tion problems that enables systematic evaluation across vary- ing difficulty levels. Experimental results demonstrate that MetaReason significantly outperforms existing open-source models and achieves competitive performance against propri- etary models. Project â https://github.com/PenghaoYin/MetaReason 1 Introduction Although vision language models (Hurst et al. 2024; Chen et al. 2024; Bai et al. 2025b,a; Zhu et al. 2025; Wang et al. 2025c) have made remarkable progress in general visual understanding, planar geometry reasoning remains a major challenge due to its reliance on fine-grained spatial percep- tion and multi-step reasoning. Human experts often simplify such problems by constructing auxiliary lines, which make latent geometric relationships explicit and provide helpful in- termediate visual structures for reasoning. In contrast, current models (OpenAI 2025; Anthropic 2026; Google DeepMind 2026; Zhu et al. 2025; Bai et al. 2025a) are largely restricted to text-only reasoning, which makes it difficult to explicitly â Corresponding author. CodePlot-CoT Misaligned Right-Angle Mark Skewed Perpendicular Misaligned Point MetaReason (Ours) Accurate Perpendicular Aligned Points BAGEL-Canvas Misplaced Perpendicular Foot Input Figure 1: Comparison of auxiliary-line construction quality. Existing methods often suffer from low rendering fidelity or violate geometric constraints, while MetaReason preserves geometric relations and generate accurate diagrams. represent intermediate visual structures and often limits their performance on complex geometry tasks. Imitating human experts, recent studies have explored in- terleaved multimodal reasoning by inserting images with auxiliary lines into the reasoning process (Su et al. 2025b,a; Fan et al. 2025; Wu et al. 2025; Hu et al. 2024; Duan et al. 2025; Li et al. 2025; Shi et al. 2025; Wang et al. 2025b). Exist- ing methods mainly follow two approaches, inluding code- based tool use and unified-model-based generation. Code- based methods, such as VisualSketchPad (Hu et al. 2024) and CodePlot-CoT (Duan et al. 2025), redraw the diagram from scratch whenever auxiliary lines are needed. Since each drawing step requires a complete program, these methods in- troduce substantial context overhead and may produce inac- curate constructions. Unified models, such as Zebra-CoT (Li et al. 2025) and MathCanvas (Shi et al. 2025), are trained on interleaved image-text data and generate intermediate fig- ures directly. However, current image-generation models still have difficulty preserving precise geometric relations (Deng et al. 2025; Team 2024; Wang et al. 2025d). As shown in Fig. 1, both approaches can produce misaligned points and auxiliary lines. These limitations motivate an auxiliary-line construction method with concise instructions that does not rely on image-generation models. Unlike photographs captured by cameras, geometric fig- ures are inherently structured compositions of elements (points) and their relationships (shapes, like segments and circles). From this perspective, drawing auxiliary lines can be viewed as adding new elements or relations to an existing ge- ometric structure. Instead of operating in pixel space or com- plex code space, we represent geometric figures with meta- arXiv:2608.15006v1 [cs.CV] 15 Aug 2026 information and construct auxiliary lines by modifying this representation. Specifically, the meta-information is a JSON- formatted structure consisting of points and shapes, with details illustrated in the Appendix. Each meta-information instance can be deterministically rendered into a geometric figure by a predefined program. To constrain the reasoning modelâs action space and ensure valid auxiliary-line con- struction, we define a toolbox that covers three common oper- ations in geometry problem solving: drawing line segments, constructing intersection points, and drawing perpendicular lines. During inference, the model can invoke these tools by emitting commands wrapped in <tool_call> tags. Following the analysis and preparatory work, we pro- pose MetaReason, a unified pipeline for planar geometry resolution featuring three core modules: MetaConverter, MetaJudge, and MetaReasoner. Addressing the intractable search space of auxiliary-line construction, we employ a two- stage training paradigm combining supervised fine-tuning and reinforcement learning. By designing a dedicated ge- ometry reward mechanism, we guide the model to learn the optimal tool-calling policy within a large action space. To facilitate robust training and evaluation, we introduce a large-scale planar geometry dataset, TutorGeo, alongside a challenging benchmark, ExamGeo. TutorGeo comprises 137k high-quality instances, evenly split between multimodal and text-only reasoning trajectories. These trajectories are meticulously reconstructed using state-of-the-art VLMs and subsequently validated by human experts to ensure rigor- ous logical consistency. Furthermore, ExamGeo contains 1,000 challenging problems spanning four difficulty levels defined by human expert success rates. Extensive experi- ments demonstrate that MetaReason achieves 56.1% accu- racy on ExamGeo, representing a 43.0% absolute improve- ment over the base model and significantly outperforming both leading open-source models and several advanced pro- prietary models. Additionally, MetaReason establishes new state-of-the-art performance among similarly sized models on prior benchmarks like GeoQA (Chen et al. 2021) and Ge- oLaux (Fu et al. 2025). The main contributions of this paper are as follows: (1) We propose MetaReason, a visual interleaved reason- ing framework based on meta-information editing, which re- places costly image or code generation with lightweight tool invocation for precise auxiliary-line construction in planar geometry. (2) We introduce TutorGeo, a large-scale and high-quality training set for planar geometry reasoning, and ExamGeo, a challenging benchmark with fine-grained difficulty levels defined by human expert success rates. (3) We introduce a two-stage training paradigm that combines supervised fine-tuning and reinforcement, en- abling MetaReason to master tool-augmented reasoning for complex geometry problems. (4) Extensive experiments demonstrate the effectiveness of MetaReason, which consistently outperforms strong base- lines in planar geometry reasoning. 2 Related Works 2.1 Datasets and Benchmarks for Multimodal Geometry Problem Solving With the rapid advancement of VLMs (Bai et al. 2025b,a; Zhu et al. 2025; Wang et al. 2025c; Anthropic 2026; Google 2025; Chen et al. 2024), a series of multimodal reasoning benchmarks have been proposed to evaluate mathematical reasoning. Early works such as Geometry3K (Lu et al. 2021) and GeoQA (Chen et al. 2021) established foundational set- tings for multimodal geometry understanding and reason- ing. More recent benchmarks, including MMMU (Yue et al. 2024), MathVista (Lu et al. 2023), Math-Vision (Wang et al. 2024), and MathVerse (Zhang et al. 2024), further broad- ened the evaluation scope by covering diverse mathematical problems with rich visual contexts. GeoLaux (Fu et al. 2025) takes a step further toward more challenging geometry rea- soning by introducing problems that require auxiliary-line construction and long-horizon deduction. Nevertheless, existing benchmarks remain inadequate for systematically evaluating plane geometry reasoning. Gen- eral multimodal math benchmarks, such as MMMU, Math- Vista, Math-Vision, and MathVerse, contain only a limited proportion of plane geometry problems and are not specifi- cally designed for this setting. Meanwhile, geometry-specific benchmarks such as Geometry3K and GeoQA mostly in- volve relatively straightforward problems and rarely require auxiliary-line construction, limiting their ability to distin- guish advanced geometric reasoning. These limitations mo- tivate the development of a dedicated benchmark for plane geometry problem solving, particularly one centered on rea- soning through auxiliary-line construction. 2.2 Visual Reasoning for Mathematical Geometry Problem Solving Some recent works introduce intermediate visual states through lightweight operations such as cropping, bounding boxes, and zooming. OpenAI o3 (OpenAI 2025) can crop and transform images during reasoning. Chain-of-Focus (Zhang et al. 2025a) performs adaptive focusing and zooming on key regions. DeepEyes (Zheng et al. 2025) improves fine-grained understanding through active grounding and localized obser- vation. Point-RFT (Ni et al. 2025) incorporates point-based grounding into the chain of thought. MINT-CoT (Chen et al. 2025) further aligns visual regions with individual reasoning steps. While these methods help alleviate issues such as lim- ited visibility and insufficient attention, they still operate by re-examining and re-annotating existing images rather than constructing new intermediate visual states. Consequently, they are fundamentally limited in tasks that require new vi- sual structures to explicitly reveal implicit geometric rela- tionships. More recently, several approaches have attempted to ex- plicitly construct auxiliary lines as intermediate visual states for reasoning. Existing methods primarily employ two ap- proaches to construct such images: code-based tool use and unified-model-based generation. The first approach uses ex- ternal tools to render auxiliary lines by generating executable plotting code, as in Visual Sketchpad (Hu et al. 2024) and As shown in the figure, in the rhombus ABCD, â ABC = 60°, point E is the midpoint of AB, and point P moves along diagonal BD. If PE + PA = 3 , then the maximum length of AB is ______. MetaJudge Meta-Information "points": "A": [200, 346.41], "B": [0, 0], ......, "shapes": [ "type": "segment", "points": ["A", "B"], "style": "solid" , ......] MetaReasoner Question MetaConverter <think>We introduce auxiliary lines: connect CE, CP, AC.</think> <tool_call>geometry.draw_segment("C", "E") geometry.draw_segment("C", "P") geometry.draw_segment("A", "C")</tool_call> Tool Box Segment Intersection Point perpendicular Multimodal Reasoning Text-only Reasoning <think>Let the side length of rhombus ABCD be s. Place the figure in a coordinate system where B = (0, 0), C = (s, 0)......</think> <answer>2</answer> <think>As quadrilateral ABCD is a rhombus, AB = BC, BD bisects AC perpendicularly. We can infer that AP = PC ......</think> <answer>2</answer> Rendered Image Meta-Info Correct Meta-Info Incorrect Figure 2: Overview of the MetaReason Framework. The geometric question is first converted to meta-information by Meta- Converter, followed by rationality verification via MetaJudge. If reasonable, MetaReasoner implements interleaved multimodal reasoning with a pre-defined toolbox. Otherwise, it falls back to text-only reasoning. CodePlot-CoT (Duan et al. 2025). Although more expres- sive, these methods depend heavily on the modelâs coding ability and execution reliability, and they require generating complete programs at each step, resulting in substantial con- text overhead. Methods such as Zebra-CoT (Li et al. 2025) and MathCanvas (Shi et al. 2025) rely on unified models trained on interleaved image-text reasoning data to generate intermediate figures directly. However, current image gener- ation models still lack the precision required for geometric construction, making it difficult to faithfully translate geo- metric reasoning into accurate visual representations (Wang et al. 2025d). These limitations highlight the need for a more reliable paradigm for auxiliary-line construction. 3 MetaReason 3.1 Overview of the Reasoning Process MetaReason solves geometry tasks through a multi-stage pipeline, which follows an interleaved multimodal reasoning paradigm as (Wang et al. 2025a; Zheng et al. 2025; Zhang et al. 2025b; Hu et al. 2024; Duan et al. 2025; Shi et al. 2025; Li et al. 2025). It is composed of 3 models, MetaConverter, MetaJudge, and MetaReasoner. As shown in Fig. 2, given a multimodal query comprising a geometry diagram and a text question, the framework operates in the following three phases: Phase 1: Meta-Information Extraction. For problems containing diagrams, MetaConverter first attempts to parse the input image into a structured meta-information format (detailed in §3.2). If the input contains no image, the model directly reverts to a pure-text reasoning paradigm. Phase 2: Meta Verification. To ensure the accuracy of vi- sual grounding, MetaJudge evaluates the correctness of the extracted meta-information. This is achieved by re-rendering the meta-information as an image and verifying visual con- sistency. The meta-information is considered correct if the reconstructed image matches the original diagram exactly, or if the visual differences strictly adhere to the geomet- ric constraints described in the problem text. If the meta- information passes the verification step, the system enters the visual sketching branch. Otherwise, it reverts to pure-text CoT reasoning to prevent error propagation. Phase 3: Iterative Visual Sketching. Once verified, MetaReasoner begins an iterative interaction with the vi- sual environment. At each step, the model analyzes the cur- rent textual and visual context and adds auxiliary lines by outputting a specific <tool_call>...</tool_call> command with actions. The environment executes this tool by modifying the meta-information, re-rendering the diagram, and returning the updated image. The newly rendered image, along with the previous text trajectory, is appended to the context for the next step. This loop continues until the model outputs the [EOS] token to provide the final answer, or until a predefined maximum limit of 10 iterations is reached. 3.2 Meta-Information Structure and Sketching Tools The core of MetaReason relies on a lightweight, symbolic representation of geometric diagrams and a concise set of tools to manipulate this representation. Meta-Information Structure. We define the meta- information of a geometric diagram with a JSON-like schema composed of points and shapes. The points dic- tionary maps point names to their 2D coordinates (e.g., "<pointName1>": [<x1>, <y1>]). The shapes list under the keyword type contains geometric primitives. We define three basic shape types: Segment, Line, and Circle. A Segment is a line segment connecting two endpoints, which requires a "points" array containing the names of the start and end points, alongside a "style" attribute ("solid" or"dashed"). A Line represents an infinite line determined by two points, requiring a "points" array specifying the two points that it passes through, and a "style" attribute. Finally, a Circle is defined by a center and a radius, requiring the name of the "center" point, a numerical "radius", and a "style" attribute. Given meta-information, a geo- metric diagram can be illustrated with a rendering engine, which is a pre-defined Python function. Tools for Sketching. To prevent excessive complexity in toolsets and to maintain a manageable prompt length, we empirically analyzed the frequency of auxiliary lines drawn in the training set, with details shown in the Appendix. The analysis reveals that connecting segments, finding intersec- tion points, and drawing perpendicular lines are the most fre- quently used operations. Consequently, we equip the VLM with the following three core tools. First, the Draw Segment tool connects two existing points to create a new line seg- ment. Second, the Draw Intersection Point tool calculates the intersection point between two linear elements (lines or segments) and assigns a new name to it. Third, the Draw Perpendicular tool draws a perpendicular line from a given start point to a target linear element, and assigns a name to the corresponding foot of the perpendicular. When the VLM invokes these tools, the framework au- tomatically updates the JSON representation of the meta- information and invokes the rendering engine to generate the new visual sketches. The details of the meta-information schema and tools are provided in the Appendix. 3.3 Training Strategy To equip the model with both meta-information extraction and iterative visual reasoning capabilities, we adopt a two- stage training paradigm consisting of supervised fine-tuning and reinforcement learning. The detailed composition and construction of the training data are provided in §4. Supervised Fine-Tuning. In the first stage, we separately fine-tune MetaConverter and MetaReasoner. MetaConverter is trained on image-to-meta pairs to learn structured geo- metric abstraction, while MetaReasoner is trained on inter- leaved multimodal reasoning trajectories together with pure- text reasoning data to acquire tool-use and step-by-step rea- soning abilities. Reinforcement Learning. Following SFT, we further op- timize MetaReasoner using the GRPO (Shao et al. 2024) algorithm to improve multi-step planning and tool-use be- havior in iterative visual reasoning. Specifically, we train the model exclusively on the interleaved multimodal reasoning subset of the training data. We utilize Qwen3-VL-8B-Instruct (Bai et al. 2025a) as the reward model to evaluate the generated trajectories. The reward function is designed to encourage both accuracy and proactive tool usage, bounded between 0 and 1.2. The total reward R total is formulated as follows: R total = R correct + ι¡ I perfect + β¡ I tool (1) where I perfect and I tool are binary indicators for perfect completion and successful tool use, respectively. The specific reward components are defined below: ⢠Correctness Reward (R correct ): The base score for a fully correct answer is 1.0. For single-question problems, the model receives 1.0 for a correct answer and 0 for an in- correct one. For multi-question problems, the reward is distributed across sub-problems. Following the weighting scheme established in MathCanvasBench (Shi et al. 2025), the score for the i-th sub-problem is calculated as: score i = 1.3 i P n k=1 1.3 k (2) where n is the total number of sub-problems. This scoring schema generally assigns higher weights to the later, more difficult sub-questions. ⢠Perfect Completion Bonus (Îą): If the model correctly answers all sub-questions within a problem, it receives an additional bonus of Îą = 0.15. ⢠Tool-Use Bonus (β): To encourage the model to sketch ac- tively and reason visually, we provide a bonus of β = 0.05 if the final answer is completely correct and the model suc- cessfully invokes the sketching tools during the reasoning trajectory. 4 Dataset Construction and Benchmark Existing datasets (Duan et al. 2025; Shi et al. 2025) that pro- vide step-by-step solutions for planar geometry still have sub- stantial limitations for training multimodal agents. First, their diagrams do not include explicit programmatic construction steps, making them unsuitable for direct use in intermediate visual sketching. Second, their reasoning trajectories are pri- marily designed for human learners and often omit detailed analysis, logical derivation, and reflective reasoning, which limits their effectiveness as supervision for VLM training. To address these limitations, we construct TutorGeo, a comprehensive dataset consisting of 17k image-to-meta con- version data, 60k text-only reasoning data, and 60k inter- leaved multimodal reasoning data. Furthermore, we intro- duce ExamGeo, a high-quality benchmark derived from real- world examination problems. 4.1 TutorGeo Reasoning Data Construction Pipeline. As shown in Fig. 3, to transform raw geometry data into high-quality multimodal reasoning trajectories with intermediate sketches, we design a rigorous automated data processing pipeline: 1. Meta-Information Extraction and Verification: We prompt Gemini-3-Flash (Google 2025) to parse the orig- inal problem images into structured meta-information. Compared to open-source models, proprietary models such as Gemini-3-Flash can reliably invoke external com- putational tools to precisely calculate the coordinates of constructed points (e.g., intersections, midpoints, and points on angle bisectors). We then render a new diagram from the extracted meta-information and use it in place of the original image. To ensure high visual fidelity, we use Qwen3-VL-8B-Instruct (Bai et al. 2025a) as a verifier to filter out parsed meta-information that produces invalid or misaligned diagrams. Original Data Meta-Information Extraction/Verification Reasoning Trajectory Rewriting Visual State Generation Tool Call Injection Question: (1) ...... (2) Prove â APB = â COB. Reasoning: ...... 2. Connect OA. âľ AB ⼠CD, â´ arc AC = arc BC. â´ â AOC = â BOC = 1/2 â BOA. ...... Meta Information "points": "O": [0, 0], ..., "shapes": [ "type": "circle", "center": "O", "radius": 10.0, "style": "solid" ,... ] Rendered Image : <think> Existing Thinking Process </think> <tool_call>geometry.draw_s egment(\"A\", \"O\")</tool_call> <think> Existing Thinking Process </think> <tool_call> geometry.draw_segment(" A", "O") </tool_call> ......Now, moving to part (2):prove â APB = â COB. First, connect point A to center O, forming radius OA. We now analyze arcs and central angles. Since AB ⼠CD and CD passes through center O, the perpendicular from the center to chord AB bisects arc subtended by AB. That is, arc AC equals arc BC. This follows directly from theorem âPerpendicular from Center Bisects Arcâ . Therefore, the central angles subtending those arcs are equal: â AOC = â BOC...... <think> Existing Thinking Process First, connect point A to center O, forming radius OA. </think> <think> We now analyze arcs and central angles. Since AB ⼠CD and CD passes through center O, Existing Thinking Process </think> Figure 3: The TutorGeo Data Processing Pipeline. Raw geometric QA samples are transformed into interleaved multimodal trajectories via a four-step pipeline: (1) Meta-Information Extraction and Verification, (2) Trajectory Rewriting, (3) Tool Call Injection, and (4) Visual State Generation. 2. Reasoning Trajectory Rewriting: We utilize Qwen3- VL-8B-Instruct to rewrite the original human-centric so- lutions into detailed, step-by-step reasoning processes that explicitly articulate the logical deductions required by VLMs. 3. Tool Call Injection: Qwen3-VL-8B-Instruct is used to identify the reasoning steps at which auxiliary lines should be introduced. At these exact locations, we inject the corresponding <tool_call> commands (as defined in §3.2). 4. Visual State Generation: Based on the injected tool call and the current meta-information, we render the updated intermediate diagram and insert it into the trajectory, forming a complete interleaved multimodal reasoning se- quence. To ensure the model retains the ability to perform text- only reasoning when visual sketching is unnecessary or fails, we also include a subset of data that bypasses the visual generation steps and only undergoes Step 2. Image-to-Meta Data. To endow VLM with the ability to natively parse images into structured meta-information without relying on proprietary APIs during inference, we collect the detailed reasoning traces generated by Gemini- 3-Flash during Step 1 of the pipeline. We use this data to train Qwen3-VL-8B-Instruct specifically for the image-to- meta task. RL Data Selection. During the RL stage, the training objective is strictly focused on optimizing the modelâs mul- timodal reasoning and planning capabilities, with the goal of learning when and how to effectively construct auxil- iary lines for successful problem solving. Therefore, RL is conducted on 6K interleaved multimodal reasoning samples from TutorGeo. 4.2 ExamGeo To rigorously evaluate model performance on planar geom- etry reasoning, we construct ExamGeo, which consists of 1,000 held-out questions selected from our data collection. To ensure that the benchmark provides sufficient discrim- inative power for advanced VLMs, we categorize the ques- tions into four difficulty levels (L1, L2, L3, and L4) based on publicly available human accuracy rates (0.8, 0.6, 0.4, and 0.2, respectively). A lower human accuracy rate indicates a higher difficulty level. We intentionally oversample the more difficult questions to rigorously challenge the models. How- ever, because the most difficult questions (with an accuracy rate of 0.2) are naturally scarce in the source data, we sample the final 1,000 questions using a ratio of 1 : 2 : 5 : 2, which corresponds to the human accuracy rates of 0.8, 0.6, 0.4, and 0.2. This curated distribution ensures that ExamGeo is heav- ily weighted towards complex reasoning tasks, effectively distinguishing models that can genuinely âthink-with-imageâ from those that rely on superficial pattern matching. Given the structural complexity and diverse expressive for- mats of answers, rule-based parsing is inadequate for precise evaluation of ExamGeo. Therefore, similwar to (Shi et al. 2025), we employ an LLM-as-a-judge framework, utilizing GPT-5.2 as the automated evaluator to assess final answers. Detailed evaluation prompts are provided in the Appendix. 5 Experiments 5.1 Implementation Details Both MetaConverter and MetaReasoner are trained based on Qwen3-VL-8B-Instruct. We freeze the ViT modules (Doso- vitskiy et al. 2021) and fine-tune the LLM backbones via LLaMA-Factory (Zheng et al. 2024). During SFT, Meta- Converter is trained on 17k image-to-meta pairs for 3 epochs (lr=3Ă 10 â5 ). MetaReasoner is trained on 120k high-quality trajectories (60k multimodal, 60k text-only) for 2 epochs Table 1: Comparison of model performance on ExamGeo, GeoLaux-mini (Fu et al. 2025) and GeoQA (Chen et al. 2021) benchmarks. The abbreviation M denotes the multimodal reasoning paradigm. ExamGeo consists of four difficulty levels from âL1â to âL4â, with higher numbers indicating greater difficulty. The best and second-best results are indicated in bold and underlined text, respectively. All results are reported as percentages (%). Models#Params.M ExamGeoGeoLaux-miniGeoQA L1L2L3L4Avg.AccuracyAngle Area Length Other Avg. Closed-source Models GPT-5.2 (OpenAI 2025)-â67.061.544.836.548.776.988.388.993.888.490.4 Claude-Sonnet-4.6 (Anthropic 2026) -â64.0 55.0 45.040.548.056.193.891.097.085.5 94.7 Gemini-3.1-Pro (Google DeepMind 2026)-â80.053.528.016.536.067.996.795.198.391.397.1 Open-source Models InternVL3.5-8B (Wang et al. 2025c)8Bâ27.0 25.5 15.8 11.0 17.938.966.5 59.470.469.6 67.6 Qwen3-VL-8B-Instruct (Bai et al. 2025a)8Bâ12.014.013.412.013.128.557.364.769.279.762.5 Bagel (Deng et al. 2025)7Bâ53.035.015.613.022.744.865.166.964.250.764.7 Bagel-Zebra-CoT (Li et al. 2025)7Bâ51.0 28.0 10.18.017.337.652.2 57.065.043.5 57.2 BAGEL-Canvas (Shi et al. 2025)7Bâ53.028.514.67.519.837.183.379.082.265.282.4 CodePlot-CoT (Duan et al. 2025) 32Bâ22.0 17.07.86.010.714.514.4 14.219.518.8 16.4 MetaReason-SFT8Bâ67.049.529.226.536.562.481.269.480.063.879.8 MetaReason-RL8Bâ72.070.051.645.556.180.188.879.687.668.187.5 â Over Base Model+60.0+56.0+38.2+33.5+43.0+51.6+31.5+14.9+18.3-11.6+24.9 (lr=1Ă 10 â5 ). In the subsequent RL phase, MetaReasoner is optimized on the interleaved multimodal reasoning sub- set utilizing GRPO (Shao et al. 2024) via verl (Sheng et al. 2024) for 2 epochs. We evaluate MetaReason-SFT and MetaReason-RL, setting the inference temperature to 0.0 and allowing a maximum of 10 visual sketching iterations per problem. 5.2 Main Results Performance on ExamGeo. As illustrated in Tab. 1, MetaReason-RL achieves state-of-the-art performance with an average accuracy of 56.1% on ExamGeo, significantly outperforming all open-source and closed-source baselines. Notably, the proposed 8B model surpasses the most power- ful proprietary model, GPT-5.2 (48.7%), by a substantial ab- solute margin of 7.4%. When comparing across difficulty lev- els, proprietary models like Gemini-3.1-Pro perform well on L1 questions (80.0%) but suffer severe performance degra- dation on L3 (28.0%) and L4 (16.5%) questions. In contrast, MetaReason-RL exhibits remarkable robustness, achieving 51.6% and 45.5% on the L3 and L4 levels, respectively. This demonstrates that while text-only reasoning is sufficient for simple problems, the explicit âthink-with-imageâ paradigm enabled by the precise meta-information manipulation is cru- cial for solving highly complex, multi-step geometric tasks. Compared with other open-source models employing mul- timodal reasoning (e.g., BAGEL-Canvas, CodePlot-CoT), the proposed method demonstrates significant superiority. Existing methods struggle heavily on ExamGeo (all scor- ing below 25% on average), as their low rendering fidelity and inaccurate geometric representations lead to error prop- agation. Furthermore, the substantial improvement from the base Qwen3-VL-8B-Instruct (13.1%) to MetaReason-SFT (36.5%), and finally to MetaReason-RL (56.1%), highlights the effectiveness of both the high-quality TutorGeo dataset and the RL training stage in activating complex tool-use planning. Performance on GeoLaux-mini and GeoQA. To eval- uate the generalization ability of MetaReason, we further evaluate it on GeoLaux-mini and GeoQA, with results sum- marized in Tab. 1. On GeoLaux-mini, which explicitly tests auxiliary-line construction, MetaReason-RL achieves state- of-the-art accuracy of 80.1%, surpassing GPT-5.2 (76.9%) and significantly outperforming the best open-source com- petitor (Bagel at 44.8%). This directly validates the core mo- tivation: the pre-defined sketching tools and deterministic rendering engine effectively equip the VLM with a reliable âruler and compass,â which allows the model to discover implicit geometric relationships that are often overlooked by text-only reasoning. On GeoQA, MetaReason-RL achieves an average accu- racy of 87.5%, improving substantially over the base model (62.5%) and outperforming the strongest open-source base- line, BAGEL-Canvas (82.4%). Gemini-3.1-Pro achieves a higher accuracy of 97.1%, but MetaReason-RL remains com- petitive as an 8B open-source model. At the category level, MetaReason-RL improves accuracy on Angle, Area, and Length, which together account for 98.6% of the benchmark. Detailed category results are provided in the Appendix. Reliability of MetaConverter and MetaJudge. We fur- ther evaluate both modules through human annotation. Meta- Converter achieves conversion accuracy ranging from 52.5% to 82.0% across the three benchmarks, while MetaJudge achieves both acceptance precision and inconsistent rejection over 90%. Detailed results are provided in the Appendix. 5.3 Qualitative Analysis To demonstrate the superiority of the MetaReason frame- work, a qualitative comparison is presented in Fig. 4 using a geometry problem that requires auxiliary lines. Limitations of Baselines. Without visual grounding, the text-only Qwen3-VL-8B-Instruct model hallucinates an angle-bisector relation and fails at an early stage. CodePlot- CoT and BAGEL-Canvas attempt to construct auxiliary lines through code or image generation, but their distorted or mis- aligned visual states propagate errors into the subsequent Angle bisectors BP and AP of â ABC and â EAC intersect at point P. PM ⼠BE and PN ⼠BF. Which are correct: â CP bisects â ACF; ⥠â BPC = 1/2â BAC; ⢠â APC = Ď/2â1/2â ABC; ⣠S âłAPM + S âłCPN > S âłAPC Ground Truth: â âĄâ˘ The excenter opposite A is the intersection point of: - the external angle bisector at A, which is AP; - the internal angle bisector at B, which is BP; - the internal angle bisector at C, which is CP. Therefore, CP is the internal angle bisector at C, so it bisects â ACB rather than â ACF. However, â ACF is the exterior angle at C, with â ACF = 180° â â ACB. Thus, CP does not bisect â ACF unless â ACB = 90°. Prediction: ⣠Draw PD â AC through P PD = PM and PD = PN PM = PN, BP bisects â EBF. Hence, â ABP = â EBP. â EAP = â EAB + â BAP, â FAP = â FBC + â CBP. Therefore, â EAP = â FAP. Prediction: ⢠Construct PH â AC perpendicular(P, AC) Since PM â BE and PH â AC, AP bisects â EAC, PM = PH. BP bisects â ABC, PN â BF, and PM â BE, PN = PM. Therefore, PN = PH. CP bisects â ACF. Statement â is correct. Prediction: â âĄâ˘ Question Qwen3-VL-8B-InstructCodePlot-CoTMetaReasonBAGEL-Canvas Construct PD â AC at D. Since AP and BP are the internal angle bisectors, P is the incenter of âłBEC. Distances equal from P to BE, BC, and CE: PM = PN = PD. As PD and PN are the distances from P to AC and CF, CP bisects â ACF. Statement â is correct. Prediction: â ⢠<code> Figure 4: Case Study of Geometric Reasoning. Compared to methods that exhibit hallucinations due to the absence of auxiliary lines (Qwen3-VL-8B-Instruct) or inaccurate visual support (CodePlot-CoT and BAGEL-Canvas), our MetaReason framework generates deterministic visual states via tool-augmented meta-editing and derives the correct conclusion. For clarity, only the reasoning for the first statement is shown; the reported predictions cover all four statements. Table 2: Ablation study of the two-stage training pipeline utilizing TutorGeo and the MetaReason framework across ExamGeo, GeoLaux_mini (Fu et al. 2025), and GeoQA (Chen et al. 2021). The abbreviation M denotes the multimodal reasoning paradigm, while Training represents the two-stage training pipeline incorporating the proposed TutorGeo. The best and second- best results are highlighted in bold and underlined text, respectively. All results are reported as percentages (%). ModelsTraining M ExamGeoGeoLaux_miniGeoQA L1 L2 L3 L4 Avg.AccuracyAngle Area Length Other Avg. MetaReason-RLâ72.070.051.645.556.180.188.879.687.668.187.5 w/o MetaReasonââ73.0 59.544.633.048.175.678.864.4 77.168.1 77.1 w/o TutorGeo trainingââ37.027.522.219.024.146.668.472.181.181.273.6 Qwen3VL-8B-Instructâ12.0 14.0 13.4 12.0 13.128.557.3 64.7 69.379.762.5 reasoning. Success of MetaReason. In contrast, MetaReason edits structured meta-information and deterministically renders the required auxiliary line (PH ⼠AC) without the distor- tions observed in the baseline outputs. This accurate visual feedback enables the model to apply the relevant geometric relations step by step and derive the correct answer. 5.4 Ablation Study We ablate the contributions of the iterative visual reasoning framework and TutorGeo training, with results summarized in Tab. 2. Effect of the MetaReason Framework. The w/o MetaR- eason variant receives the same two-stage training as MetaReason-RL but uses pure-text CoT at inference. Re- moving visual reasoning reduces average accuracy by 10.4 points on GeoQA and by 4.5 points on GeoLaux-mini. On ExamGeo, the two variants perform similarly on L1, whereas MetaReason-RL gains 7.0 and 12.5 points on L3 and L4, respectively. It shows that intermediate visual construction becomes increasingly important as problem difficulty grows. Effect of Interleaved Multimodal Reasoning. Without TutorGeo training, the zero-shot multimodal variant still con- sistently outperforms the pure-text base model on all three benchmarks. This indicates that part of the gain comes from introducing intermediate visual constructions rather than from training alone. Effect of TutorGeo Training. Removing TutorGeo train- ing reduces accuracy from 56.1% to 24.1% on ExamGeo and from 80.1% to 46.6% on GeoLaux-mini. These gaps show that training is essential for reliable meta-information generation, multi-step planning, and tool invocation. 6 Conclusion In this paper, we present MetaReason, an interleaved mul- timodal reasoning framework that constructs auxiliary lines by editing structured meta-information with lightweight tool calls. We also introduce TutorGeo, a 137k-sample training set, and ExamGeo, a benchmark with difficulty levels based on human accuracy. On this basis, MetaReason is trained with SFT and RL to learn multi-step planning and tool use. Ex- periments show that it achieves state-of-the-art performance on ExamGeo and GeoLaux-mini and outperforms all open- source models on GeoQA. References Anthropic. 2026. Introducing Claude Sonnet 4.6. https: //w.anthropic.com/news/claude-sonnet-4-6. Bai, S.; Cai, Y.; Chen, R.; Chen, K.; Chen, X.; Cheng, Z.; Deng, L.; Ding, W.; Gao, C.; Ge, C.; et al. 2025a. Qwen3-vl technical report. arXiv preprint arXiv:2511.21631. Bai, S.; Chen, K.; Liu, X.; Wang, J.; Ge, W.; Song, S.; Dang, K.; Wang, P.; Wang, S.; Tang, J.; Zhong, H.; Zhu, Y.; Yang, M.; Li, Z.; Wan, J.; Wang, P.; Ding, W.; Fu, Z.; Xu, Y.; Ye, J.; Zhang, X.; Xie, T.; Cheng, Z.; Zhang, H.; Yang, Z.; Xu, H.; and Lin, J. 2025b. Qwen2.5-VL Technical Report. arXiv:2502.13923. Chen, J.; Tang, J.; Qin, J.; Liang, X.; Liu, L.; Xing, E.; and Lin, L. 2021. Geoqa: A geometric question answer- ing benchmark towards multimodal numerical reasoning. In Findings of the Association for Computational Linguistics: ACL-IJCNLP 2021, 513â523. Chen, X.; Zhang, R.; Jiang, D.; Zhou, A.; Yan, S.; Lin, W.; and Li, H. 2025. Mint-cot: Enabling interleaved visual tokens in mathematical chain-of-thought reasoning. arXiv preprint arXiv:2506.05331. Chen, Z.; Wu, J.; Wang, W.; Su, W.; Chen, G.; Xing, S.; Zhong, M.; Zhang, Q.; Zhu, X.; Lu, L.; et al. 2024. Internvl: Scaling up vision foundation models and aligning for generic visual-linguistic tasks. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, 24185â24198. Deng, C.; Zhu, D.; Li, K.; Gou, C.; Li, F.; Wang, Z.; Zhong, S.; Yu, W.; Nie, X.; Song, Z.; et al. 2025. Emerging prop- erties in unified multimodal pretraining. arXiv preprint arXiv:2505.14683. Dosovitskiy, A.; Beyer, L.; Kolesnikov, A.; Weissenborn, D.; Zhai, X.; Unterthiner, T.; Dehghani, M.; Minderer, M.; Heigold, G.; Gelly, S.; et al. 2021. An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale. In International Conference on Learning Representations. Duan, C.; Sun, K.; Fang, R.; Zhang, M.; Feng, Y.; Luo, Y.; Liu, Y.; Wang, K.; Pei, P.; Cai, X.; et al. 2025. Codeplot-cot: Mathematical visual reasoning by thinking with code-driven images. arXiv preprint arXiv:2510.11718. Fan, Y.; He, X.; Yang, D.; Zheng, K.; Kuo, C.-C.; Zheng, Y.; Narayanaraju, S. J.; Guan, X.; and Wang, X. E. 2025. Grit: Teaching mllms to think with images. arXiv preprint arXiv:2505.15879. Fu, Y.; Zhu, J.; Zhang, L.; Zhao, B.; Ma, S.; Zhang, Y.; Wu, Y.; and Wu, W. 2025. GeoLaux: A Benchmark for Evaluating MLLMsâ Geometry Performance on Long- Step Problems Requiring Auxiliary Lines. arXiv preprint arXiv:2508.06226. Google. 2025. Gemini-3. https://blog.google/products-and- platforms/products/gemini/gemini-3/. Google DeepMind. 2026. Gemini 3.1 Pro Model Card. https: //deepmind.google/models/model-cards/gemini-3-1-pro/. Hu, Y.; Shi, W.; Fu, X.; Roth, D.; Ostendorf, M.; Zettlemoyer, L.; Smith, N. A.; and Krishna, R. 2024. Visual sketchpad: Sketching as a visual chain of thought for multimodal lan- guage models. Advances in Neural Information Processing Systems, 37: 139348â139379. Hurst, A.; Lerer, A.; Goucher, A. P.; Perelman, A.; Ramesh, A.; Clark, A.; Ostrow, A.; Welihinda, A.; Hayes, A.; Rad- ford, A.; et al. 2024. Gpt-4o system card. arXiv preprint arXiv:2410.21276. Li, A.; Wang, C.; Fu, D.; Yue, K.; Cai, Z.; Zhu, W. B.; Liu, O.; Guo, P.; Neiswanger, W.; Huang, F.; et al. 2025. Zebra-cot: A dataset for interleaved vision language reasoning. arXiv preprint arXiv:2507.16746. Lu, P.; Bansal, H.; Xia, T.; Liu, J.; Li, C.; Hajishirzi, H.; Cheng, H.; Chang, K.-W.; Galley, M.; and Gao, J. 2023. Mathvista: Evaluating mathematical reasoning of foundation models in visual contexts. arXiv preprint arXiv:2310.02255. Lu, P.; Gong, R.; Jiang, S.; Qiu, L.; Huang, S.; Liang, X.; and Zhu, S.-C. 2021. Inter-gps: Interpretable geometry problem solving with formal language and symbolic reasoning. In Proceedings of the 59th Annual Meeting of the Association for Computational Linguistics and the 11th International Joint Conference on Natural Language Processing (Volume 1: Long Papers), 6774â6786. Ni, M.; Yang, Z.; Li, L.; Lin, C.-C.; Lin, K.; Zuo, W.; and Wang, L. 2025. Point-rft: Improving multimodal reason- ing with visually grounded reinforcement finetuning. arXiv preprint arXiv:2505.19702. OpenAI. 2025. Introducing GPT 5.2. https://openai.com/ index/introducing-gpt-5-2/. OpenAI. 2025. OpenAI o3 and o4-mini System Card. Tech- nical report, OpenAI. Shao, Z.; Wang, P.; Zhu, Q.; Xu, R.; Song, J.; Bi, X.; Zhang, H.; Zhang, M.; Li, Y.; Wu, Y.; et al. 2024. Deepseekmath: Pushing the limits of mathematical reasoning in open lan- guage models. arXiv preprint arXiv:2402.03300. Sheng, G.; Zhang, C.; Ye, Z.; Wu, X.; Zhang, W.; Zhang, R.; Peng, Y.; Lin, H.; and Wu, C. 2024. HybridFlow: A Flexible and Efficient RLHF Framework. arXiv preprint arXiv: 2409.19256. Shi, W.; Yu, A.; Fang, R.; Ren, H.; Wang, K.; Zhou, A.; Tian, C.; Fu, X.; Hu, Y.; Lu, Z.; et al. 2025. Mathcanvas: In- trinsic visual chain-of-thought for multimodal mathematical reasoning. arXiv preprint arXiv:2510.14958. Su, Z.; Li, L.; Song, M.; Hao, Y.; Yang, Z.; Zhang, J.; Chen, G.; Gu, J.; Li, J.; Qu, X.; et al. 2025a. Openthinkimg: Learn- ing to think with images via visual tool reinforcement learn- ing. arXiv preprint arXiv:2505.08617. Su, Z.; Xia, P.; Guo, H.; Liu, Z.; Ma, Y.; Qu, X.; Liu, J.; Li, Y.; Zeng, K.; Yang, Z.; et al. 2025b. Thinking with images for multimodal reasoning: Foundations, methods, and future frontiers. arXiv preprint arXiv:2506.23918. Team, C. 2024. Chameleon: Mixed-modal early-fusion foun- dation models. arXiv preprint arXiv:2405.09818. Wang, H.; Su, A.; Ren, W.; Lin, F.; and Chen, W. 2025a. Pixel reasoner: Incentivizing pixel-space reasoning with curiosity-driven reinforcement learning. arXiv preprint arXiv:2505.15966. Wang, K.; Pan, J.; Shi, W.; Lu, Z.; Ren, H.; Zhou, A.; Zhan, M.; and Li, H. 2024. Measuring multimodal mathemati- cal reasoning with math-vision dataset. Advances in Neural Information Processing Systems, 37: 95095â95169. Wang, K.; Pan, J.; Wei, L.; Zhou, A.; Shi, W.; Lu, Z.; Xiao, H.; Yang, Y.; Ren, H.; Zhan, M.; et al. 2025b. Mathcoder-vl: Bridging vision and code for enhanced multimodal mathe- matical reasoning. In Findings of the Association for Com- putational Linguistics: ACL 2025, 2505â2534. Wang, W.; Gao, Z.; Gu, L.; Pu, H.; Cui, L.; Wei, X.; Liu, Z.; Jing, L.; Ye, S.; Shao, J.; et al. 2025c. Internvl3. 5: Advancing open-source multimodal models in versatility, reasoning, and efficiency. arXiv preprint arXiv:2508.18265. Wang, Z.; Yin, P.; Zhao, X.; Tian, C.; Qiao, Y.; Wang, W.; Dai, J.; and Luo, G. 2025d. Genexam: A multidisciplinary text-to-image exam. arXiv preprint arXiv:2509.14232. Wu, M.; Yang, J.; Jiang, J.; Li, M.; Yan, K.; Yu, H.; Zhang, M.; Zhai, C.; and Nahrstedt, K. 2025. Vtool-r1: Vlms learn to think with images via reinforcement learning on multimodal tool use. arXiv preprint arXiv:2505.19255. Yue, X.; Ni, Y.; Zhang, K.; Zheng, T.; Liu, R.; Zhang, G.; Stevens, S.; Jiang, D.; Ren, W.; Sun, Y.; et al. 2024. Mmmu: A massive multi-discipline multimodal understanding and reasoning benchmark for expert agi. In Proceedings of the IEEE/CVF conference on computer vision and pattern recog- nition, 9556â9567. Zhang, R.; Jiang, D.; Zhang, Y.; Lin, H.; Guo, Z.; Qiu, P.; Zhou, A.; Lu, P.; Chang, K.-W.; Qiao, Y.; et al. 2024. Math- verse: Does your multi-modal llm truly see the diagrams in visual math problems? In European Conference on Com- puter Vision, 169â186. Springer. Zhang, X.; Gao, Z.; Zhang, B.; Li, P.; Zhang, X.; Liu, Y.; Yuan, T.; Wu, Y.; Jia, Y.; Zhu, S.-C.; et al. 2025a. Chain-of- focus: Adaptive visual search and zooming for multimodal reasoning via rl. arXiv e-prints, arXivâ2505. Zhang, Y.; Lu, X.; Yin, S.; Fu, C.; Chen, W.; Hu, X.; Wen, B.; Jiang, K.; Liu, C.; Zhang, T.; et al. 2025b. Thyme: Think Beyond Images. In NeurIPS 2025 Fourth Workshop on Deep Learning for Code. Zheng, Y.; Zhang, R.; Zhang, J.; Ye, Y.; and Luo, Z. 2024. Llamafactory: Unified efficient fine-tuning of 100+ language models. In Proceedings of the 62nd annual meeting of the association for computational linguistics (volume 3: system demonstrations), 400â410. Zheng, Z.; Yang, M.; Hong, J.; Zhao, C.; Xu, G.; Yang, L.; Shen, C.; and Yu, X. 2025. Deepeyes: Incentivizing" thinking with images" via reinforcement learning. arXiv preprint arXiv:2505.14362. Zhu, J.; Wang, W.; Chen, Z.; Liu, Z.; Ye, S.; Gu, L.; Tian, H.; Duan, Y.; Su, W.; Shao, J.; et al. 2025. Internvl3: Explor- ing advanced training and test-time recipes for open-source multimodal models. arXiv preprint arXiv:2504.10479. A Definition of Meta-Information The meta-information for each image consists of two primary components: points and shapes. points are defined by unique names and their corresponding spatial coordinates. shapes, including segments, lines, and circles, are constructed based on points. Detailed descriptions, definitions, and examples for each element of meta-information are provided in Table 3. To further illustrate meta-information, Fig. 5 presents a concrete example where points and shapes are rendered into a geometric figure. This visualization demonstrates how our meta-information effectively captures the underlying structural logic of geometric images, ensuring a precise mapping between symbolic representations and visual layouts. Table 3: Definition of meta-information. This table provides detailed specifications for geometric elements, including point, segment, line, and circle. Each element is defined by a set of predefined fields, such as coordinates, points, and radius. Element DescriptionRequired FieldsExample point A named point with coordinates, used to construct geometric objects such as segments, lines, and circles. ⢠name: [coord_x, coord_y] "A": [10.5, 20.0] segment A line segment connecting two named points in the point set. ⢠"type": "segment" ⢠"points": [p1, p2] ⢠"style": "solid" | "dashed" "type": "segment", "points": ["A", "B"], "style": "solid" line An infinite line determined by two named points in the point set. ⢠"type": "line" ⢠"points": [p1, p2] ⢠"style": "solid" | "dashed" "type": "line", "points": ["A", "C"], "style": "dashed" circle A circle defined by a named center point and a radius value. ⢠"type": "circle" ⢠"center": pName ⢠"radius": number ⢠"style": "solid" | "dashed" "type": "circle", "center": "A", "radius": 5.0, "style": "solid" "points": "A": [40.0, 30.0], "B": [40.0, 0.0], "C": [0.0, 30.0], "O": [20.0, 15.0], "shapes": [ "type": "circle", "center": "O", "radius": 25.0, "style": "solid", "type": "segment", "points": ["A", "B"], "style": "solid", "type": "segment", "points": ["B", "C"], "style": "solid", "type": "segment", "points": ["C", "A"], "style": "solid", "type": "segment", "points": ["A", "O"], "style": "dashed", ] Meta Information Rendered Image Figure 5: An Example of Meta-Information and the Corresponding Rendered Image. B Tool Selection We initially considered an extended tool space covering a broader range of common geometric constructions. However, a larger action space increases prompt length and introduces additional ambiguity in tool selection during training. We therefore analyzed the tool usage distribution in the training trajectories, as shown in Fig. 6, and retained the three most frequently used operations: draw_segment, draw_intersection_point, and draw_perpendicular_to_linear. draw_parallel_to_linear 7.5% draw_point_on_linear 7.2% draw_symmetric_point 1.9% draw_perpendicular_bisector 1.4% draw_angle_bisector 0.8% draw_median 0.2% draw_line 0.2% draw_ray 0.0% draw_segment 37.4% draw_perpendicular_to_linear 30.8% draw_intersection_point 12.5% Figure 6: Usage frequency of tools in the extended tool set across the training trajectories. This design represents a trade-off between construction coverage and training stability rather than an inherent limitation of MetaReason. The framework can be extended to support additional constructions by incorporating corresponding tool definitions and updating the meta-information schema and renderer interfaces. The central contribution of MetaReason lies in the combination of structured geometric states, tool-based editing, and deterministic rendering, rather than in a fixed set of tools. C Accuracy of MetaConverter We evaluate the robustness of MetaConverter through a human consistency study. We randomly sample 20% of the examples from ExamGeo, GeoLaux-mini, and GeoQA. Three PhD-level annotators with mathematical backgrounds independently assess whether each re-rendered diagram preserves the geometric structure, point-line relations, and key annotations of the original diagram. The resulting strict diagram-level consistency is reported in Table 4. Table 4: Strict diagram-level consistency of MetaConverter on different benchmarks. Benchmark ExamGeo GeoLaux-mini GeoQA Consistency 52.5%71.2%82.0% The lower consistency on ExamGeo is primarily attributable to its more challenging problems and more complex geometric diagrams. To reduce the impact of inaccurate meta-information on subsequent reasoning, MetaReason applies MetaJudge to filter inconsistent reconstructions before tool-augmented visual reasoning. D Accuracy of MetaJudge We evaluate the reliability of MetaJudge through manual inspection by three PhD-level annotators. We report two complementary metrics. Acceptance precision is the proportion of samples accepted by MetaJudge that are visually consistent with the original image. Inconsistent rejection rate is the proportion of visually inconsistent reconstructions that are correctly rejected. The former measures the reliability of the samples retained for subsequent reasoning, while the latter directly measures MetaJudgeâs ability to detect reconstruction errors. The results are reported in Table 5. Table 5: Performance of MetaJudge on different benchmarks. BenchmarkExamGeo GeoLaux-mini GeoQA Acceptance Precision 98.0%90.9%94.5% Inconsistent Rejection 98.5%93.9%94.0% The high acceptance precision indicates that few inconsistent reconstructions are allowed to enter the tool-augmented reasoning stage. Among the inconsistent reconstructions that are mistakenly accepted, the errors mainly involve minor point or line displacements, redundant geometric objects, or inaccuracies in regions unrelated to the solution. Such errors do not necessarily alter the key geometric relations required for reasoning. The inconsistent rejection rate further reflects how effectively MetaJudge identifies and filters erroneous reconstructions. E GeoQA Category Distribution The GeoQA test set contains 5,010 examples: 2,745 Angle, 323 Area, 1,873 Length, and 69 Other examples. The Other category therefore represents only 1.4% of the test set. Its accuracy can change substantially with only a few different predictions, so comparisons on this subset should be interpreted cautiously. F Case Study Question As shown in the figure, the angle bisectors BP and AP of â ABC and â EAC intersect at point P. PM ⼠BE and PN ⼠BF, with feet of perpendiculars at M and N, respectively. There are four conclusions: â CP bisects â ACF; ⥠â BPC = 1 2 â BAC; ⢠â APC = 90° â 1 2 â ABC; ⣠SâłAPM + SâłCPN > SâłAPC. Among these, the correct conclusions are ____. Ground Truth: â âĄâ˘ Qwen3-VL-8B-InstructCodePlot-CoT BAGEL-Canvas MetaReason (Ours) Construct PD â AC at D. Since AP and BP are the internal bisectors of â EAC and â EBC, respectively, P is the incenter of triangle BEC. Therefore, the perpendicular distances from P to the three sides BE, BC, and CE are equal. Hence PM = PN = PD. ......, we construct a perpendicular from P to line AC, meeting at point H. That is, draw PH ⼠AC. draw_perpendicular_to _linear("P",("line", "A","C"),"H") Rendered image w/ meta: 1) About â : CP bisects â ACF. - From PM = PN = PD, P is equidistant from the lines AC and CF (since PD is the distance from P to AC and PN is the distance from P to CF). Thus P lies on the internal angle bisector of â ACF, so CP is the bisector of â ACF. Therefore, â is correct. 2) About âĄ: â BPC = 1/2 â BAC. - In triangle BEC with incenter P, the angle formed by the internal bisectors at B and C satisfies â BPC = 90° â 1/2 â BEC...... Answer: â ⢠...... since PM â BE, PH â AC, both are distances from P to respective rays, PM = PH. Similarly, since BP is the bisector of â ABC, PN ⼠BF, and PM ⼠BE, again by the same distance property, the distance from P to BF equals that from P to BE. Hence, PN = PM. Thus, PN = PH. Therefore, line CP bisects â ACF...... Answer: â âĄâ˘ ...... The excenter opposite A is the intersection point of: - The external angle bisector at A (which is AP), - The internal angle bisector at B (BP), - The internal angle bisector at C (CP). Therefore, CP is the internal angle bisector at C â so it bisects â ACB, not â ACF. But â ACF is the exterior angle at C, which is 180° - â ACB. So, if CP bisects â ACB, then it does not bisect â ACF, unless â ACB = 90°...... Answer: ⣠As shown, draw PD ⼠AC through point P at D, âľ BP, AP are angle bisectors of â ABC and â EAC, â´ PD = PM, PD = PN, â´ PM = PN, â´ point P lies on the angle bisector of â EBF, â´ â ABP = â EBP, âľ â EAP = â EAB + â BAP, â FAP = â FBC + â CBP, â´ â EAP = â FAP...... Answer: ⢠Reasoning Process: Figure 7: Case study of Geometric Reasoning on ExamGeo. âľ OA = OB = OC = OD â´ Quadrilateral ABCD is a rhombus. â´ AB || CD â´ â ABD = â ODB = 1/2 â DOB = 50° â´ OE = BE Ă sin â OBE = 16 Ă 0.77 â 12.3 â´ AB = 2OE = 24.6 cm Therefore, the answer is D. Answer: D Question As shown in Figure â is a common folding stool, and Figure ⥠is a side view of the stool when fully opened. In this figure, legs AB and CD are of equal length, and O is their midpoint. To ensure the stool is both comfortable and sturdy, craftsmen design the height of the opened stool to be 32 cm, with â DOB = 100°. What is the approximate length of leg AB? Choices: A. 38.1cm B. 49.8cm C. 41.6cm D. 45.3cm Ground Truth: C. 41.6cm CodePlot-CoT BAGEL-Canvas MetaReason (Ours) Analysis: Draw OE ⼠BD from point O, meeting BD at E. Thus, OE = 1/2 AB. In right triangle ÎBOE, use the sine function to find OE, and thus determine AB. Solution: Draw OE ⼠BD from point O, meeting BD at E. Let vertical height between the two feetâs lines be 32 cm. Connect AC. Because OA = OC and OB = OD, quadrilateral AODC is a parallelogram; with OA = OC it is a rhombus. In a rhombus, diagonals are perpendicular, so AC â OD. The given angle at DOB is 100°, hence the angle between OB and OC is also 100°, implying the acute half-angle at O along AC is 50°. Thus â ACO = 50°, and â AOC = 100°. Construct OE â BC at E to relate lengths using right triangles. This will let us express half the vertical height as a sine ratio in triangle AOE. The vertical distance between the parallels through A and C to the foot lines is 32 cm. Therefore ...... Therefore, the approximate length of AB is Option B Answer: B Step 2: Angle Analysis Since AB and CD are straight lines, â COB + â DOB = 180°. â COB = 180° â â DOB = 80°. Triangle ÎCOB is isosceles because AO = OB. 2 ¡ â OBC + 80° = 180° â OBC = 50°. In right triangle ÎOEB, â ABE = â OBC = 50°. Rendered image w/ meta: Reasoning Process: Step 1: Visual Anchoring and Geometric Setup ......Construct perpendicular from A to the line extending through B and C, meeting it at point E...... draw_perpendicular_t o_linear("A", ("line", "B", "C"), "E") Step 3: Apply Trigonometry to Compute AB In right triangle ÎAEB: sin(â ABE) = AE / AB sin(50°) = 32 / AB AB = 32 / sin(50°) Using sin 50° â 0.77. AB â 32 / 0.77 â 41.557... Final Answer: C. 41.6 cm Answer: C. 41.6 cm Figure 8: Case study of Geometric Reasoning on GeoQA Question CodePlot-CoT BAGEL-Canvas MetaReason (Ours) Draw GH perpendicular to BC at H. Then GH is the altitude from G to BC in triangle EBG. The area of triangle EBG is given by S_EBG = 1/2 * BC * GH = 6. Since BC = 4, we have 1/2 * 4 * GH = 6, so GH = 3. In the square, AB = 4 and AB ⼠BC. Since GH ⼠BC, we have AB || GH. Thus quadrilateral ABHG is a rectangle, giving BH = AG and GH is the height of the triangle. Consider triangles ÎEFG and ÎEBC. Because FG â AD and AD || BC, we have FG || BC. Hence ÎEFG ~ ÎEBC with similarity ratio FG / BC. Note that EF and EB are along the same line, and EG and EC are along the same line. From the similarity ÎEFG ~ ÎEBC, and the intercept theorem on the transversals through E, the ratio of the segments is FG / BC = AG / AB. From the area step, AG = 3 (as the segment AG corresponds to the distance BH defined by the altitude GH = 3). Since AB = 4, we have FG / BC = 3 / 4. Therefore, the required ratio is 3/4, which corresponds to option A. Answer: A Rendered image w/ meta: Reasoning Process: As shown in the figure, the side length of square ABCD is 4, and sides EB and EC of triangle EBC intersect side AD at points F and G, respectively.If the area of triangle EBG is 6, then the ratio of the length of FG to BC is __ . Choices: 3/4 3/5 3/7 3/8 Ground Truth: 3/7 Extend AD and BC to meet at point M, âľ S_ÎEBG = 6 â´ S_ÎEBC - S_ÎEGC = 6 âľ S_ÎEBC = 2S_ÎEBG â´ S_ÎEGC = 2 Let GD = x, GC = y â´ 1/2 xy = 2 âľ ÎEFD ~ ÎEGC â´ EF / EG = FD / GC = x / y â´ EF / EG = x / y = FD / GC = (4 - y) / y â´ x = (4 - y) / y * y â´ x = 4 - y â´ y = 2 âľ ÎEFD ~ ÎEGC â´ FD / GC = EF / EG = 1/2 â´ FG = 1/3 * 4 = 4/3 â´ The ratio of the length of FG to BC is 1/3. Thus, the answer is: 1/3. Answer: 1/3 ......To proceed, we construct an auxiliary height from point E perpendicular to base BC, meeting it at point H. ...... draw_perpendicular_to _linear("E", ("segment", "B", "C"), "H") ......The area of ÎGBC is: S_ÎGBC = 1/2 * BC * (height of square) = 8 Therefore, the total area of Triangle EBC is: S_ÎEBC = S_ÎEBG + S_ÎGBC = 6 + 8 = 14 Now, using the area formula for S_ÎEBC with height EH: 1/2 * BC * EH = 14, EH = 7 ......Using the formula for the area of Triangle EBG: S_ÎEBG = 1/2 * FG * EH = 6 Substitute the value EH = 7: ......FG = 12 / 7 .......The ratio FG / BC is calculated as: FG / BC = (12 / 7) / 4 = 3 / 7 Answer: 3 / 7 Figure 9: Case study of Geometric Reasoning on GeoLaux-mini. The aspect ratio of this figure is consistent with the original image provided in the GeoLaux-mini dataset. No scaling or post-processing has been applied, despite the visible vertical compression. G Codes G.1 Code for Rendering Meta-Information 1 class _GeometryDrawer: 2 def __init__(self, meta_data, min_size=512, max_size=1024, draw_points=True): 3 self.meta_data = meta_data 4 self.min_size = min_size 5 self.max_size = max_size 6 self.points = meta_data.get(âpointsâ, ) 7 self.shapes = meta_data.get(âshapesâ, []) 8 self.linewidth = max(min_size / 256, 1) 9 self.fontsize = self.min_size / 16 10 self.fontname = self._get_fontname() 11 self.draw_points = draw_points 12 self.fig, self.ax = None, None 13 self._calculate_bounds() 14 15 def _get_fontname(self): 16 """Return a preferred Times-like font if available.""" 17 preferred_fonts = [âTimes New Romanâ, âNimbus Romanâ, âSTIXâ, âP052â] 18 available_fonts = set(f.name for f in font_manager.fontManager.ttflist) 19 20 for font in preferred_fonts: 21 if font in available_fonts: 22 return font 23 24 return âserifâ 25 26 def _calculate_bounds(self): 27 if not self.points: 28 self.min_x = self.min_y = 0 29 self.max_x = self.max_y = 10 30 else: 31 x_vals = [p[0] for p in self.points.values()] 32 y_vals = [p[1] for p in self.points.values()] 33 self.min_x, self.max_x = min(x_vals), max(x_vals) 34 self.min_y, self.max_y = min(y_vals), max(y_vals) 35 36 for shape in self.shapes: 37 if shape.get(âtypeâ) == âcircleâ: 38 center = shape.get(âcenterâ) 39 radius = shape.get(âradiusâ, 1) 40 if center in self.points: 41 cx, cy = self.points[center] 42 self.min_x = min(self.min_x, cx - radius) 43 self.max_x = max(self.max_x, cx + radius) 44 self.min_y = min(self.min_y, cy - radius) 45 self.max_y = max(self.max_y, cy + radius) 46 47 self.width = self.max_x - self.min_x 48 self.height = self.max_y - self.min_y 49 self.margin = max(self.width, self.height) * 0.1 or 1 50 self.x_range = self.width + 2 * self.margin 51 self.y_range = self.height + 2 * self.margin 52 53 def _init_figure(self): 54 aspect_ratio = self.x_range / self.y_range 55 if self.x_range <= self.y_range: 56 fig_width = self.min_size / 100 57 fig_height = fig_width / aspect_ratio 58 else: 59 fig_height = self.min_size / 100 60 fig_width = fig_height * aspect_ratio 61 62 if self.max_size is not None and self.max_size > 0: 63 if fig_width * 100 > self.max_size: 64 fig_width = self.max_size / 100 65 if fig_height * 100 > self.max_size: 66 fig_height = self.max_size / 100 67 68 self.fig, self.ax = plt.subplots(figsize=(fig_width, fig_height), dpi=100) 69 self.ax.set_xlim(self.min_x - self.margin, self.max_x + self.margin) 70 self.ax.set_ylim(self.min_y - self.margin, self.max_y + self.margin) 71 self.ax.set_aspect(âequalâ) 72 self.ax.axis(âoffâ) 73 74 def _draw_segment(self, shape, linestyle): 75 p1, p2 = shape.get(âpointsâ, []) 76 if p1 in self.points and p2 in self.points: 77 x1, y1 = self.points[p1] 78 x2, y2 = self.points[p2] 79 self.ax.plot([x1, x2], [y1, y2], linestyle=linestyle, 80 color=âblackâ, linewidth=self.linewidth) 81 82 def _draw_line(self, shape, linestyle): 83 p1, p2 = shape.get(âpointsâ, []) 84 if p1 in self.points and p2 in self.points: 85 x1, y1 = self.points[p1] 86 x2, y2 = self.points[p2] 87 dx, dy = x2 - x1, y2 - y1 88 boundary_points = [] 89 90 if abs(dx) > 1e-9: 91 for x in self.ax.get_xlim(): 92 y = y1 + (x - x1) * dy / dx 93 if self.ax.get_ylim()[0] <= y <= self.ax.get_ylim()[1]: 94 boundary_points.append((x, y)) 95 96 if abs(dy) > 1e-9: 97 for y in self.ax.get_ylim(): 98 x = x1 + (y - y1) * dx / dy 99 if self.ax.get_xlim()[0] <= x <= self.ax.get_xlim()[1]: 100 boundary_points.append((x, y)) 101 102 if len(boundary_points) >= 2: 103 p1, p2 = boundary_points[:2] 104 self.ax.plot([p1[0], p2[0]], [p1[1], p2[1]], linestyle=linestyle, 105 color=âblackâ, linewidth=self.linewidth) 106 107 def _draw_circle(self, shape, linestyle): 108 center = shape.get(âcenterâ) 109 radius = shape.get(âradiusâ, 1) 110 if center in self.points: 111 cx, cy = self.points[center] 112 circle = patches.Circle((cx, cy), radius, fill=False, edgecolor=âblackâ, 113 linestyle=linestyle, linewidth=self.linewidth) 114 self.ax.add_patch(circle) 115 116 def _draw_shapes(self): 117 style_map = âsolidâ: â-â, âdashedâ: â--â 118 for shape in self.shapes: 119 shape_type = shape.get(âtypeâ) 120 style = shape.get(âstyleâ, âsolidâ) 121 linestyle = style_map.get(style, â-â) 122 123 if shape_type == âsegmentâ: 124 self._draw_segment(shape, linestyle) 125 elif shape_type == âlineâ: 126 self._draw_line(shape, linestyle) 127 elif shape_type == âcircleâ: 128 self._draw_circle(shape, linestyle) 129 130 def _draw_points(self): 131 for name, (x, y) in self.points.items(): 132 if name != "": 133 self.ax.scatter(x, y, s=20, c=âblackâ, zorder=5) 134 self.ax.annotate(name, (x, y), xytext=(3, 3), textcoords=âoffset pointsâ, 135 fontsize=self.fontsize, 136 fontname=self.fontname) 137 else: 138 pass 139 140 def _draw(self): 141 with _PLOT_LOCK: 142 try: 143 self._init_figure() 144 self._draw_shapes() 145 if self.draw_points: 146 self._draw_points() 147 plt.tight_layout() 148 149 buf = io.BytesIO() 150 self.fig.savefig(buf, format=âpngâ, dpi=100, bbox_inches=âtightâ) 151 buf.seek(0) 152 pil_image = Image.open(buf).convert(âRGBâ) 153 return pil_image 154 finally: 155 if self.fig: 156 plt.close(self.fig) 157 158 def draw_geometry(meta_data, min_size=512, max_size=1024, draw_points=True, return_none_with_error=True): 159 """ 160 Draw geometry from metadata. 161 162 Args: 163 meta_data (dict): Points and shapes. 164 min_size (int): Minimum image side length. 165 max_size (int): Maximum image side length in pixels. 166 draw_points (bool): Whether to draw point markers and labels. 167 return_none_with_error (bool): Return None on error if True; otherwise raise. 168 169 Returns: 170 PIL.Image.Image | None: Rendered image or None on failure. 171 """ 172 try: 173 drawer = _GeometryDrawer(meta_data, min_size=min_size, max_size=max_size, draw_points=draw_points) 174 return drawer._draw() 175 except Exception as e: 176 if not return_none_with_error: 177 raise e 178 else: 179 return None G.2 Implementation Detail of Toolbox 1 class Geometry: 2 def __init__(self, meta_data=None): 3 self.meta_data = meta_data 4 5 def _get_coord(self, p: str): 6 """Return the coordinate of point p.""" 7 return self.meta_data["points"][p] 8 9 def _add_point(self, coord, name: str): 10 """Register a named point in meta_data.""" 11 self.meta_data["points"][name] = coord 12 return name 13 14 def _line_intersection(self, A, B, C, D): 15 """Return the intersection of lines AB and CD.""" 16 ax, ay = self._get_coord(A) 17 bx, by = self._get_coord(B) 18 cx, cy = self._get_coord(C) 19 dx, dy = self._get_coord(D) 20 21 denom = (bx-ax) * (dy-cy) - (by-ay) * (dx-cx) 22 if abs(denom) < 1e-9: 23 raise ValueError("Lines are parallel or coincident, no unique intersection point.") 24 25 t = ((cx-ax) * (dy-cy) - (cy-ay) * (dx-cx)) / denom 26 return ax + t * (bx-ax), ay + t * (by-ay) 27 28 def _in_segment(self, Pxy, A, B): 29 """Check whether point Pxy lies on segment AB.""" 30 px, py = Pxy 31 ax, ay = self._get_coord(A) 32 bx, by = self._get_coord(B) 33 34 if abs((px-ax) * (by-ay) - (py-ay) * (bx-ax)) > 1e-9: 35 return False 36 return (px-ax) * (px-bx) + (py-ay) * (py-by) <= 1e-9 37 38 def connect_points(self, linear: tuple): 39 """Append a line/segment shape from two existing points.""" 40 type, point1, point2 = linear 41 assert type in ("line", "segment"), "Unsupported linear type: ".format(type) 42 assert point1 in self.meta_data["points"], "Point not found in meta_data. Available points ".format(point1, list(self.meta_data["points"].keys())) 43 assert point2 in self.meta_data["points"], "Point not found in meta_data. Available points ".format(point2, list(self.meta_data["points"].keys())) 44 self.meta_data["shapes"].append( 45 "type": type, 46 "points": [point1, point2], 47 "style": "dashed" 48 ) 49 50 def draw_intersection_point(self, linear1: tuple, linear2: tuple, name: str): 51 """Draw an intersection point of two linear elements.""" 52 if name in self.meta_data["points"]: 53 raise ValueError("Point name â already exists in meta_data. Please choose a different name.".format(name)) 54 55 t1, A1, B1 = linear1 56 t2, A2, B2 = linear2 57 P = self._line_intersection(A1, B1, A2, B2) 58 ok1 = (t1 == "line") or (t1 == "segment" and self._in_segment(P, A1, B1)) 59 ok2 = (t2 == "line") or (t2 == "segment" and self._in_segment(P, A2, B2)) 60 assert ok1 and ok2, "No intersection point found for the given linear elements, linear1: , linear2: ".format(linear1, linear2) 61 self._add_point([P[0], P[1]], name=name) 62 63 def draw_segment(self, point1: str, point2: str): 64 self.connect_points(("segment", point1, point2)) 65 66 def draw_perpendicular_to_linear(self, point: str, linear: tuple, name: str): 67 """Draw a perpendicular from point to a linear element and add the foot point.""" 68 if name in self.meta_data["points"]: 69 raise ValueError("Point name â already exists in meta_data. Please choose a different name.".format(name)) 70 71 t, A, B = linear 72 px, py = self._get_coord(point) 73 ax, ay = self._get_coord(A) 74 bx, by = self._get_coord(B) 75 dx, dy = bx - ax, by - ay 76 assert dx != 0 or dy != 0, "target linear element cannot be a degenerate point, A: , B: ".format(A, B) 77 apx, apy = px - ax, py - ay 78 L2 = dx * dx + dy * dy 79 t0 = (apx * dx + apy * dy) / L2 80 hx = ax + t0 * dx 81 hy = ay + t0 * dy 82 H = self._add_point([hx, hy], name=name) 83 self.connect_points(("segment", point, H)) H Prompts H.1 Prompt for MetaConverter Prompt for MetaConverter SYSTEM PROMPT: You are an expert in geometric figure recognition, skilled at extracting configuration information from geometry problem statements and, without solving the problem, converting the figure in the problem image into a JSON-formatted geometric meta description. Please strictly follow the rules below to complete the task: USER PROMPT: [Task Objective] Based on the problem statement text and the problem image, extract all key points and geometric relationships, and output JSON meta information representing the figure structure. There is no need to solve numerical values or provide proofs. The extracted meta information should remain as consistent with the original image as possible. [Reasoning Requirements] 1. Analyze the textual information in the problem statement step by step and, together with the image, determine the coordinates of each point and the geometric objects to be drawn. 2. Assign reasonable coordinates according to the image layout, keeping geometric relationships correct: - Prefer integers or simple fractions during reasoning; when outputting JSON, convert fractions to floating-point numbers (keep up to 3 decimal places). - For points and shapes whose positions are not explicitly specified in the problem statement, preferentially choose ordinary positions that roughly match the original layout so the overall figure resembles the original. Avoid placing such points or shapes in obviously special positions (for example exact midpoints, perpendicular feet, circle centers, or alignments that force strict parallelism/perpendicularity), unless the problem statement explicitly requires it. - For geometric relationships that cannot be directly deduced or are not obtainable by simple calculations, you may choose not to use them to draw the figure. Coordinates for the involved points may be determined based on the image so that the reconstructed figure resembles the original; exact consistency is not required. - The reconstructed figure should match the original in structure and layout as closely as possible. Do not draw lines or shapes that are not present in the original image; conversely, every visible point, line, or other shape in the original image must be reflected in the reconstructed meta information. 3. Coordinate convention: with respect to the image, right is the positive x direction and up is the positive y direction. 4. Point naming must be combinations of letters, digits, apostrophes, and underscores (for example A, B Ⲡ, O 1 ), and names should be kept concise. Avoid overly complex names such as A Ⲡ, B 30 (multiple numbers), V 1,1 , P Ⲡ0 , etc. 5. The final output must be valid JSON, and no explanatory text is allowed inside the JSON. [JSON Output Structure] The output must follow the following format (where âpointsâ maps point names to [x, y] coordinates, and "shapes" lists geometric objects; see the geometry types below for details): âjson "points": "<pointName1>": [<x1>, <y1>], ... , "shapes": [ <shape1>, ... ] Be sure to include the âjson and â markers to ensure the output is a valid JSON code block. Otherwise the output cannot be parsed. [Supported Geometric Figure Types] Notes: - All geometric objects in JSON are represented as objects and must include a âtypeâ field specifying the object type. - All fields that represent points must use point-name strings (for example âAâ, âB 1 â, âC Ⲡâ). - All points lists must be arrays of strings. - The âstyleâ field accepts only two string values: âsolidâ or âdashedâ. 1) segment - Description: a line segment connecting two endpoints. - Required fields: - âtypeâ: âsegmentâ - âpointsâ: [âstartPointNameâ, âendPointNameâ] - âstyleâ: âsolidâ | âdashedâ 2) line - Description: an infinite straight line determined by two points. - Required fields: - âtypeâ: âlineâ - âpointsâ: [âpointName1â, âpointName2â] - âstyleâ: âsolidâ | âdashedâ 3) circle - Description: a circle defined by its center and radius. - Required fields: - âtypeâ: âcircleâ - âcenterâ: âcenterPointNameâ - âradiusâ: number - âstyleâ: "solid" | "dashed" Reminders: - All numeric values must be numeric; string representations of numbers are not accepted. - Ensure all points referenced in the âshapesâ list are defined in the âpointsâ dictionary. - Ensure that all necessary geometric figures are included in the âshapesâ list; avoid defining only points while forgetting to define the geometric objects that connect them. - Please strictly adhere to the original image content: do not introduce any lines or shapes that do not exist in the original image; likewise, every line or shape visible in the original image must be represented. [Your Task] Following the requirements above, and based on the following problem statement text and problem image, analyze the statement step by step, infer coordinates for each vertex of the geometric figure, and then output the resulting meta information in valid JSON format. H.2 Prompt for MetaJudge Prompt for MetaJudge SYSTEM PROMPT: You are a professional geometry expert responsible for evaluating whether a [Reconstructed Image] of a geometry problem is reasonable with respect to the [Question Image] and the [Question Text]. Please do not solve the problem; simply determine whether the reconstructed image is rational. Follow the evaluation steps strictly as outlined below: USER PROMPT: [Evaluation Steps] Step 1: Topological Comparison (Ignore Question Text) Directly compare the geometric structure (shape types, point naming, connection relationships, relative positions) of the Question Image and the Reconstructed Image. - Judge as Rational ( False): - The topological structure is identical. - The Reconstructed Image is simply a rotation, translation, reflection, or scaling (congruent or similarity transformation) of the Question Image while preserving all of the position relationships between points and shapes. - Judge as Irrational ( True): - Inconsistent Points: The Reconstructed Image misses points from the Question Image; its point labels are inconsistent with the Question Image, or the positions of labeled points do not match the Question Image (e.g., intersections between segments or circles are marked on non-intersection points; points that should be on a shape like segment or circle significantly deviate from that shape or are marked on a different shape). - Isolated points: The Reconstructed Image has any labeled point that is an isolated point, meaning it does not lie on any line or circle. - Inconsistent Connections: The Reconstructed Image has connections not present in the Question Image, or is missing connections that exist in the Question Image (excluding auxiliary markings like angles or perpendicularity). Step 2: Question Constraint Verification (When structural differences exist) If the Reconstructed Image and the Question Image do not satisfy the âstructural consistencyâ mentioned above, verification must be performed in conjunction with the [Question Text]: - Judge as Rational ( False): - The Reconstructed Image fully satisfies the explicit geometric constraints given in the question (e.g., a point lying on a specific segment, parallelism, perpendicularity, proportional relationships, etc.). - Tolerance for Specialization: If the question does not specify a particular position for a point/line, and the Reconstructed Image places it in a special position (e.g., midpoint, angle bisector), it is considered rational as long as it does not violate known conditions. - Visual Tolerance: Maintain leniency toward qualitative errors such as segmentsâ lengths and anglesâ degrees. Unless there is an obvious qualitative violation (e.g., an acute angle drawn as obtuse, equal segments having significantly different lengths, or a midpoint being clearly offset), it is considered satisfied. - Extra Point Tolerance: If the Reconstructed Image labels points not mentioned in the question, it is considered rational as long as it does not violate known conditions. - Judge as Irrational ( True): - Violation of Constraints: The Reconstructed Image violates any explicit geometric relationship described in the question. - Information Missing: Differences exist between the two images, and the question text provides no geometric description to verify them. [Output Requirements] 1. Analysis Process: Briefly explain the basis of your judgment. 2. Final Conclusion: Output the judgment result in the very last line. - True: Represents irrational (to be filtered). - False: Represents rational (to be retained). Note: Strictly adhere to the LaTeX formatting requirements. Do not change the case, add spaces, or include extra decorations (e.g., do not output True or False). [Question Text] <QUESTION_TEXT> [Question Image] <QUESTION_IMAGE> [Reconstructed Image] <RECONSTRUCTED_IMAGE> Note again: please DO NOT solve the problem; simply determine whether the reconstructed image is rational. Be a strict critic, not a helper. If you suspect any part of it is irrational, please decisively judge it as irrational and output True. Now, please begin your evaluation: H.3 Prompt for MetaReasoner to Implement Multimodal Reasoning Prompt for MetaReasoner to Implement Multimodal Reasoning SYSTEM PROMPT: You are an expert in plane geometry problem solving. Your task is to perform rigorous and coherent geometric reasoning based on the problem description and the geometric image, and to provide a complete solution process and final conclusion. You can use a âGeometry Sketchpadâ to assist your reasoning. The sketchpad is operated through a function interface named geometry, which can construct auxiliary lines, intersection points, and perpendicular lines on the figure, but cannot directly read or modify the original image. USER PROMPT: [General Principles] - Use the Geometry Sketchpad only when it is truly necessary to construct auxiliary lines; do not call tools without purpose. - Once you call a tool, all subsequent reasoning must continue based on the updated figure. [Problem-Solving Workflow] 1. <think> Reasoning - Analyze the problem conditions and derive geometric relationships. - Decide whether auxiliary constructions are needed and whether the Geometry Sketchpad should be used. 2. <tool_call> Drawing (if needed) - Use it only when auxiliary constructions or figure updates are needed. - The <tool_call> block must contain only Python tool-call code for the Geometry Sketchpad and nothing else. 3. <answer> Conclusion - Provide the final answer or proof conclusion inside <answer> ...</answer>. [Available Geometry Sketchpad Functions] geometry.draw_segment(start_point_name: str, end_point_name: str) - Function: Connect two points to draw a segment. geometry.draw_intersection_point(linear1: linear, linear2: linear, new_point_name: str) - Function: Compute the intersection of two lines/segments and name it new_point_name. - Parameters: linear is defined as (âlineâ/âsegmentâ, point_A, point_B). - Note: This function only adds a point. If you need a segment from an endpoint to the intersection, call draw_segment additionally. geometry.draw_perpendicular_to_linear(start_point: str, target_linear: linear, foot_point_name: str) - Function: Draw a perpendicular from start_point to target_linear and name the foot point as foot_point_name. [Drawing Rules] - Newly constructed points must not overwrite existing points. - Once a tool call modifies the figure, subsequent reasoning should be based on the updated figure (including new auxiliary lines). Please start solving the problem. H.4 Prompt for MetaReasoner to Implement Text-only Reasoning Prompt for MetaReasoner to Implement Text-only Reasoning SYSTEM PROMPT: You are a senior expert in plane geometry proficient in problem-solving. Your task is to perform rigorous and coherent geometric reasoning based on the given geometric image and problem description, providing detailed solution steps and conclusions. You should simulate human problem-solving thinking: deeply analyze known conditions, prudently construct auxiliary lines, keenly capture geometric correlations, and finally provide an accurate answer or a rigorous proof. USER PROMPT: After the reasoning is finished, provide the final answer or proof conclusion in the <answer> ...</answer> tags. Now, please start solving the following problem according to the above specifications.