{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/unigeo-unifying-geometry-logical-reasoning","title":"UniGeo: Unifying Geometry Logical Reasoning via Reformulating Mathematical Expression","arxiv_id":"2212.02746","date":"2022-12-06","proceeding":null,"authors":["Jiaqi Chen","Tong Li","Jinghui Qin","Pan Lu","Liang Lin","Chongyu Chen","Xiaodan Liang"],"abstract":"Geometry problem solving is a well-recognized testbed for evaluating the high-level multi-modal reasoning capability of deep models. In most existing works, two main geometry problems: calculation and proving, are usually treated as two specific tasks, hindering a deep model to unify its reasoning capability on multiple math tasks. However, in essence, these two tasks have similar problem representations and overlapped math knowledge which can improve the understanding and reasoning ability of a deep model on both two tasks. Therefore, we construct a large-scale Unified Geometry problem benchmark, UniGeo, which contains 4,998 calculation problems and 9,543 proving problems. Each proving problem is annotated with a multi-step proof with reasons and mathematical expressions. The proof can be easily reformulated as a proving sequence that shares the same formats with the annotated program sequence for calculation problems. Naturally, we also present a unified multi-task Geometric Transformer framework, Geoformer, to tackle calculation and proving problems simultaneously in the form of sequence generation, which finally shows the reasoning ability can be improved on both two tasks by unifying formulation. Furthermore, we propose a Mathematical Expression Pretraining (MEP) method that aims to predict the mathematical expressions in the problem solution, thus improving the Geoformer model. Experiments on the UniGeo demonstrate that our proposed Geoformer obtains state-of-the-art performance by outperforming task-specific model NGS with over 5.6% and 3.2% accuracies on calculation and proving problems, respectively.","url_abs":"https://arxiv.org/abs/2212.02746v1","url_pdf":"https://arxiv.org/pdf/2212.02746v1.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"unigeo-unifying-geometry-logical-reasoning","repo_url":"https://github.com/chen-judge/unigeo","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"unigeo-unifying-geometry-logical-reasoning","repo_url":"https://github.com/loganrjmurphy/leaneuclid","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"none","reach":null}],"tasks":[{"task_slug":"geometry-problem-solving","task_name":"Geometry Problem Solving"},{"task_slug":"logical-reasoning","task_name":"Logical Reasoning"},{"task_slug":"math","task_name":"Math"},{"task_slug":"mathematical-reasoning","task_name":"Mathematical Reasoning"}],"methods":[{"method_slug":"absolute-position-encodings","method_name":"Absolute Position Encodings"},{"method_slug":"adam","method_name":"Adam"},{"method_slug":"attention","method_name":"Attention"},{"method_slug":"bpe","method_name":"BPE"},{"method_slug":"dense-connections","method_name":"Dense Connections"},{"method_slug":"dropout","method_name":"Dropout"},{"method_slug":"label-smoothing","method_name":"Label Smoothing"},{"method_slug":"layer-normalization","method_name":"Layer Normalization"},{"method_slug":"linear-layer","method_name":"Linear Layer"},{"method_slug":"multi-head-attention","method_name":"Multi-Head Attention"},{"method_slug":"position-wise-feed-forward-layer","method_name":"Position-Wise Feed-Forward Layer"},{"method_slug":"residual-connection","method_name":"Residual Connection"},{"method_slug":"softmax","method_name":"Softmax"},{"method_slug":"transformer","method_name":"Transformer"}],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/mathematical-reasoning-on-pgps9k","task":"Mathematical Reasoning","dataset":"PGPS9K","model":"Geoformer","rank_in_archive_order":5,"of":6,"metrics":{"Completion accuracy":"35.6"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2212.02746","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2212.02746"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/loganrjmurphy/leaneuclid","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/chen-judge/unigeo","reach":null}],"summary":{"ran":2,"unverified":2},"by_repo_kind":{"official":{"samples":4,"ran":2,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":4,"samples":[{"code_sha256_prefix":"9c59e4a707bd79a0","entry":"VLSeq2SeqLMOutput","repo":"chen-judge/unigeo","repo_kind":"official","path":"Geoformer/src/modeling_t5.py","file_url":"https://github.com/chen-judge/unigeo/blob/HEAD/Geoformer/src/modeling_t5.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"9c59e4a707bd79a0"}},{"code_sha256_prefix":"ac9a419f0e2c2aed","entry":"VisualEmbedding","repo":"chen-judge/unigeo","repo_kind":"official","path":"Geoformer/src/modeling_t5.py","file_url":"https://github.com/chen-judge/unigeo/blob/HEAD/Geoformer/src/modeling_t5.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"ac9a419f0e2c2aed"}},{"code_sha256_prefix":"7e706b7976bf60b1","entry":"JointEncoder","repo":"chen-judge/unigeo","repo_kind":"official","path":"Geoformer/src/modeling_t5.py","file_url":"https://github.com/chen-judge/unigeo/blob/HEAD/Geoformer/src/modeling_t5.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"7e706b7976bf60b1"}},{"code_sha256_prefix":"8f023c7a9fda2532","entry":"VLT5","repo":"chen-judge/unigeo","repo_kind":"official","path":"Geoformer/src/modeling_t5.py","file_url":"https://github.com/chen-judge/unigeo/blob/HEAD/Geoformer/src/modeling_t5.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"8f023c7a9fda2532"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}