{"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/convolutional-differentiable-logic-gate","title":"Convolutional Differentiable Logic Gate Networks","arxiv_id":"2411.04732","date":"2024-11-07","proceeding":null,"authors":["Felix Petersen","Hilde Kuehne","Christian Borgelt","Julian Welzel","Stefano Ermon"],"abstract":"With the increasing inference cost of machine learning models, there is a growing interest in models with fast and efficient inference. Recently, an approach for learning logic gate networks directly via a differentiable relaxation was proposed. Logic gate networks are faster than conventional neural network approaches because their inference only requires logic gate operators such as NAND, OR, and XOR, which are the underlying building blocks of current hardware and can be efficiently executed. We build on this idea, extending it by deep logic gate tree convolutions, logical OR pooling, and residual initializations. This allows scaling logic gate networks up by over one order of magnitude and utilizing the paradigm of convolution. On CIFAR-10, we achieve an accuracy of 86.29% using only 61 million logic gates, which improves over the SOTA while being 29x smaller.","url_abs":"https://arxiv.org/abs/2411.04732v1","url_pdf":"https://arxiv.org/pdf/2411.04732v1.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":"convolutional-differentiable-logic-gate","repo_url":"https://github.com/felix-petersen/difflogic","is_official":1,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2411.04732","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2411.04732"}},"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":"deterministic:regex_extraction","url":"https://github.com/Felix-Petersen/difflogic","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/felix-petersen/difflogic","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"unverified":8},"by_repo_kind":{"official":{"samples":8,"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":"f27013b8b4a2c958","entry":"bin_op","repo":"Felix-Petersen/difflogic","repo_kind":"official","path":"difflogic/functional.py","file_url":"https://github.com/Felix-Petersen/difflogic/blob/HEAD/difflogic/functional.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":"f27013b8b4a2c958"}},{"code_sha256_prefix":"4d30808257853f03","entry":"bin_op_s","repo":"Felix-Petersen/difflogic","repo_kind":"official","path":"difflogic/functional.py","file_url":"https://github.com/Felix-Petersen/difflogic/blob/HEAD/difflogic/functional.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":"4d30808257853f03"}},{"code_sha256_prefix":"9472ecfd2d5ea169","entry":"get_int","repo":"Felix-Petersen/difflogic","repo_kind":"official","path":"experiments/mnist_dataset.py","file_url":"https://github.com/Felix-Petersen/difflogic/blob/HEAD/experiments/mnist_dataset.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":"9472ecfd2d5ea169"}},{"code_sha256_prefix":"02094a497a942f48","entry":"get_unique_connections","repo":"Felix-Petersen/difflogic","repo_kind":"official","path":"difflogic/functional.py","file_url":"https://github.com/Felix-Petersen/difflogic/blob/HEAD/difflogic/functional.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":"02094a497a942f48"}},{"code_sha256_prefix":"99e02a80c7631370","entry":"input_dim_of_dataset","repo":"Felix-Petersen/difflogic","repo_kind":"official","path":"experiments/main_baseline.py","file_url":"https://github.com/Felix-Petersen/difflogic/blob/HEAD/experiments/main_baseline.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":"99e02a80c7631370"}},{"code_sha256_prefix":"2de711716d6b955a","entry":"num_classes_of_dataset","repo":"Felix-Petersen/difflogic","repo_kind":"official","path":"experiments/main_baseline.py","file_url":"https://github.com/Felix-Petersen/difflogic/blob/HEAD/experiments/main_baseline.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":"2de711716d6b955a"}},{"code_sha256_prefix":"8c947dbac76cd1ab","entry":"read_label_file","repo":"Felix-Petersen/difflogic","repo_kind":"official","path":"experiments/mnist_dataset.py","file_url":"https://github.com/Felix-Petersen/difflogic/blob/HEAD/experiments/mnist_dataset.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":"8c947dbac76cd1ab"}},{"code_sha256_prefix":"bffc681cd2395ae9","entry":"read_sn3_pascalvincent_tensor","repo":"Felix-Petersen/difflogic","repo_kind":"official","path":"experiments/mnist_dataset.py","file_url":"https://github.com/Felix-Petersen/difflogic/blob/HEAD/experiments/mnist_dataset.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":"bffc681cd2395ae9"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}