{"id":"cb825d89-12ae-4621-8f19-27ec5a0141e0","arxiv_id":"1908.04337","paper_version":2,"verdict":"CONDITIONAL","confidence":"MODERATE","novelty_score":6.0,"correctness_risk":"medium","formal_verification":"none","parameter_count":0,"one_line_summary":"The RationalMaps package implements Rees algebra and Jacobian dual matrix criteria to invert rational maps and test birationality, with a hybrid strategy that is often faster than prior packages.","lead":"A new Macaulay2 package, RationalMaps, computes base loci, inverse maps, birationality tests, and embedding checks for rational maps between projective varieties. It repackages known Rees algebra criteria into a tool that often beats the existing Cremona and Parametrization packages on general examples.","discovery_kind":"new_method","skeptic_critique":{"model":"deepseek-v4-flash","headline":"QuickRank's probabilistic rank computations can invalidate the rank criterion in Theorem 3.1; the paper acknowledges randomness but never establishes that a wrong rank is caught.","rationale":"The paper's central claim is that RationalMaps correctly decides birationality and computes inverses by applying Theorem 3.1. The theorem is conditional on the exact rank of the weak Jacobian dual matrix. The only place where that exactness is put at risk is the optional QuickRank path through FastLinAlg, which the paper itself describes as containing randomness. The reader's weakest_assumption identified exactly this point, and my reading agrees: this is the most load-bearing assumption because a wrong rank can produce both false negatives (failing to find an inverse) and false positives (declaring a non-birational map birational). The concern is not a flaw in the mathematical criterion, which is well supported by DHS12, and the paper is honest about the presence of randomness. However, honesty about randomness is not the same as establishing correctness: the paper does not say whether the randomness is only in the search order (Las Vegas) or in the numerical rank decision itself (Monte Carlo), and it does not document any verification step that would catch a wrong rank. Because of this, the conditional verdict is appropriate: the package is very likely correct on the tested examples, but the central claim should be accepted only with the expectation that the QuickRank behavior is either proven safe, made non-default, or accompanied by an explicit warning and a fallback verification. I see no reason to move to reject or to a stronger verdict on the basis of the paper text alone.","tokens_in":8760,"tokens_out":10570,"duration_ms":109363,"concrete_test":"Download the exact FastLinAlg.m2 referenced by the repository and classify its rank routine: Las Vegas (always correct, random time) or Monte Carlo (may return wrong rank). Then run the full Section 6 benchmark suite plus the P^3 degree-13 example with QuickRank=>true repeated with many random seeds, and compare against the same calls with QuickRank=>false and against checks that the returned inverse composes to the identity (isSameMap). Any disagreement or any false birationality declaration would confirm the concern; agreement on all trials would mitigate it.","verdict_should_be":"UNCHANGED","load_bearing_attack":"Both the birationality test and the inverse computation in §3 reduce to one exact linear-algebra fact: the rank over S of the weak Jacobian dual matrix ψ must equal edim(R)-1 before Theorem 3.1 can be applied. The package's QuickRank option computes these ranks (or ranks of candidate submatrices) with the pre-release FastLinAlg package, and §3 states that FastLinAlg's functions contain 'a certain amount of randomness' and that rerunning can give a 'massive speedup.' If that randomness is Monte Carlo rather than Las Vegas, a rank can be underestimated or overestimated; underestimating rank of a candidate submatrix can make inverseOfMap fall back or fail, while falsely reporting rank n in a partial SimisStrategy pass can make the package declare a non-birational map birational and return a bogus inverse. The paper never states an error probability, a Las Vegas guarantee, or a post-hoc verification (e.g., composing with the candidate inverse) that would catch a wrong rank. Since Theorem 3.1 is an iff statement on the true rank, the correctness of the entire central claim is contingent on this unverified probabilistic step. This is not a mathematical objection to the criterion; it is a load-bearing implementation assumption that the paper should pin down.","agreement_with_reader":"agree"},"referee_report":{"model":"deepseek-v4-flash","summary":"This paper describes RationalMaps, a Macaulay2 package for computing the base locus, birationality, inverse, and closed-embedding status of rational maps between projective varieties. The main algorithm is based on the theorem of Doria--Hassanzadeh--Simis: for a non-degenerate integral source, a map is birational onto its image if and only if the weak Jacobian dual matrix psi of a minimal generating set of the first-degree part of the Rees presentation ideal has rank edim(R)-1; the inverse is then read off from the null space of psi or from maximal minors. The package implements several strategies for computing the needed part of the Rees ideal (ReesStrategy, SimisStrategy, HybridStrategy, SaturationStrategy), options such as AssumeDominant, CheckBirational, MinorsCount, and QuickRank, and includes comparisons with the Cremona package and timings for maps attaining the Gabber degree bound.","tokens_in":8932,"tokens_out":23312,"duration_ms":241349,"significance":"If the package performs as documented, it provides a useful and generally applicable tool for a central operation in algebraic geometry. The theoretical backbone is an established published theorem (DHS12), and the paper demonstrates correctness of computed inverses in the worked examples by checking equality with isSameMap. The package also handles base loci, embeddings, and has already been used in a research application (He--Yang). The main weakness is that the paper does not specify the error semantics of the randomized linear-algebra routines used in QuickRank mode, leaving the user without a certified path to the rank condition on which Theorem 3.1 rests. A revision that addresses this documentation gap would make the correctness claims fully assessable.","major_comments":[{"comment":"The paragraph describing QuickRank states that FastLinAlg contains \"a certain amount of randomness\" and that rerunning a slow example can give a massive speedup, but it never states whether QuickRank is on by default, whether the randomized rank algorithms are Las Vegas (errors detected) or Monte Carlo (errors possible), or whether any post-hoc verification is performed. Since Theorem 3.1 is an iff criterion on the exact rank of the weak Jacobian dual matrix psi, and since both the birationality test and the inverse computation use this rank to decide birationality and to select the submatrix for the minor method, a rank underestimate can cause false negatives (failing to recognize a birational map or to find its inverse) and a rank overestimate can cause false positives (declaring a non-birational map birational and returning a spurious inverse). The paper should state the default value of QuickRank for every affected function, describe the error model of the FastLinAlg rank computations, and provide a deterministic setting that users can invoke to obtain certified output; ideally, when QuickRank is enabled, inverseOfMap should verify the result by composing with the candidate inverse.","section":"Section 3 (QuickRank paragraph) and Section 6 (timing examples)"}],"minor_comments":[{"comment":"In the paragraph beginning \"Note that a weak Jacobian matrix psi is not uniquely defined\", there is a typo \"on e set\" for \"one set\"; also \"non-degenerated\" is used inconsistently for \"non-degenerate\".","section":"Section 3"},{"comment":"The final section contains the typo \"pacakge\"; in addition, the text names \"Zhuang He and Lei Yang\" while the reference [HL19] lists \"Z. He and Y. Lei\" -- the author names should be harmonized.","section":"Section 6 and References"},{"comment":"The package depends on a pre-release version of FastLinAlg, but no version number or commit hash is given; specifying one would make the examples and timings reproducible.","section":"Section 1 (Obtaining RationalMaps)"},{"comment":"The timing tables do not state the machine, the Macaulay2 version, or whether the default options (in particular QuickRank and HybridLimit) were used; this makes the comparisons with Cremona difficult to reproduce.","section":"Section 6"},{"comment":"The sentence \"The following exam illustrates this\" should read \"The following example illustrates this\".","section":"Section 4"}],"recommendation":"major_revision","confidential_remarks":"The main barrier to acceptance is the undocumented probabilistic rank computation in QuickRank mode, which directly affects the package's primary correctness claim. The underlying mathematics is not in question, and the package appears useful and well engineered. I would recommend sending the revised version back to the same referee to confirm that the QuickRank semantics have been clarified and a deterministic certified mode is documented."},"author_rebuttal":null,"desk_editor":{"model":"deepseek-v4-flash","letter":"Colleague,\n\nThe short version: this is a useful package doing something no other Macaulay2 package quite does — computing inverses of birational maps between arbitrary projective varieties and testing birationality without Cremona's probabilistic shortcuts. The mathematical core is not new; it applies Simis's Rees algebra / Jacobian dual matrix criteria from [Sim04] and [DHS12]. What is new is the implementation: the SimisStrategy/HybridStrategy for computing just enough of the Rees ideal, the fallback logic, and the careful comparison with Cremona. The examples are honest about performance, including where Cremona wins. I believe the package works on the advertised scope and the paper is worth publishing as a software paper.\n\nThe soft spots are real but bounded. The biggest is QuickRank. The package uses FastLinAlg, a pre-release package whose rank computations involve randomness. The paper says this, but it does not say whether a wrong rank can silently produce a wrong answer, and I did not see any automatic post-hoc check (composing the candidate inverse with the original) in the described pipeline. If the default is QuickRank=>true, then the default mode of inverseOfMap is probabilistic. That is not acceptable for a package whose whole appeal is reliability. Users can set QuickRank=>false, but the paper should state that plainly, and ideally the package should verify the inverse when it can. This is a documentation/correctness issue, not a flaw in the mathematical criterion.\n\nSecond, the code is distributed from a workshop GitHub folder without a versioned release or commit hash. For a paper in computational algebra, that is asking for reproducibility trouble. A tagged release on the Macaulay2 package repository would fix it.\n\nI have no concerns about the mathematics. Theorem 3.1 is quoted correctly from DHS12; the rank statement is an iff, and the examples check inverses via isSameMap. The comparison with Cremona is fair and includes cases where Cremona is faster.\n\nVerdict: sound and publishable with minor revisions. I would send it to a serious referee — preferably one who will actually run the package and test the QuickRank behavior — and ask for a clear statement about randomization and a pinned distribution.","headline":"A genuinely useful Macaulay2 package for inverting rational maps between projective varieties, built on known Rees-algebra criteria; the main soft spot is the unquantified randomness in QuickRank, which should be documented or made off by default.","tokens_in":9501,"tokens_out":2276,"would_cite":true,"duration_ms":22995,"reading_group":"maybe","serious_thinker":"yes","would_accept_peer_review":true},"rs_alignment":null,"lean_confirmation":null,"pith_extraction":{"msc":["14E05","13A30","14Q10"],"pacs":[],"model":"deepseek-v4-flash","headline":"This paper presents a Macaulay2 package, RationalMaps, that decides birationality of rational maps and computes their inverses from the rank of a weak Jacobian dual matrix.","keywords":["rational maps","birational map","inverse map","Rees algebra","Jacobian dual matrix","base locus","closed embedding","Macaulay2"],"falsifier":"Run inverseOfMap with CheckBirational=>true on a known birational map, for instance the degree-5 map on $\\mathbb{P}^4$ used in the paper's timing tables, repeatedly with QuickRank=>true and once with QuickRank=>false; if any QuickRank run reports that the map is not birational, returns a different inverse representative, or fails to terminate, the package's central reliability claim is refuted.","tokens_in":8512,"feed_emoji":"🧮","tokens_out":9383,"duration_ms":90182,"temperature":0.7,"pith_summary":"This paper introduces a Macaulay2 package that automates three core questions about rational maps between projective varieties: where a map is undefined, whether it is birational, and, when it is, what its inverse is. The package converts these geometry questions into algebra by studying the Rees algebra of the ideal generated by the coordinate forms of the map. Birationality is decided by the rank of a weak Jacobian dual matrix $\\psi$: the map is birational exactly when that rank is one less than the embedding dimension of the source. When that holds, an inverse representative is obtained from a nonzero vector in the null space of $\\psi$, or from signed maximal minors of a full-rank submatrix. A careful reader should care because these computations are routine in algebraic geometry and were previously much more labor-intensive.","feed_headline":"A Macaulay2 package now inverts birational maps automatically","feed_subtitle":"A rank condition on the Rees algebra's Jacobian dual matrix decides birationality and gives the inverse.","key_machinery":"The central object is the weak Jacobian dual matrix $\\psi$. One takes bihomogeneous relations $J_{1,*}$ of degree one in the source variables among the forms defining the map, lifts them to polynomials in $k[X,Y]$, differentiates with respect to the $X$-variables, and reduces the entries modulo the ideal of the target. The rank of the resulting matrix over the coordinate ring of the image is the birationality test. To form $\\psi$, the package computes only the $(1,q)$ pieces of the Rees ideal until the rank reaches the required value, and the HybridStrategy saves already-found generators when it switches from this incremental search to a full Rees ideal computation. Once $\\psi$ is available, inverse extraction is a null-space syzygy computation or a signed-minors computation.","core_discovery":"For a rational map $F: X \\dashrightarrow Y$ defined by forms $f_0,\\ldots,f_m$ in the coordinate ring $R$ of an irreducible, non-degenerate projective variety, the paper's central claim is operational: $F$ is birational onto its image if and only if the weak Jacobian dual matrix $\\psi$, attached to a minimal generating set of the bidegree $(1,*)$ part of the Rees presentation ideal, has rank $\\operatorname{edim}(R)-1$. When this rank condition holds, the inverse map is represented either by the coordinates of any positive-degree homogeneous vector in the one-dimensional null space of $\\psi$, or, when $R$ is a domain, by the ordered signed $(\\operatorname{edim}(R)-1)$-minors of a rank $(\\operatorname{edim}(R)-1)$ submatrix. The package computes enough of the Rees ideal, degree by degree, to form $\\psi$ and check its rank, using a default hybrid strategy that switches from this incremental search to a full Rees ideal computation at a user-set limit. This makes a characteristic-free birationality criterion from the literature into a working implementation with several speed options.","pith_inferences":["Inference: Because QuickRank is documented as containing randomness, a single negative birationality answer obtained with default settings is not a proof; rerunning with QuickRank=>false is a cheap way to make the answer deterministic.","Inference: The same Rees-algebra rank invariant could also compute other geometric data encoded in the Rees presentation ideal, such as the degree of a rational map, though the package does not currently do this.","Inference: The benchmark family with inverse degree $d^{n-1}$ indicates that the practical bottleneck is the cost of partial Groebner bases of the Rees ideal, so truncation or modular strategies could substantially extend the feasible range."],"forward_implications":["For any map satisfying the non-degeneracy and domain hypotheses, the default HybridStrategy either certifies birationality by reaching rank $\\operatorname{edim}(R)-1$ during the incremental search, or, after HybridLimit, computes the full Rees ideal to decide non-birationality.","When the map is birational, the inverse is produced explicitly as a null-space vector of $\\psi$ or as signed maximal minors, so the user receives a usable representative rather than an existence statement.","The same machinery gives automatic checks for closed embeddings: the base locus is empty, the inverse exists, and the inverse is regular.","The paper's timings show that the option choices (Strategy, HybridLimit, MinorsCount, QuickRank) materially change performance, so the package documents how to tune them for large examples.","The implementation handles maps whose inverse has very high degree, including examples from $\\mathbb{P}^3$ to $\\mathbb{P}^3$ that take hours but complete."],"supporting_citations":[{"why":"Proves the characteristic-free birationality criterion and the two methods for producing inverse representatives that the package uses as Theorem 3.1.","marker":"[DHS12]"},{"why":"Establishes the Rees-algebra viewpoint for rational maps and Proposition 2.1 relating representatives to Hom_R(I,R).","marker":"[Sim04]"},{"why":"Introduces the Jacobian dual matrix method for maps from projective space that the package generalizes.","marker":"[RS01]"},{"why":"Origin of using syzygies of the defining forms to detect geometric properties of a map.","marker":"[HKS92]"},{"why":"Provides the injectivity test used to compute images of maps when dominance is not assumed.","marker":"[Sim03]"},{"why":"Gives the sharp inverse-degree bound used to build the benchmark family that stresses the implementation.","marker":"[HS17]"},{"why":"Supplies the general degree bound d^{n-1} for inverses of endomorphisms of projective space cited as motivation.","marker":"[BCW82]"},{"why":"Describes the Cremona package that serves as the principal speed and correctness comparison in the paper's examples.","marker":"[Sta, Sta18]"}],"fun_headline_variants":["Macaulay2 package auto-inverts birational maps","Rees algebra rank test for birationality in Macaulay2","New Macaulay2 package: birationality by Rees rank","Automatic inverse for birational maps via Macaulay2","Jacobian dual rank decides birationality, package computes it"],"cache_read_input_tokens":3200,"weakest_assumption_plain":"The package's answers depend on the computed rank of the weak Jacobian dual matrix being exactly right; with the default QuickRank option, ranks of selected submatrices come from randomized linear algebra routines that can, in principle, be too small.","fun_headline_variants_meta":{"raw":{"variants":["Macaulay2 package auto-inverts birational maps","Rees algebra rank test for birationality in Macaulay2","New Macaulay2 package: birationality by Rees rank","Automatic inverse for birational maps via Macaulay2","Jacobian dual rank decides birationality, package computes it"]},"model":"deepseek-v4-flash","effort":"low","cost_usd":0.00037,"raw_usage":{"total_tokens":1907,"prompt_tokens":798,"completion_tokens":1109,"prompt_tokens_details":{"cached_tokens":384},"prompt_cache_hit_tokens":384,"prompt_cache_miss_tokens":414,"completion_tokens_details":{"reasoning_tokens":1020}},"tokens_in":414,"tokens_out":1109,"duration_ms":10178,"temperature":1.0,"reasoning_tokens":1020,"cache_read_input_tokens":384,"cache_creation_input_tokens":0},"cache_creation_input_tokens":0},"created_at":"2026-08-14T13:44:12.886586+00:00","model_set":{"reader":"deepseek-v4-flash"},"falsifier":"Run inverseOfMap with CheckBirational=>true on a known birational map, for instance the degree-5 map on $\\mathbb{P}^4$ used in the paper's timing tables, repeatedly with QuickRank=>true and once with QuickRank=>false; if any QuickRank run reports that the map is not birational, returns a different inverse representative, or fails to terminate, the package's central reliability claim is refuted.","supporting_citations":[],"review_version":1}