{"id":"bef1aacc-1caf-4c16-b02f-e137f358a5dd","arxiv_id":"2606.24521","paper_version":1,"verdict":"UNVERDICTED","confidence":"LOW","novelty_score":5.0,"correctness_risk":"unknown","formal_verification":"none","parameter_count":0,"one_line_summary":"ICSpyLab is the first open Python package implementing invariant coordinate selection with multiple scatter matrices, algorithms, and selection criteria.","lead":"The paper releases ICSpyLab, the first Python package for invariant coordinate selection, a dimensionality reduction method using scatter matrices. Practitioners may use it to add ICS-based clustering or anomaly detection to standard machine-learning pipelines.","discovery_kind":"new_application","skeptic_critique":{"model":"grok-4.3","headline":"Central claim that ICSpyLab is the 'first' dedicated Python ICS package rests on an unverified assertion of no prior implementations.","rationale":"The reader's weakest_assumption already isolates the exact pair of unverified premises (no prior package + correct reproduction). The proposed test directly addresses the 'no prior' half, which is externally checkable and most directly tied to the headline claim of being first. No internal inconsistency or derivation error is visible from the abstract; the concern is purely about external factual grounding of the novelty statement.","tokens_in":1646,"tokens_out":319,"duration_ms":17627,"concrete_test":"Search PyPI, GitHub, and Google Scholar using terms 'invariant coordinate selection' OR 'ICS' Python (with date filter before paper submission); inspect any candidate repositories for joint diagonalization of scatter matrices; if a functional prior implementation is found, the novelty claim is falsified.","verdict_should_be":"UNCHANGED","load_bearing_attack":"The abstract and strongest claim position the package as novel by stating 'no dedicated Python implementation of ICS is currently available.' This factual premise is load-bearing for the contribution's value. No search protocol, date cutoff, or enumeration of checked repositories (PyPI, GitHub, scikit-learn ecosystem) is described to support it. If any earlier Python code performed joint diagonalization of two scatter matrices with ICS component selection, the 'first' framing does not hold. The secondary assumption that the released code faithfully reproduces the literature algorithms is also untested in the provided text.","agreement_with_reader":"agree"},"referee_report":{"model":"grok-4.3","summary":"The manuscript introduces ICSpyLab, a Python package for invariant coordinate selection (ICS) based on joint diagonalization of two scatter matrices. It positions the package as the first dedicated Python implementation, offering a collection of scatter matrices, multiple algorithms for invariant components, component-selection criteria, a scikit-learn-compatible estimator interface, detailed documentation, and reproducible examples. The package is released under the MIT license and hosted on GitHub.","tokens_in":1741,"tokens_out":376,"duration_ms":19939,"significance":"If the implementation is correct and the novelty claim holds, ICSpyLab would enable broader integration of ICS into machine-learning pipelines for clustering and anomaly detection, providing a kurtosis-based alternative to variance-driven methods such as PCA. The use of a standard estimator interface and inclusion of reproducible examples are explicit strengths that support usability and verifiability of the software.","major_comments":[{"comment":"Abstract: The claim that 'no dedicated Python implementation of ICS is currently available' is asserted without any description of the search protocol, repositories examined (PyPI, GitHub, scikit-learn ecosystem), or cutoff date. This factual premise is load-bearing for the paper's central positioning of ICSpyLab as a novel contribution.","section":"Abstract"},{"comment":"The manuscript provides no verification (e.g., benchmark comparisons or reproduction of known ICS results on standard datasets) that the implemented joint diagonalization and component-selection steps correctly reproduce the algorithms described in the ICS literature. This is required to substantiate the claim of faithful implementation.","section":"Implementation / Methods"}],"minor_comments":[],"recommendation":"major_revision","confidential_remarks":"This is primarily a software-release manuscript; confirm whether the target journal routinely accepts such contributions or whether the scope is limited to methodological advances."},"author_rebuttal":{"model":"grok-4.3","summary":"We thank the referee for their detailed and constructive comments. We address each major comment below and outline revisions to improve the manuscript's transparency and verifiability.","responses":[{"response":"We acknowledge that the manuscript does not describe the search protocol supporting the novelty claim. We will revise the abstract to include a concise description of the search methodology (repositories examined, search terms, and cutoff date) and add a short methods paragraph detailing this process to substantiate the positioning of ICSpyLab.","revision_made":"yes","referee_comment":"[Abstract] Abstract: The claim that 'no dedicated Python implementation of ICS is currently available' is asserted without any description of the search protocol, repositories examined (PyPI, GitHub, scikit-learn ecosystem), or cutoff date. This factual premise is load-bearing for the paper's central positioning of ICSpyLab as a novel contribution."},{"response":"We agree that explicit verification is necessary to confirm faithful implementation. We will add a new verification subsection (or appendix) presenting benchmark comparisons and reproductions of known ICS results on standard datasets from the literature. This will demonstrate that the joint diagonalization and selection steps match the described algorithms, and we will reference corresponding tests in the package repository.","revision_made":"yes","referee_comment":"[Implementation / Methods] The manuscript provides no verification (e.g., benchmark comparisons or reproduction of known ICS results on standard datasets) that the implemented joint diagonalization and component-selection steps correctly reproduce the algorithms described in the ICS literature. This is required to substantiate the claim of faithful implementation."}],"tokens_in":1265,"tokens_out":351,"duration_ms":16592,"standing_objections":[]},"desk_editor":{"model":"grok-4.3","letter":"ICSpyLab is a Python package for invariant coordinate selection that the authors position as the first dedicated implementation. If that holds, it fills a practical gap by letting people use ICS inside scikit-learn style pipelines for things like clustering or outlier detection.\n\nThe paper does a solid job describing what the package offers: multiple scatter matrices, algorithms for the invariant components, and ways to pick which ones to keep. It sticks to a familiar estimator interface and includes documentation with examples, which makes it easier for practitioners to try out. Releasing under MIT and putting it on GitHub is the right move for adoption.\n\nThe main soft spot is the assertion that no prior Python package existed. The abstract states it directly but gives no details on how they checked PyPI, GitHub, or related libraries, so that part of the novelty rests on an untested claim. The implementation itself isn't described in enough detail here to judge correctness, though the full paper might include tests or comparisons. Since this is software rather than new math, those verification steps matter more than usual.\n\nThis is for statisticians or ML users who already know ICS from the literature and want a ready tool instead of coding it themselves. Someone building pipelines would get value from the examples and interface. It is worth sending to peer review because software that implements established methods still needs checking for accuracy and completeness, even if the underlying technique is not new.","headline":"ICSpyLab is a new Python package for invariant coordinate selection that makes an existing method more accessible in standard ML stacks, provided the implementation and 'first' claim hold up.","tokens_in":2178,"tokens_out":365,"would_cite":false,"duration_ms":17697,"reading_group":"maybe","serious_thinker":"yes","would_accept_peer_review":true},"rs_alignment":null,"lean_confirmation":null,"pith_extraction":{"msc":[],"pacs":[],"model":"grok-4.3","headline":"ICSpyLab supplies the first dedicated Python implementation of invariant coordinate selection.","keywords":["invariant coordinate selection","dimensionality reduction","scatter matrices","joint diagonalization","python package","clustering","anomaly detection"],"falsifier":"An existing Python library that already supplies the same scatter matrices, joint-diagonalization routines, and selection criteria, or a side-by-side numerical check showing that ICSpyLab outputs differ from published ICS results on standard test data.","tokens_in":2532,"feed_emoji":"📦","tokens_out":414,"duration_ms":12951,"temperature":0.7,"pith_summary":"The paper introduces ICSpyLab to make invariant coordinate selection available as a standard tool in Python. ICS performs dimensionality reduction by jointly diagonalizing two scatter matrices to locate directions of extreme generalized kurtosis rather than variance alone. The package supplies multiple scatter matrices, several joint-diagonalization algorithms, and component-selection rules, all wrapped in the common estimator interface used by machine-learning libraries. It includes documentation and reproducible examples so users can insert ICS into existing pipelines for clustering or outlier detection. The release under an open license removes the previous barrier that kept the method outside routine Python workflows.","feed_headline":"Python package delivers first ICS implementation","feed_subtitle":"ICSpyLab adds scatter matrices, diagonalization algorithms and selection criteria to standard machine-learning pipelines.","key_machinery":"Joint diagonalization of two scatter matrices to extract invariant coordinates ordered by generalized kurtosis.","core_discovery":"ICSpyLab is presented as the first Python package that implements invariant coordinate selection through a collection of scatter matrices, algorithms for computing invariant components via joint diagonalization, and criteria for choosing which components to retain, all exposed through a standard estimator interface compatible with machine-learning pipelines.","pith_inferences":[],"forward_implications":[],"fun_headline_variants":["ICSpyLab first Python package for ICS","Python ICS via ICSpyLab scatter matrices","ICSpyLab implements invariant coordinate selection","ICSpyLab adds ICS to ML estimator interface","First Python ICS package with joint diagonalization"],"cache_read_input_tokens":64,"weakest_assumption_plain":"No prior dedicated Python package already performs the full ICS procedure, and the released code reproduces the joint-diagonalization and selection steps described in the existing ICS literature.","fun_headline_variants_meta":{"raw":{"variants":["ICSpyLab first Python package for ICS","Python ICS via ICSpyLab scatter matrices","ICSpyLab implements invariant coordinate selection","ICSpyLab adds ICS to ML estimator interface","First Python ICS package with joint diagonalization"]},"model":"grok-4.3","cost_usd":0.003816,"raw_usage":{"total_tokens":1920,"prompt_tokens":572,"num_sources_used":0,"completion_tokens":64,"cost_in_usd_ticks":38162000,"prompt_tokens_details":{"text_tokens":572,"audio_tokens":0,"image_tokens":0,"cached_tokens":256},"completion_tokens_details":{"audio_tokens":0,"reasoning_tokens":1284,"accepted_prediction_tokens":0,"rejected_prediction_tokens":0}},"tokens_in":572,"tokens_out":64,"duration_ms":9816,"temperature":1.0,"reasoning_tokens":1284,"cache_read_input_tokens":256,"cache_creation_input_tokens":0},"cache_creation_input_tokens":0},"created_at":"2026-06-25T23:12:42.941450+00:00","model_set":{"reader":"grok-4.3"},"falsifier":"An existing Python library that already supplies the same scatter matrices, joint-diagonalization routines, and selection criteria, or a side-by-side numerical check showing that ICSpyLab outputs differ from published ICS results on standard test data.","supporting_citations":[],"review_version":1}