{"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/spright-a-fast-and-robust-framework-for","title":"SPRIGHT: A Fast and Robust Framework for Sparse Walsh-Hadamard Transform","arxiv_id":"1508.06336","date":"2015-08-26","proceeding":null,"authors":["Xiao Li","Joseph K. Bradley","Sameer Pawar","Kannan Ramchandran"],"abstract":"We consider the problem of computing the Walsh-Hadamard Transform (WHT) of\nsome $N$-length input vector in the presence of noise, where the $N$-point\nWalsh spectrum is $K$-sparse with $K = {O}(N^{\\delta})$ scaling sub-linearly in\nthe input dimension $N$ for some $0<\\delta<1$. Over the past decade, there has\nbeen a resurgence in research related to the computation of Discrete Fourier\nTransform (DFT) for some length-$N$ input signal that has a $K$-sparse Fourier\nspectrum. In particular, through a sparse-graph code design, our earlier work\non the Fast Fourier Aliasing-based Sparse Transform (FFAST) algorithm computes\nthe $K$-sparse DFT in time ${O}(K\\log K)$ by taking ${O}(K)$ noiseless samples.\nInspired by the coding-theoretic design framework, Scheibler et al. proposed\nthe Sparse Fast Hadamard Transform (SparseFHT) algorithm that elegantly\ncomputes the $K$-sparse WHT in the absence of noise using ${O}(K\\log N)$\nsamples in time ${O}(K\\log^2 N)$. However, the SparseFHT algorithm explicitly\nexploits the noiseless nature of the problem, and is not equipped to deal with\nscenarios where the observations are corrupted by noise. Therefore, a question\nof critical interest is whether this coding-theoretic framework can be made\nrobust to noise. Further, if the answer is yes, what is the extra price that\nneeds to be paid for being robust to noise? In this paper, we show, quite\ninterestingly, that there is {\\it no extra price} that needs to be paid for\nbeing robust to noise other than a constant factor. In other words, we can\nmaintain the same sample complexity ${O}(K\\log N)$ and the computational\ncomplexity ${O}(K\\log^2 N)$ as those of the noiseless case, using our SParse\nRobust Iterative Graph-based Hadamard Transform (SPRIGHT) algorithm.","url_abs":"http://arxiv.org/abs/1508.06336v1","url_pdf":"http://arxiv.org/pdf/1508.06336v1.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":"spright-a-fast-and-robust-framework-for","repo_url":"https://github.com/aditya-sengupta/SparseTransforms.jl","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"spright-a-fast-and-robust-framework-for","repo_url":"https://github.com/aditya-sengupta/spright","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"none","reach":null},{"paper_slug":"spright-a-fast-and-robust-framework-for","repo_url":"https://github.com/amirmohan/epistatic-net","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1508.06336","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1508.06336"}},"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/amirmohan/epistatic-net","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/aditya-sengupta/SparseTransforms.jl","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/aditya-sengupta/spright","reach":null}],"summary":{"unverified":4},"by_repo_kind":{"listed":{"samples":4,"ran":0,"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":"d1eff80617cd2a3e","entry":"blocks","repo":"amirmohan/epistatic-net","repo_kind":"listed","path":"utils.py","file_url":"https://github.com/amirmohan/epistatic-net/blob/HEAD/utils.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":"d1eff80617cd2a3e"}},{"code_sha256_prefix":"ea5ab84f29791453","entry":"crop_to_window","repo":"amirmohan/epistatic-net","repo_kind":"listed","path":"utils.py","file_url":"https://github.com/amirmohan/epistatic-net/blob/HEAD/utils.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":"ea5ab84f29791453"}},{"code_sha256_prefix":"eec8c88da621f888","entry":"left_right_blocks","repo":"amirmohan/epistatic-net","repo_kind":"listed","path":"utils.py","file_url":"https://github.com/amirmohan/epistatic-net/blob/HEAD/utils.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":"eec8c88da621f888"}},{"code_sha256_prefix":"f110a072c67a083b","entry":"singleton_detection_noiseless","repo":"aditya-sengupta/spright","repo_kind":"listed","path":"src/reconstruct.py","file_url":"https://github.com/aditya-sengupta/spright/blob/HEAD/src/reconstruct.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":"f110a072c67a083b"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}