{"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/ai-feynman-2-0-pareto-optimal-symbolic","title":"AI Feynman 2.0: Pareto-optimal symbolic regression exploiting graph modularity","arxiv_id":"2006.10782","date":"2020-06-18","proceeding":"NeurIPS 2020 12","authors":["Silviu-Marian Udrescu","Andrew Tan","Jiahai Feng","Orisvaldo Neto","Tailin Wu","Max Tegmark"],"abstract":"We present an improved method for symbolic regression that seeks to fit data to formulas that are Pareto-optimal, in the sense of having the best accuracy for a given complexity. It improves on the previous state-of-the-art by typically being orders of magnitude more robust toward noise and bad data, and also by discovering many formulas that stumped previous methods. We develop a method for discovering generalized symmetries (arbitrary modularity in the computational graph of a formula) from gradient properties of a neural network fit. We use normalizing flows to generalize our symbolic regression method to probability distributions from which we only have samples, and employ statistical hypothesis testing to accelerate robust brute-force search.","url_abs":"https://arxiv.org/abs/2006.10782v2","url_pdf":"https://arxiv.org/pdf/2006.10782v2.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":"ai-feynman-2-0-pareto-optimal-symbolic","repo_url":"https://github.com/SJ001/AI-Feynman","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"ai-feynman-2-0-pareto-optimal-symbolic","repo_url":"https://github.com/zykhoo/ai-feynman","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"symbolic-regression","task_name":"Symbolic Regression"},{"task_slug":"hypothesis-testing","task_name":"Two-sample testing"},{"task_slug":"regression-1","task_name":"regression"}],"methods":[{"method_slug":"normalizing-flows","method_name":"Normalizing Flows"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2006.10782","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2006.10782"}},"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/zykhoo/ai-feynman","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/SJ001/AI-Feynman","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran_draft_wrong":4,"ran_violates":1,"unverified":15},"by_repo_kind":{"listed":{"samples":20,"ran":5,"repositories":2}},"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":0,"samples":[{"code_sha256_prefix":"45e77154a33a4ee2","entry":"draw_samples","repo":"zykhoo/ai-feynman","repo_kind":"listed","path":"aifeynman/S_gradient_decomposition.py","file_url":"https://github.com/zykhoo/ai-feynman/blob/HEAD/aifeynman/S_gradient_decomposition.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"45e77154a33a4ee2"}},{"code_sha256_prefix":"3f393d2c3c8a8dd6","entry":"filter_decompositions_relative_scoring","repo":"zykhoo/ai-feynman","repo_kind":"listed","path":"aifeynman/S_gradient_decomposition.py","file_url":"https://github.com/zykhoo/ai-feynman/blob/HEAD/aifeynman/S_gradient_decomposition.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"3f393d2c3c8a8dd6"}},{"code_sha256_prefix":"252c1aad46c908fa","entry":"powerset_atleast_2","repo":"zykhoo/ai-feynman","repo_kind":"listed","path":"aifeynman/S_gradient_decomposition.py","file_url":"https://github.com/zykhoo/ai-feynman/blob/HEAD/aifeynman/S_gradient_decomposition.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"252c1aad46c908fa"}},{"code_sha256_prefix":"96167167f766b306","entry":"score_consistency","repo":"zykhoo/ai-feynman","repo_kind":"listed","path":"aifeynman/S_gradient_decomposition.py","file_url":"https://github.com/zykhoo/ai-feynman/blob/HEAD/aifeynman/S_gradient_decomposition.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"96167167f766b306"}},{"code_sha256_prefix":"ec79e09961e5f71d","entry":"signal_to_noise","repo":"zykhoo/ai-feynman","repo_kind":"listed","path":"aifeynman/S_gradient_decomposition.py","file_url":"https://github.com/zykhoo/ai-feynman/blob/HEAD/aifeynman/S_gradient_decomposition.py","link_basis":"first_harvest_node","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"ec79e09961e5f71d"}},{"code_sha256_prefix":"4a9e454bb7c407bf","entry":"NN_eval","repo":"SJ001/AI-Feynman","repo_kind":"listed","path":"aifeynman/S_NN_eval.py","file_url":"https://github.com/SJ001/AI-Feynman/blob/HEAD/aifeynman/S_NN_eval.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"4a9e454bb7c407bf"}},{"code_sha256_prefix":"1f12c200481a3f18","entry":"NN_train","repo":"SJ001/AI-Feynman","repo_kind":"listed","path":"aifeynman/S_NN_train.py","file_url":"https://github.com/SJ001/AI-Feynman/blob/HEAD/aifeynman/S_NN_train.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"1f12c200481a3f18"}},{"code_sha256_prefix":"7c2df61572f9e3c0","entry":"RPN_to_eq","repo":"SJ001/AI-Feynman","repo_kind":"listed","path":"aifeynman/RPN_to_eq.py","file_url":"https://github.com/SJ001/AI-Feynman/blob/HEAD/aifeynman/RPN_to_eq.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"7c2df61572f9e3c0"}},{"code_sha256_prefix":"f71b2f2208f359cc","entry":"RPN_to_pytorch","repo":"SJ001/AI-Feynman","repo_kind":"listed","path":"aifeynman/RPN_to_pytorch.py","file_url":"https://github.com/SJ001/AI-Feynman/blob/HEAD/aifeynman/RPN_to_pytorch.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"f71b2f2208f359cc"}},{"code_sha256_prefix":"aefecb64907f3e4f","entry":"add_bf_on_numbers_on_pareto","repo":"SJ001/AI-Feynman","repo_kind":"listed","path":"aifeynman/S_add_bf_on_numbers_on_pareto.py","file_url":"https://github.com/SJ001/AI-Feynman/blob/HEAD/aifeynman/S_add_bf_on_numbers_on_pareto.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"aefecb64907f3e4f"}},{"code_sha256_prefix":"799d88fb2639c6a0","entry":"add_snap_expr_on_pareto","repo":"SJ001/AI-Feynman","repo_kind":"listed","path":"aifeynman/S_add_snap_expr_on_pareto.py","file_url":"https://github.com/SJ001/AI-Feynman/blob/HEAD/aifeynman/S_add_snap_expr_on_pareto.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"799d88fb2639c6a0"}},{"code_sha256_prefix":"9198af899b3208cb","entry":"add_sym_on_pareto","repo":"SJ001/AI-Feynman","repo_kind":"listed","path":"aifeynman/S_add_sym_on_pareto.py","file_url":"https://github.com/SJ001/AI-Feynman/blob/HEAD/aifeynman/S_add_sym_on_pareto.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"9198af899b3208cb"}},{"code_sha256_prefix":"5139d3e67c91cdd3","entry":"brute_force_comp","repo":"SJ001/AI-Feynman","repo_kind":"listed","path":"aifeynman/S_brute_force_comp.py","file_url":"https://github.com/SJ001/AI-Feynman/blob/HEAD/aifeynman/S_brute_force_comp.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"5139d3e67c91cdd3"}},{"code_sha256_prefix":"947b21e6e1a2cb74","entry":"brute_force_gen_sym","repo":"SJ001/AI-Feynman","repo_kind":"listed","path":"aifeynman/S_brute_force_gen_sym.py","file_url":"https://github.com/SJ001/AI-Feynman/blob/HEAD/aifeynman/S_brute_force_gen_sym.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"947b21e6e1a2cb74"}},{"code_sha256_prefix":"c8434b02a9ba199f","entry":"brute_force_number","repo":"SJ001/AI-Feynman","repo_kind":"listed","path":"aifeynman/S_brute_force_number.py","file_url":"https://github.com/SJ001/AI-Feynman/blob/HEAD/aifeynman/S_brute_force_number.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"c8434b02a9ba199f"}},{"code_sha256_prefix":"6fc741317fe3c443","entry":"evaluate_derivatives","repo":"SJ001/AI-Feynman","repo_kind":"listed","path":"aifeynman/S_NN_get_gradients.py","file_url":"https://github.com/SJ001/AI-Feynman/blob/HEAD/aifeynman/S_NN_get_gradients.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"6fc741317fe3c443"}},{"code_sha256_prefix":"05a477901acb3736","entry":"evaluate_derivatives_andrew","repo":"zykhoo/ai-feynman","repo_kind":"listed","path":"aifeynman/S_gradient_decomposition.py","file_url":"https://github.com/zykhoo/ai-feynman/blob/HEAD/aifeynman/S_gradient_decomposition.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"05a477901acb3736"}},{"code_sha256_prefix":"a081d0e97957a1f7","entry":"intify","repo":"SJ001/AI-Feynman","repo_kind":"listed","path":"aifeynman/S_add_snap_expr_on_pareto.py","file_url":"https://github.com/SJ001/AI-Feynman/blob/HEAD/aifeynman/S_add_snap_expr_on_pareto.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"a081d0e97957a1f7"}},{"code_sha256_prefix":"f194288004a3dba8","entry":"rmse_loss","repo":"SJ001/AI-Feynman","repo_kind":"listed","path":"aifeynman/S_NN_eval.py","file_url":"https://github.com/SJ001/AI-Feynman/blob/HEAD/aifeynman/S_NN_eval.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"f194288004a3dba8"}},{"code_sha256_prefix":"21905df6db18ffa8","entry":"visualize_distribution","repo":"zykhoo/ai-feynman","repo_kind":"listed","path":"aifeynman/S_gradient_decomposition.py","file_url":"https://github.com/zykhoo/ai-feynman/blob/HEAD/aifeynman/S_gradient_decomposition.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"21905df6db18ffa8"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}