{"id":"ea4129ae-cf54-42f7-bf9d-a13caffb1f07","arxiv_id":"2501.02162","paper_version":1,"verdict":"REJECT","confidence":"MODERATE","novelty_score":4.0,"correctness_risk":"high","formal_verification":"none","parameter_count":0,"one_line_summary":"A new FPGA overlay adds per-state score registers to an NFA matcher to compute optimal sequence alignments, but functional results are absent.","lead":"NAPOLY+ is an FPGA circuit that adds score registers to each pattern-matching element so the hardware can track and report the best sequence alignment. The paper reports resource usage and clock speed across array sizes, but it never shows that the scoring logic actually produces correct alignments.","discovery_kind":"extension","skeptic_critique":{"model":"deepseek-v4-flash","headline":"The paper never specifies how an STE+ arbitrates multiple incoming scores, and the design is not functionally validated; without a max-plus (or equivalent) score-update rule, the claimed optimal alignment computation is unestablished.","rationale":"The reader's verdict REJECT is consistent with my stress-test. The paper's novel contribution depends on computing optimal scores, but the architecture description lacks the max-selection semantics necessary for optimal path scoring. This is not a matter of disagreement with consensus; it is an internal incompleteness: the described hardware either silently drops or sums concurrent paths. Since Section 4 contains no functional validation, the central claim is unverified. I would keep the verdict as REJECT, meaning no change to the reader's recommendation.","tokens_in":5362,"tokens_out":2873,"duration_ms":31500,"concrete_test":"Request the RTL or a precise pseudocode for the STE+ arithmetic unit and simulate a minimal convergence case: start --5--> q, start --2--> q, q --1--> accept, with input symbols enabling q and accept. Viterbi requires accept score 6. If the design returns 7, 8, or a value depending on wire order rather than max, the optimal-alignment claim fails. Also run the Figure 1 DNA NFA with input 'AGC' and scores +2/-1/-2; the reported trace should yield 6, and any active-score values must be explained cycle-by-cycle.","verdict_should_be":"UNCHANGED","load_bearing_attack":"Section 3 states that each STE+ 'combines activation signals from all f predecessors' and 'calculates an outgoing score... based on the incoming score from its predecessor and its edge score,' but it never defines the score-update function when two or more predecessors are simultaneously active with different accumulated scores. In a weighted NFA, the Viterbi/optimal-alignment recurrence requires each state to keep the maximum over incoming paths: S_q(t+1) = max_{p in pred(q)} (S_p(t) + w(p,q)). If STE+ instead adds all incoming scores or uses the first-arriving score, convergence produces incorrect scores. The phrase 'we initialize the incoming scores to zero for every new symbol' further suggests per-symbol reset rather than accumulated max across symbols, which would break the dynamic-programming recurrence. Section 4 reports only resource utilization and Fmax; no simulation, trace, or comparison against a reference alignment algorithm is given. Therefore the central functional claim, that NAPOLY+ identifies the highest-scoring alignment, is not supported by the evidence in the manuscript.","agreement_with_reader":"agree"},"referee_report":{"model":"deepseek-v4-flash","summary":"This manuscript describes NAPOLY+, a modification of the NAPOLY FPGA-based nondeterministic finite automaton overlay. Each state-transition element is extended with a register for a score/weight and an arithmetic unit, with the stated goal of making the accelerator report the highest-scoring match, e.g., the optimal score in DNA sequence alignment. Section 3 gives a high-level description of the STE+ and the array, and Section 4 reports FPGA resource utilization, distributed-memory usage, fan-out, Fmax, and throughput for array sizes from 1K to 64K on ZCU102 and ZCU104 boards, compared against the original NAPOLY. No functional or simulation results for alignment scores are reported.","tokens_in":5610,"tokens_out":5714,"duration_ms":57885,"significance":"The intended contribution is potentially useful: scoring an NFA overlay in a max-plus sense would extend automata processors beyond Boolean match detection and could benefit sequence alignment and related applications. The paper also provides resource-scaling data at nontrivial array sizes. However, the manuscript does not define the score-update rule essential to correct computation, does not provide functional verification, and leaves citation placeholders and unclear relations to prior work. Because none of the reported measurements concerns correctness of the computed scores, the central claim is currently unsupported. No machine-checked proofs, source code, or test vectors are shipped.","major_comments":[{"comment":"The paper never defines the rule by which an STE+ combines multiple incoming scores. After stating that each STE+ 'combines activation signals from all f predecessors,' it says only that the outgoing score is calculated 'based on the incoming score from its predecessor and its edge score' (singular). For weighted automata, optimal alignment requires the max-plus recurrence S_q(t) = max_{p in pred(q)} (S_p(t-1) + w(p,q)). The text does not state whether the arithmetic unit implements this maximum, a sum, or first-arrival selection. The sentence 'we initialize the incoming scores to zero for every new symbol' is also ambiguous: if all scores are reset on every symbol, accumulated path scores cannot propagate across multiple symbols; if only new-start paths are reset, that exception needs to be part of an explicit update equation. Without this definition, the claimed computation of highest alignment scores is not established.","section":"Section 3, STE+ arithmetic and score update"},{"comment":"All experimental results in Section 4 are resource and timing metrics: LUT utilization, distributed memory, fan-out, Fmax, and throughput. There is no simulation trace, no known-answer test, no comparison of NAPOLY+ scores against a reference alignment algorithm such as Needleman-Wunsch or against the authors' earlier scored-NFA implementation, and no demonstration that accepting STEs report the same score as a software baseline. The abstract's statement that 'results showing that NAPOLY+ offers superior functionality' is therefore not supported by the data presented.","section":"Section 4, functional validation"},{"comment":"The special connections for the start STE+ are described only informally: 'we designed all (STE+)s to be connected to the start STE+' but accepting STEs 'have no connection with the start state.' This raises questions about how a match that begins at the start state and ends at an accepting state is scored when the accepting state can only be reached through non-start predecessors, and how gap penalties on multi-symbol paths are applied when the start state is continuously active. A precise description of the interconnection topology and the handling of new-start path scores is needed to evaluate the design.","section":"Section 3, start-state and accepting-state connections"},{"comment":"The manuscript contains two unresolved citation placeholders ('[?]') in Section 3 and cites the authors' previous arXiv preprint [12] without explaining the incremental contribution of NAPOLY+ over that work. This prevents a reviewer from verifying novelty and reproducibility. The text as submitted is not complete enough for publication.","section":"Section 3 and References, completeness"}],"minor_comments":[{"comment":"The spacing in 'NF A' is inconsistent (e.g., Abstract and Section 2.1); use 'NFA' consistently throughout the manuscript.","section":"Abstract and throughout"},{"comment":"The text mixes 'zynq102'/'zynq104' with 'ZCU102'/'ZCU104', and states '6.2 Mb Mb of distributed memory' with a duplicated unit; these should be standardized and corrected.","section":"Section 4, device names and units"},{"comment":"The figures referenced in Section 4 are not included in the submitted text; each figure needs axis labels, units, and clear descriptions of what is plotted (e.g., point markers versus lines) so the resource data can be interpreted.","section":"Figures 5-8"},{"comment":"The description of the score registers and arithmetic unit should specify the bit width and signed representation, since the motivating example uses negative scores for mismatches and gaps.","section":"Section 3, score representation"},{"comment":"The weighted automaton definition in Section 2.2 assigns weights to transitions, while NAPOLY uses ANML with labels on states; the mapping between these two representations and the resulting edge-score register in STE+ should be stated explicitly.","section":"Section 2.2, weighted automata versus ANML"}],"recommendation":"reject","confidential_remarks":"The manuscript overlaps substantially with the authors' earlier arXiv preprint [12], and the current text does not clearly delineate the incremental contribution; the unresolved '[?]' citations and the absence of functional results suggest the paper was submitted prematurely. The editor may wish to verify that the authors explicitly disclose and discuss the relationship to arXiv:2410.19758."},"author_rebuttal":null,"desk_editor":{"model":"deepseek-v4-flash","letter":"Short version: this is a legitimate but small extension of the authors' NAPOLY overlay, and the resource-utilization/Fmax numbers look like real implementation work. But the central claim—that NAPOLY+ computes the highest-scoring alignment—is unsupported: the score-update rule is never defined, and there is no functional test anywhere. That is a load-bearing gap, not a polish issue.\n\nWhat is actually new: adding a score register and arithmetic unit to each STE, with a fan-in from the start state to handle gaps and mismatches, is a plausible way to turn an NFA overlay into a weighted automaton. I don't see this exact design in the cited prior work, so the increment is real. The background on NAPOLY is clear, and the synthesis results across 1K–64K arrays on two Zynq parts are the kind of data the automata-processing community uses. I believe those numbers are real; nothing in the text signals fabrication.\n\nThe soft spots are serious. Section 3 says each STE+ \"combines activation signals from all f predecessors\" and calculates an outgoing score \"based on the incoming score from its predecessor and its edge score,\" but it never says what happens when two predecessors are active with different accumulated scores. In a weighted automaton, the whole game is the max-plus recurrence S_q = max_p (S_p + w(p,q)); without stating that, the claimed optimality has no mathematical basis. The phrase \"initialize the incoming scores to zero for every new symbol\" makes it worse—it sounds like per-symbol reset rather than DP accumulation. Section 4 reports only LUT/FF/memory usage and Fmax; no simulation, no trace, no comparison to a reference alignment algorithm. The abstract and conclusion say NAPOLY+ \"outperforms\" NAPOLY in identifying best matches, but no functional comparison is shown. There are also unfinished citation placeholders (\"[?]\"), which suggests the manuscript was not ready.\n\nWho should read it: FPGA/automata researchers looking at scored-automata overlays might skim it for the resource data, but I wouldn't trust the functional claims yet. For peer review: not in current form. The right move is a desk reject with an invitation to resubmit after specifying the score-combination rule, adding functional verification on known examples (e.g., the +2/-1/-2 DNA alignment from the intro), and cleaning up the references. Then it would be a reasonable short paper.","headline":"A plausible but unvalidated scored-NFA extension of NAPOLY: the score-update rule is never defined and no functional test is reported, so the central claim of optimal alignment is unsupported.","tokens_in":6074,"tokens_out":3301,"would_cite":false,"duration_ms":33735,"reading_group":"maybe","serious_thinker":"unclear","would_accept_peer_review":false},"rs_alignment":null,"lean_confirmation":null,"pith_extraction":{"msc":[],"pacs":[],"model":"deepseek-v4-flash","headline":"NAPOLY+ adds per-state score registers to an automata accelerator, letting it report the highest-scoring sequence alignment rather than just the first match.","keywords":["sequence alignment","weighted finite automata","NFA overlay","FPGA accelerator","pattern matching","score tracking","automata processor","Viterbi scoring"],"falsifier":"Feed NAPOLY+ a weighted automaton in which two start-to-accept paths with different total scores converge at a common intermediate state, then compare the reported score with the true maximum computed by dynamic programming; a reported score below that maximum would refute the optimality claim.","tokens_in":5192,"feed_emoji":"🧬","tokens_out":6147,"duration_ms":56510,"temperature":0.7,"pith_summary":"This paper tries to show that an NFA-pattern-matching accelerator can be extended to compute optimal sequence-alignment scores without leaving the acceleration fabric. It adds to each state-transition element a score register and an arithmetic unit, so every active path carries an accumulated score, and accepting elements report the best score seen. If that works, the same FPGA overlay that finds pattern matches can also rank alignments, which matters for DNA comparisons where the highest-scoring match is the biological answer.","feed_headline":"Scored automata states pick the best DNA alignment","feed_subtitle":"Each state element gains a score register, so the overlay reports the highest-scoring match, not just the first.","key_machinery":"The carrying mechanism is the scored state-transition element: each element holds a symbol-matching state bit, a score register, a configured edge-cost register, and an arithmetic unit that accumulates the incoming predecessor score with the edge cost. The start element stays active for all input symbols and new symbols inject zero scores so fresh paths can begin; accepting elements, which are not connected to the start element, emit the accumulated score when activated. This makes the overlay a hardware implementation of a weighted automaton that evaluates many alternative start-to-accept paths in parallel.","core_discovery":"The central claim is that NAPOLY+, by adding score tracking to the NAPOLY state-transition elements, can identify the highest score corresponding to the best sequence-alignment match. The paper reports that the enhanced array keeps NAPOLY's activation logic while computing an outgoing score as the incoming score plus a configured edge score, and that accepting elements report the final score once activated. In the reported experiments, the design runs on two FPGA boards across array sizes from 1K to 64K processing elements, uses 90–95% of logic cells on one board and under 85% on the other, keeps distributed-memory use comparable to the original NAPOLY, and shows maximum clock frequency decreasing as array size grows.","pith_inferences":["If one score register per element is truly enough, then NAPOLY+ is computing the maximum path score in the Viterbi sense, so the design could be reused for shortest-path problems or probabilistic model scoring by reinterpreting the edge weights.","The paper's evaluation measures hardware metrics, not alignment accuracy against a known-optimal software result; a direct comparison of reported scores to dynamic-programming optimal scores on benchmark sequences would settle the functional claim.","The unresolved point of how multiple incoming scores to the same element in the same cycle are combined means the architecture likely assumes one dominant predecessor per cycle; testing with converging paths would reveal whether the reported score is an upper or lower bound.","The reported resource figures exclude buffers and DRAMs, so end-to-end system scaling with the memory hierarchy may differ from the core-array trends shown here."],"forward_implications":["If the design is correct, sequence alignment on the overlay returns the optimal score, not merely a first match, which is the quantity needed for DNA similarity scoring.","The added arithmetic and registers raise logic-cell utilization by a few percentage points while leaving distributed-memory use close to NAPOLY's, so the capability is affordable at array sizes up to 64K.","Maximum clock frequency falls as the array grows on both tested FPGAs, with the larger board staying roughly 50–100 MHz faster, so the achievable throughput depends on array scale.","Because the score mechanism is generic over configured edge costs, the same arithmetic unit can encode different scoring rules for matches, mismatches, and gaps without changing the fabric."],"supporting_citations":[{"why":"Supplies the original NAPOLY overlay architecture that NAPOLY+ extends with per-state scoring.","marker":"[3]"},{"why":"The authors' prior scored-NFA processor that motivates and parallels the score-accumulation approach used here.","marker":"[12]"},{"why":"Provides the weighted-finite-automata formulation and algorithms for accumulating and comparing path scores.","marker":"[10]"},{"why":"Describes the dynamically reconfigurable automata overlay whose state-activation and fan-out constraints the new design inherits.","marker":"[5]"},{"why":"Defines ANML, the state-based automaton representation used as the input format for the overlay.","marker":"[15]"}],"fun_headline_variants":["Scored NFA states compute best sequence match","NAPOLY+ adds score registers to pick optimal alignment","FPGA automata with scores identify top-scoring match","Enhanced NFA tracks edge costs for best match"],"cache_read_input_tokens":3200,"weakest_assumption_plain":"The design assumes that keeping a single score per processing element, reset to zero at the start of each new input symbol, is enough to maintain the best accumulated path score when several active paths reach the same element at the same time.","fun_headline_variants_meta":{"raw":{"variants":["Scored NFA states compute best sequence match","NAPOLY+ adds score registers to pick optimal alignment","FPGA automata with scores identify top-scoring match","Enhanced NFA tracks edge costs for best match"]},"model":"deepseek-v4-flash","effort":"low","cost_usd":0.000179,"raw_usage":{"total_tokens":1273,"prompt_tokens":894,"completion_tokens":379,"prompt_tokens_details":{"cached_tokens":384},"prompt_cache_hit_tokens":384,"prompt_cache_miss_tokens":510,"completion_tokens_details":{"reasoning_tokens":316}},"tokens_in":510,"tokens_out":379,"duration_ms":4790,"temperature":1.0,"reasoning_tokens":316,"cache_read_input_tokens":384,"cache_creation_input_tokens":0},"cache_creation_input_tokens":0},"created_at":"2026-08-10T22:13:26.087117+00:00","model_set":{"reader":"deepseek-v4-flash"},"falsifier":"Feed NAPOLY+ a weighted automaton in which two start-to-accept paths with different total scores converge at a common intermediate state, then compare the reported score with the true maximum computed by dynamic programming; a reported score below that maximum would refute the optimality claim.","supporting_citations":[{"cited_title":"Weighted automata algorithms","cited_arxiv_id":null,"evidence_quote":"Provides the weighted-finite-automata formulation and algorithms for accumulating and comparing path scores."},{"cited_title":"Richards, and Jason D","cited_arxiv_id":null,"evidence_quote":"Describes the dynamically reconfigurable automata overlay whose state-activation and fan-out constraints the new design inherits."},{"cited_title":"An efficient and scalable semiconductor architecture for parallel automata processing","cited_arxiv_id":null,"evidence_quote":"Defines ANML, the state-based automaton representation used as the input format for the overlay."}],"review_version":1}