Skip to content

update isPrime documentation#2

Open
mgacummings wants to merge 2 commits into
aalmousa:MinimalPrimesfrom
mgacummings:MinimalPrimes
Open

update isPrime documentation#2
mgacummings wants to merge 2 commits into
aalmousa:MinimalPrimesfrom
mgacummings:MinimalPrimes

Conversation

@mgacummings

Copy link
Copy Markdown

No description provided.

@mgacummings

mgacummings commented Jun 4, 2024

Copy link
Copy Markdown
Author

Added explanation that to compute isPrime, a full decomposition into minimal primes is computed

aalmousa pushed a commit that referenced this pull request Feb 6, 2025
aalmousa pushed a commit that referenced this pull request Jun 9, 2026
Audit at github.com/kellerlv/M2-test-audit/.../VersalDeformations.md
counts 36 exports and 9 TESTs. Large families of methods (especially
the v4.0 nested-deformation API and the option-symbols) were
exercised only through doc EXAMPLEs, not via assert-based regression
tests.

Ten new TEST blocks:

* `nestedTangent` (audit rec #1): pin shape and ring identity for
  the doc example, and pin that `IncludeTrivial=>true` produces at
  least as many columns (strictly more on this input).
* `nestedObstruction`: pin class and ring -- doc EXAMPLE only before.
* `setupNestedDeformation` (audit rec #2): exercise both the 6-list
  (nestedHilbertScheme-style) and 7-list (nestedVersalDeformation-
  style) dispatch branches at VersalDeformations.m2:583-587, and
  pin that an invalid-length List is rejected.
* `cotangentCohomology1` / `cotangentCohomology2`: direct asserts
  (previously only invoked as input to versalDeformation), plus pin
  that `CT^1 == cotangentCohomology1` and `CT^2 == cotangentCohomology2`.
* `correctionMatrix`: pin its (M, L) return shape -- previously only
  called inside correctDeformation.
* `extMatrix`: direct shape assert -- previously only used as input.
* `isPolynomial` + `sanityCheck`: pin Boolean return on the
  standard `(F,R,G,C)` tuple.
* `nestedVersalDeformation` with `IncludeTrivial=>false` (audit rec
  #3): the false branch at VersalDeformations.m2:774,785 uses
  `CT^1(F0X)` instead of `normalMatrix(F0X)` for T1X; pin that the
  resulting X-deformation family has ≤ the default's column count.
* `DefParam` / `DefParamX` / `DefParamY`: pin that the deformation
  parameters get the expected variable names (`t_*` by default,
  `u_*`/`v_*` when overridden) -- the parameter-naming dispatch at
  firstOrderDeformations:478 had zero TEST coverage.
* `CacheName` + `VersalDeformationResults`: pin that
  `versalDeformation(..., CacheName => H)` stores its (F,R,G,C)
  tuple in `H#VersalDeformationResults` -- the CacheName code path
  was entirely untested.

Three doc Usage typos (copy-paste, audit rec #4):

* `isPolynomial` (line 1920) showed `Usage => "B = checkTangentSpace(D) ..."`.
* `sanityCheck` (line 1941) showed `Usage => "B = checkTangentSpace(n,D) ..."`.
* `obstructions` (line 1982) showed `Usage => "G = families D"`.

Now they reference the correct method name.

Subtle gotcha: tuple destructuring `(a, _) = ...` is *not* valid M2
(the `_` is the subscript operator, not a wildcard); had to assign
the full result and access by `#0`. Worth remembering.

All 19 tests pass under `check "VersalDeformations"` (~5.6s).
`installPackage` with full documentation builds successfully.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant