{"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/double-permutation-equivariance-for-knowledge","title":"Double Equivariance for Inductive Link Prediction for Both New Nodes and New Relation Types","arxiv_id":"2302.01313","date":"2023-02-02","proceeding":null,"authors":["Jincheng Zhou","Yucheng Zhang","Jianfei Gao","Yangze Zhou","Bruno Ribeiro"],"abstract":"The task of fully inductive link prediction in knowledge graphs has gained significant attention, with various graph neural networks being proposed to address it. This task presents greater challenges than traditional inductive link prediction tasks with only new nodes, as models must be capable of zero-shot generalization to both unseen nodes and unseen relation types in the inference graph. Despite the development of novel models, a unifying theoretical understanding of their success remains elusive, and the limitations of these methods are not well-studied. In this work, we introduce the concept of double permutation-equivariant representations and demonstrate its necessity for effective performance in this task. We show that many existing models, despite their diverse architectural designs, conform to this framework. However, we also identify inherent limitations in double permutation-equivariant representations, which restrict these models's ability to learn effectively on datasets with varying characteristics. Our findings suggest that while double equivariance is necessary for meta-learning across knowledge graphs from different domains, it is not sufficient. There remains a fundamental gap between double permutation-equivariant models and the concept of foundation models designed to learn patterns across all domains.","url_abs":"https://arxiv.org/abs/2302.01313v8","url_pdf":"https://arxiv.org/pdf/2302.01313v8.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":"double-permutation-equivariance-for-knowledge","repo_url":"https://github.com/purdueminds/isdea","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"inductive-link-prediction","task_name":"Inductive Link Prediction"},{"task_slug":"knowledge-graph-completion","task_name":"Knowledge Graph Completion"},{"task_slug":"knowledge-graphs","task_name":"Knowledge Graphs"},{"task_slug":"link-prediction","task_name":"Link Prediction"},{"task_slug":"logical-reasoning","task_name":"Logical Reasoning"},{"task_slug":"meta-learning","task_name":"Meta-Learning"},{"task_slug":null,"task_name":"Relation"},{"task_slug":"relational-reasoning","task_name":"Relational Reasoning"},{"task_slug":"zero-shot-generalization","task_name":"Zero-shot Generalization"}],"methods":[{"method_slug":"test","method_name":"Test"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2302.01313","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2302.01313"}},"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/purdueminds/isdea","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"unverified":6},"by_repo_kind":{"official":{"samples":6,"ran":0,"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":0,"samples":[{"code_sha256_prefix":"99753818721d4c17","entry":"create_framework_directory","repo":"purdueminds/isdea","repo_kind":"official","path":"ISDEA/src/etexood/loggings.py","file_url":"https://github.com/purdueminds/isdea/blob/HEAD/ISDEA/src/etexood/loggings.py","link_basis":"harvester_set","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":"99753818721d4c17"}},{"code_sha256_prefix":"6b5baf0619d81359","entry":"create_logger","repo":"purdueminds/isdea","repo_kind":"official","path":"ISDEA/src/etexood/loggings.py","file_url":"https://github.com/purdueminds/isdea/blob/HEAD/ISDEA/src/etexood/loggings.py","link_basis":"harvester_set","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":"6b5baf0619d81359"}},{"code_sha256_prefix":"febbc82884e487a6","entry":"fa_mo_tree","repo":"purdueminds/isdea","repo_kind":"official","path":"ISDEA/generate.py","file_url":"https://github.com/purdueminds/isdea/blob/HEAD/ISDEA/generate.py","link_basis":"harvester_set","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":"febbc82884e487a6"}},{"code_sha256_prefix":"2dc7241c82904bed","entry":"gr_tree","repo":"purdueminds/isdea","repo_kind":"official","path":"ISDEA/generate.py","file_url":"https://github.com/purdueminds/isdea/blob/HEAD/ISDEA/generate.py","link_basis":"harvester_set","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":"2dc7241c82904bed"}},{"code_sha256_prefix":"a49dbe7a1a1c291f","entry":"load","repo":"purdueminds/isdea","repo_kind":"official","path":"ISDEA/rename.py","file_url":"https://github.com/purdueminds/isdea/blob/HEAD/ISDEA/rename.py","link_basis":"harvester_set","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":"a49dbe7a1a1c291f"}},{"code_sha256_prefix":"591130e854003d5d","entry":"merge_and_lock","repo":"purdueminds/isdea","repo_kind":"official","path":"ISDEA/generate.py","file_url":"https://github.com/purdueminds/isdea/blob/HEAD/ISDEA/generate.py","link_basis":"harvester_set","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":"591130e854003d5d"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}