R/FUN_mme_capabilities.R

Defines functions .mmes_capabilities

# Static capability specification; this function does not resolve global options.
# previous records migration provenance, not an accepted compatibility alias.
.mmes_capabilities <- function(){
out <- list(modules = structure(list(id = c("model", "task", "formulation", 
"representation", "solve", "logdet", "score", "curvature", "update", 
"proposal", "convergence", "output", "execution", "diagnostics", 
"compatibility"), responsibility = c("Build model designs, covariance descriptors, weights and observation indexing.", 
"Select Gaussian estimation, outer PQL or known-covariance solving.", 
"Select coefficient-space Henderson or observation-space direct inversion.", 
"Build equivalent equations, sufficient statistics and structured operators.", 
"Solve linear systems through a backend-specific operator contract.", 
"Evaluate exact or stochastic log determinants.", "Evaluate covariance derivatives, quadratic terms and score traces.", 
"Build exact AI, reduced AI or a safeguarded quasi-Newton metric.", 
"Select covariance coordinates, profiling, AI direction and EM/PXEM recovery.", 
"Scale, extrapolate and accept covariance proposals.", "Check optimization progress and certify the accepted final point.", 
"Restore public coordinates and compute requested inference products.", 
"Apply memory, hardware and threading policies.", "Report selected paths, work, accuracy and timing.", 
"Private transport only; removed public aliases are rejected."
), contract = c("Filtered designs and CovarianceFactor-v2 descriptors.", 
"Fitting task and outer-loop state.", "Equation domain, dimensions and objective convention.", 
"Operator, right-hand side, determinant identities and coordinate maps.", 
"Solve requests and checked residuals; no implicit change of objective.", 
"Log determinant with method and approximation diagnostics.", 
"Score in declared parameter coordinates with accuracy diagnostics.", 
"Metric, parameter tangent and exact/approximate status.", "Feasible direction or profiled candidate and recovery reason.", 
"Accepted point and observed-objective acceptance evidence.", 
"Convergence status, stopping reason and certification evidence.", 
"Requested estimates, uncertainty and explicit unavailable products.", 
"Resource admission and explicit errors or documented fallbacks.", 
"Requested versus eligible versus selected methods and reasons.", 
"Compiled R/native boundary state, not a public compatibility API."
)), row.names = c(NA, -15L), class = "data.frame"), controls = structure(list(
    path = c("mmes.fixed", "mmes.random", "mmes.rcov", "mmes.data", 
    "mmes.W", "mmes.weights", "mmes.naMethodX", "mmes.naMethodY", 
    "mmes.naMethodRandom", "mmes.naMethodR", "mmes.contrasts", 
    "mmes.family", "mmes.covPar", "mmes.vcc", "model.covariance", 
    "model.rotation", "model.latentRR", "model.Gu", "control.formulation", 
    "control.task.mode", "control.task.objective", "control.task.pql.maxit", 
    "control.task.pql.tol", "control.task.pql.estimateTheta", 
    "control.task.pql.warmStart", "control.representation.compression", 
    "control.representation.factorScores", "control.representation.equations", 
    "control.representation.sparseFactors", "control.representation.matrixFree", 
    "control.solve.method", "control.solve.tol", "control.solve.maxIters", 
    "control.solve.preconditioner", "control.solve.nystromRank", 
    "control.solve.warmStart", "control.solve.recycleRank", "control.solve.recycleMethod", 
    "control.solve.recycleState", "control.solve.exportRecycle", 
    "control.solve.rhsMethod", "control.solve.blockSize", "control.solve.residualRefresh", 
    "control.solve.blockSchur", "control.solve.blockBanded", 
    "control.solve.factorSchurMultiFactor", "control.solve.dFirstML", 
    "control.logdet.scaling", "control.logdet.lanczosSteps", 
    "control.score.traceProbes", "control.score.estimator", "control.score.rank", 
    "control.score.covarianceChecks", "control.score.traceBatch", 
    "control.curvature.method", "control.curvature.reduced", 
    "control.update.recovery", "control.update.blendWeight", 
    "control.update.commonScale", "control.proposal.stepWeight", 
    "control.proposal.extrapolation", "control.convergence.maxIters", 
    "control.convergence.likelihoodTol", "control.convergence.parameterTol", 
    "control.convergence.accuracy", "control.convergence.maxTraceProbes", 
    "control.convergence.maxLanczosSteps", "control.convergence.logDetTol", 
    "control.convergence.scoreTol", "control.output.inverse", 
    "control.output.pev", "control.output.covariance", "control.output.coefficientMatrix", 
    "control.output.setup", "control.output.selectedInverse", 
    "control.output.panelSize", "control.execution.denseMemoryMB", 
    "control.execution.memoryPolicy", "control.execution.gpu", 
    "control.execution.gpuMinSize", "control.execution.blasThreads", 
    "control.execution.inverseTol", "control.execution.seed", 
    "control.diagnostics.verbose", "control.diagnostics.dateWarning", 
    "control.diagnostics.profile"), module = c("model", "model", 
    "model", "model", "model", "model", "model", "model", "model", 
    "model", "model", "task", "task", "update", "model", "representation", 
    "representation", "model", "formulation", "task", "task", 
    "task", "task", "task", "task", "representation", "representation", 
    "representation", "representation", "representation", "solve", 
    "solve", "solve", "solve", "solve", "solve", "solve", "solve", 
    "solve", "solve", "solve", "solve", "solve", "solve", "solve", 
    "solve", "solve", "logdet", "logdet", "score", "score", "score", 
    "score", "score", "curvature", "curvature", "update", "update", 
    "update", "proposal", "proposal", "convergence", "convergence", 
    "convergence", "convergence", "convergence", "convergence", 
    "convergence", "convergence", "output", "output", "output", 
    "output", "output", "output", "output", "execution", "execution", 
    "execution", "execution", "execution", "execution", "execution", 
    "diagnostics", "diagnostics", "diagnostics"), values = c("R formulas.", 
    "R formulas.", "R formulas.", "Data frame or formula-environment data.", 
    "Observation precision matrix; missing means identity.", 
    "NULL or independent-block formula for supplied W.", "exclude/omit, include/pass, fail (case-insensitive).", 
    "exclude/omit, include/pass, fail (case-insensitive).", "exclude/omit, include/pass, fail (case-insensitive).", 
    "exclude/omit, include/pass, fail (case-insensitive).", "NULL or contrasts specification.", 
    "stats family or familym() object.", "NULL, fitted mmes object, named list or parameter data frame.", 
    "NULL or supported covariance-parameter constraint map.", 
    "vsm()/CovarianceFactor-v2 and covariance constructors.", 
    "vsm(rotation=TRUE/FALSE).", "Native zero-specific rrm() descriptors.", 
    "Known relationship precision with names and inverse attribute.", 
    "henderson, direct.", "fit, solve.", "reml, ml.", "Positive integer.", 
    "Positive finite number.", "TRUE enables estimation via isTRUE().", 
    "TRUE or FALSE.", "off, groups, classes.", "none, fixed-shape, profile.", 
    "normal, saddle-point.", "auto, off, force; TRUE/FALSE aliases.", 
    "auto, off, force; TRUE/FALSE aliases.", "auto, ldlt, cholmod, pcg.", 
    "Positive finite number.", "Non-negative integer.", "diagonal, nystrom, block-jacobi.", 
    "Positive integer.", "TRUE or FALSE.", "Non-negative integer.", 
    "coarse, krylov.", "NULL or sommer_pcg_recycle state.", "TRUE or FALSE.", 
    "independent, block.", "Positive integer.", "Non-negative integer.", 
    "auto, off, force; TRUE/FALSE aliases.", "auto, off, force; TRUE/FALSE aliases.", 
    "auto, off, force; TRUE/FALSE aliases.", "auto, off, force; TRUE/FALSE aliases.", 
    "none, diagonal.", "Integer >=2.", "Positive integer.", "hutchinson, control-variate.", 
    "Positive integer.", "auto, off, force; TRUE/FALSE aliases.", 
    "auto, off, force; TRUE/FALSE aliases.", "exact-ai, hybrid-ai.", 
    "auto, off, force; TRUE/FALSE aliases.", "em, pxem.", "NULL, non-negative scalar or vector; integer >1 requests decay.", 
    "auto, off, force; TRUE/FALSE aliases.", "NULL or finite positive scalar/vector.", 
    "none, aitken.", "Positive integer.", "Convergence tolerances.", 
    "Convergence tolerances.", "fixed, adaptive.", "Integer >=traceProbes.", 
    "Integer >=lanczosSteps.", "Positive finite number.", "Positive finite number.", 
    "0: none; 1: selected; 2: full coefficient inverse.", "TRUE or FALSE.", 
    "full, none.", "TRUE or FALSE.", "TRUE or FALSE.", "auto, off, force; TRUE/FALSE aliases.", 
    "Positive integer.", "Positive MB budget; speed or limit policy.", 
    "Positive MB budget; speed or limit policy.", "Logical enablement; positive kernel-size threshold.", 
    "Logical enablement; positive kernel-size threshold.", "NULL, positive integer or 'auto'.", 
    "Numerical inverse/variance tolerance.", "Non-negative integer.", 
    "TRUE or FALSE.", "TRUE or FALSE.", "auto, off, force; TRUE/FALSE aliases."
    ), default = c("<missing>", "<missing>", "<missing>", "<missing>", 
    "<missing>", "NULL", "\"exclude\"", "\"exclude\"", "\"exclude\"", 
    "\"exclude\"", "NULL", "stats::gaussian()", "NULL", "NULL", 
    "Formula-dependent", "FALSE", "Selected by model", "Identity when omitted", 
    "henderson", "fit", "reml", "20L", "1e-05", "FALSE", "TRUE", 
    "off", "none", "normal", "off", "auto", "auto", "1e-08", 
    "0L", "diagonal", "32L", "FALSE", "0L", "coarse", "NULL", 
    "FALSE", "independent", "16L", "0L", "auto", "auto", "auto", 
    "auto", "none", "20L", "8L", "hutchinson", "16L", "auto", 
    "off", "exact-ai", "off", "em", "NULL", "off", "NULL", "none", 
    "30L", "1e-04", "1e-04", "fixed", "8L", "20L", "0.001", "0.001", 
    "0L", "TRUE", "full", "TRUE", "FALSE", "auto", "64L", "1000", 
    "speed", "FALSE", "256L", "NULL", "1e-06", "0L", "TRUE", 
    "TRUE", "off"), requires = c("Model-dependent validation.", 
    "Model-dependent validation.", "Model-dependent validation.", 
    "Model-dependent validation.", "Model-dependent validation.", 
    "A supplied W for block formulas; W has no cross-block nonzeros.", 
    "Model-dependent validation.", "Model-dependent validation.", 
    "Model-dependent validation.", "Model-dependent validation.", 
    "Model-dependent validation.", "Gaussian identity uses ordinary fitting; other families use outer PQL.", 
    "task$mode='solve'; NULL uses descriptor starting values.", 
    "Compatible free/fixed working-parameter coordinates.", "Compatible random/residual incidence and covariance dimensions.", 
    "One relationship term, complete balanced Gaussian layout, invariant residuals and block-constant diagonal W; output$inverse=0.", 
    "Henderson requires deterministic backend; observation-space engine handles covariance in record space.", 
    "Matching coefficient levels and attr(Gu,'inverse')=TRUE.", 
    "Model-dependent validation.", "Gaussian identity, one response column, diagonal W; output$inverse=0.", 
    "Henderson ML needs LDLT/CHOLMOD; direct inversion supports both.", 
    "Non-Gaussian outer PQL; estimateTheta additionally needs a single negative-binomial family.", 
    "Non-Gaussian outer PQL; estimateTheta additionally needs a single negative-binomial family.", 
    "Non-Gaussian outer PQL; estimateTheta additionally needs a single negative-binomial family.", 
    "Non-Gaussian outer PQL; estimateTheta additionally needs a single negative-binomial family.", 
    "Gaussian Henderson, independent residuals, fixed diagonal weights and exact matching design rows/classes.", 
    "Deterministic Henderson REML, output$inverse=0, eligible positive low-rank-plus-diagonal or compound-symmetry term.", 
    "Gaussian deterministic Henderson, compatible non-compact residuals/weights.", 
    "Eligible AR(p), ANTE, SAR/CAR covariance factors.", "PCG and eligible tensor prior operators.", 
    "Henderson path unless stated otherwise.", "Henderson REML with solver='pcg'.", 
    "Henderson REML with solver='pcg'.", "Henderson REML with solver='pcg'.", 
    "Henderson REML with solver='pcg'.", "Henderson REML with solver='pcg'.", 
    "Henderson REML with solver='pcg'.", "Henderson REML with solver='pcg'.", 
    "Gaussian identity Henderson REML PCG; krylov and positive recycleRank.", 
    "Same admission as solve.recycleState.", "Henderson REML with solver='pcg'.", 
    "Henderson REML with solver='pcg'.", "Henderson REML with solver='pcg'.", 
    "Eligible deterministic Henderson coefficient graph and workspace.", 
    "Eligible REML block-banded CHOLMOD graph, bandwidth at most 4; blockSchur admission.", 
    "REML, eligible latent low-rank factor layout, disjoint groups, dense-enough relationship and workspace; blockSchur admission.", 
    "Deterministic Henderson ML, random coefficients, no joint-cache requirement; output$inverse!=1.", 
    "Henderson REML with solver='pcg'.", "Henderson REML with solver='pcg'.", 
    "Henderson REML with solver='pcg'.", "Henderson REML with solver='pcg'.", 
    "Henderson REML with solver='pcg'.", "Eligible covariance-factor positive-definiteness certificate.", 
    "LDLT exact random-score fallback solves and panel workspace.", 
    "Deterministic Henderson for both non-none methods.", "Gaussian deterministic Henderson with reducing vcc map and AI-first recovery, positive blending or active common-scale profiling.", 
    "Eligible Gaussian deterministic fitting or direct inversion.", 
    "Model-dependent validation.", "Gaussian deterministic Henderson, all product scales free, full-rank fixed design, scale-preserving vcc map and interior profile.", 
    "Model-dependent validation.", "Deterministic Henderson for both non-none methods.", 
    "Model-dependent validation.", "Model-dependent validation.", 
    "Model-dependent validation.", "Henderson REML with solver='pcg'.", 
    "Henderson REML with solver='pcg'.", "Henderson REML with solver='pcg'.", 
    "Henderson REML with solver='pcg'.", "Henderson REML with solver='pcg'.", 
    "Mode 1: deterministic Henderson. Mode 2: small systems recommended.", 
    "output$inverse>0 for fitted PEV extraction.", "none: Gaussian Henderson, including compatible PCG, ML/REML and recovery paths.", 
    "FALSE: Gaussian Henderson saddlePoint='force', output$inverse=0.", 
    "Model-dependent validation.", "CHOLMOD, output$inverse=1, current eligible factor; no saddle-point.", 
    "Full inverse output (output$inverse=2).", "Henderson path unless stated otherwise.", 
    "Henderson path unless stated otherwise.", "Henderson fitting, CUDA-enabled build, usable NVIDIA/CUDA libraries.", 
    "Henderson fitting, CUDA-enabled build, usable NVIDIA/CUDA libraries.", 
    "Model-dependent validation.", "Model-dependent validation.", 
    "Henderson REML with solver='pcg'.", "Model-dependent validation.", 
    "Model-dependent validation.", "Native Henderson phase-profile path."
    ), excludes = c("None beyond model/task eligibility.", "None beyond model/task eligibility.", 
    "None beyond model/task eligibility.", "None beyond model/task eligibility.", 
    "None beyond model/task eligibility.", "None beyond model/task eligibility.", 
    "None beyond model/task eligibility.", "None beyond model/task eligibility.", 
    "None beyond model/task eligibility.", "None beyond model/task eligibility.", 
    "None beyond model/task eligibility.", "None beyond model/task eligibility.", 
    "Ordinary covariance estimation.", "known-covariance solving and user constraints with factor-score augmentation.", 
    "Residual layout and factor-specific restrictions still apply.", 
    "PQL, known-covariance solving, compression, saddle-point, factor augmentation, weights block formulas and PCG cross-fit state transfer.", 
    "Henderson PCG, compression, hybrid AI, saddle-point, factor-score augmentation, reducedAI and omitted covariance information.", 
    "Unlabelled/mismatched or unsupported singular inputs.", 
    "None beyond model/task eligibility.", "vcc, factor-score augmentation and REML-only PCG features.", 
    "Henderson PCG ML; factor-score augmentation ML.", "Not Gaussian inner-optimizer controls.", 
    "Not Gaussian inner-optimizer controls.", "Not Gaussian inner-optimizer controls.", 
    "Not Gaussian inner-optimizer controls.", "PQL, known-covariance solving, rotation, correlated/compact residuals, latent RR, saddle-point and factor-score augmentation.", 
    "User vcc, rotation, compression, positive blending and native zero-specific rrm().", 
    "PCG, PQL, known-covariance solving, acceleration, rotation, compression, factor augmentation and latent RR.", 
    "Not a new covariance model or approximate derivative threshold.", 
    "Does not make all residual/design work matrix-free.", "Model/task-dependent exclusions.", 
    "Ordinary deterministic/direct paths do not use these settings.", 
    "Ordinary deterministic/direct paths do not use these settings.", 
    "Ordinary deterministic/direct paths do not use these settings.", 
    "Ordinary deterministic/direct paths do not use these settings.", 
    "Ordinary deterministic/direct paths do not use these settings.", 
    "Ordinary deterministic/direct paths do not use these settings.", 
    "Ordinary deterministic/direct paths do not use these settings.", 
    "PQL, known-covariance solving, rotation, factor-score augmentation or coordinate mismatch.", 
    "Same exclusions as solve.recycleState.", "Ordinary deterministic/direct paths do not use these settings.", 
    "Ordinary deterministic/direct paths do not use these settings.", 
    "Ordinary deterministic/direct paths do not use these settings.", 
    "PCG and structurally ineligible graphs.", "Ineligible graph/backend or insufficient workspace.", 
    "Ineligible covariance/residual layouts.", "REML, PCG, saddle-point and joint-cache reuse.", 
    "Ordinary deterministic/direct paths do not use these settings.", 
    "Ordinary deterministic/direct paths do not use these settings.", 
    "Ordinary deterministic/direct paths do not use these settings.", 
    "Ordinary deterministic/direct paths do not use these settings.", 
    "Ordinary deterministic/direct paths do not use these settings.", 
    "No certificate bypasses mathematical positive definiteness.", 
    "Saddle-point and other backends.", "PCG, direct inversion and positive blending; hybrid adds Gaussian/no-PQL/no-known-covariance solving/no-factor-augmentation/no-latent-RR gates.", 
    "PCG, PQL, known-covariance solving, acceleration, saddle-point, factor augmentation and latent RR.", 
    "Positive blending with PQL, PCG, acceleration, saddle-point or factor-score augmentation.", 
    "None beyond model/task eligibility.", "Positive blending, acceleration, PQL, PCG, known-covariance solving, saddle-point, factor augmentation and latent RR.", 
    "None beyond model/task eligibility.", "PCG, direct inversion and positive blending; hybrid adds Gaussian/no-PQL/no-known-covariance solving/no-factor-augmentation/no-latent-RR gates.", 
    "None beyond model/task eligibility.", "None beyond model/task eligibility.", 
    "None beyond model/task eligibility.", "Ordinary deterministic/direct paths do not use these settings.", 
    "Ordinary deterministic/direct paths do not use these settings.", 
    "Ordinary deterministic/direct paths do not use these settings.", 
    "Ordinary deterministic/direct paths do not use these settings.", 
    "Ordinary deterministic/direct paths do not use these settings.", 
    "Modes >0 for known-covariance solving, rotation or factor-score augmentation.", 
    "None beyond model/task eligibility.", "none with PQL, known-covariance solving, factor-score augmentation or latent RR.", 
    "FALSE with PQL, known-covariance solving or factor-score augmentation.", 
    "None beyond model/task eligibility.", "PCG and direct inversion.", 
    "Not an auto/off/force toggle.", "Model/task-dependent exclusions.", 
    "Model/task-dependent exclusions.", "Direct inversion and known-covariance solving.", 
    "Direct inversion and known-covariance solving.", "None beyond model/task eligibility.", 
    "None beyond model/task eligibility.", "Ordinary deterministic/direct paths do not use these settings.", 
    "None beyond model/task eligibility.", "None beyond model/task eligibility.", 
    "Not representation$factorScores='profile'."), fallback = c("Validation errors remain authoritative.", 
    "Validation errors remain authoritative.", "Validation errors remain authoritative.", 
    "Validation errors remain authoritative.", "Validation errors remain authoritative.", 
    "Validation errors remain authoritative.", "Current common filter rejects include2 despite historical help text; include/pass retain rows through this gate, subject to later model validation.", 
    "Current common filter rejects include2 despite historical help text; include/pass retain rows through this gate, subject to later model validation.", 
    "Current common filter rejects include2 despite historical help text; include/pass retain rows through this gate, subject to later model validation.", 
    "Current common filter rejects include2 despite historical help text; include/pass retain rows through this gate, subject to later model validation.", 
    "Validation errors remain authoritative.", "Validation errors remain authoritative.", 
    "Validation errors remain authoritative.", "Hybrid AI uses exact AI for active constraint maps.", 
    "Constructor/model validation remains authoritative.", "Ineligible rotation errors; public coefficients return in original coordinates.", 
    "Henderson dispatches to fitReducedRank; this is not representation$factorScores.", 
    "Model validation errors; density also influences Henderson auto backend.", 
    "Direct inversion always uses its observation-space engine.", 
    "Separate matrix-free PCG dispatch occurs before ordinary solver selection.", 
    "Validation errors remain authoritative.", "Existing PQL validation applies.", 
    "Existing PQL validation applies.", "Existing PQL validation applies.", 
    "Existing PQL validation applies.", "Invalid requested compression errors; groups/classes preserve original rows and sufficient statistics.", 
    "fixed-shape requires fixed shapes; profile requires free eligible shapes and bounded outer optimization.", 
    "saddle-point requests augmented LU; normal uses ordinary equations.", 
    "Auto enables exact sparse innovation kernels for modified-Cholesky factors (dimension >=64, lag <=3) and sparse spatial factors (dimension >=500, weight density <=0.01); force enables all eligible kernels.",
    "Ineligible operators use assembled paths.", "Existing admission and validation apply.", 
    "Existing PCG validation and native accuracy checks apply.", 
    "Existing PCG validation and native accuracy checks apply.", 
    "Existing PCG validation and native accuracy checks apply.", 
    "Existing PCG validation and native accuracy checks apply.", 
    "Existing PCG validation and native accuracy checks apply.", 
    "Existing PCG validation and native accuracy checks apply.", 
    "Existing PCG validation and native accuracy checks apply.", 
    "No automatic remapping; current-operator Ritz selection/factors are rebuilt.", 
    "Existing PCG validation and native accuracy checks apply.", 
    "Existing PCG validation and native accuracy checks apply.", 
    "Existing PCG validation and native accuracy checks apply.", 
    "Existing PCG validation and native accuracy checks apply.", 
    "off uses generic sparse factorization; force bypasses admission heuristics, not structural/memory requirements.", 
    "Only force enables this candidate; auto does not dispatch it. Structural, bandwidth and workspace limits remain.", 
    "off excludes multi-factor latent candidate; auto applies crossover policy; force still checks structure and workspace.", 
    "auto uses SolverPlan cost/memory policy; force still needs mathematical eligibility; otherwise ordinary joint path.", 
    "Existing PCG validation and native accuracy checks apply.", 
    "Existing PCG validation and native accuracy checks apply.", 
    "Existing PCG validation and native accuracy checks apply.", 
    "Existing PCG validation and native accuracy checks apply.", 
    "Existing PCG validation and native accuracy checks apply.", 
    "Unavailable/inconclusive certificate uses generic validation.", 
    "Only force activates panels; speed errors if workspace cannot fit; limit permits scalar fallback.", 
    "Hybrid AI uses exact AI for active vcc maps and final certification. Cannot combine with Aitken.", 
    "R force errors on failed front-end gates; auto records fallback. Native non-reducing maps can remain inactive even for force.", 
    "Validation errors remain authoritative.", "NULL selects AI-first recovery where eligible; explicit zero selects the legacy optimizer. Unsupported automatic recovery becomes zero blending.", 
    "auto reports front-end admission fallback; force errors there. Native variance-floor/profile failures can error after admission.", 
    "NULL uses unit steps for blending/recovery; otherwise 0.5, 0.7, then 0.9.", 
    "Cannot combine Aitken with hybrid AI. Likelihood safeguards can reject extrapolated candidates.", 
    "Validation errors remain authoritative.", "Validation errors remain authoritative.", 
    "Validation errors remain authoritative.", "Existing PCG validation and native accuracy checks apply.", 
    "Existing PCG validation and native accuracy checks apply.", 
    "Existing PCG validation and native accuracy checks apply.", 
    "Existing PCG validation and native accuracy checks apply.", 
    "Existing PCG validation and native accuracy checks apply.", 
    "PCG permits 0/2; direct inversion permits 0/2. No automatic substitution for mode 1.", 
    "Validation errors remain authoritative.", "none omits InfMat/theta_se; uncertainty-dependent methods explicitly require refitting.", 
    "Methods needing omitted C request a refit; no hidden reconstruction.", 
    "Returns assembled setup before native fitting on ordinary paths; known-covariance solving/PQL/profile dispatch can occur earlier.", 
    "off or ineligible path uses alternative final LDLT/Takahashi route.", 
    "Constructor defaults to 64; native-only fallback also reads sommer.mme.panelCi2.", 
    "NULL reads sommer.mme.* options, then 1000 MB/speed. Only participating workspaces obey this budget; speed can error, limit accepts supported slower fallbacks.", 
    "NULL reads sommer.mme.* options, then 1000 MB/speed. Only participating workspaces obey this budget; speed can error, limit accepts supported slower fallbacks.", 
    "NULL reads sommer.mme.* options, then FALSE/256. Unavailable requested GPU errors; small/ineligible kernels remain CPU.", 
    "NULL reads sommer.mme.* options, then FALSE/256. Unavailable requested GPU errors; small/ineligible kernels remain CPU.", 
    "Scoped adapter-dependent BLAS setting is restored on exit.", 
    "Validation errors remain authoritative.", "Existing PCG validation and native accuracy checks apply.", 
    "Validation errors remain authoritative.", "Validation errors remain authoritative.", 
    "Only force activates detailed profile; auto remains inactive."
    ), effect = c("Response, fixed/random designs and covariance products; rcov defaults to ~units in the body.", 
    "Response, fixed/random designs and covariance products; rcov defaults to ~units in the body.", 
    "Response, fixed/random designs and covariance products; rcov defaults to ~units in the body.", 
    "Data and formula environments determine model-frame evaluation.", 
    "Residual weighting; dimensions may match original or retained observations.", 
    "Declares independent weighting blocks, not a replacement for W.", 
    "Central observation filtering and retained/original row maps.", 
    "Central observation filtering and retained/original row maps.", 
    "Central observation filtering and retained/original row maps.", 
    "Central observation filtering and retained/original row maps.", 
    "Fixed-effect model-matrix contrasts.", "Selects statistical response family, not a linear solver.", 
    "Supplies known covariance parameters in natural coordinates.", 
    "Ties/scales parameter directions; reducedAI can remove redundant sensitivity work.", 
    "Identity, diagonal, US, correlation, AR/MA/Toeplitz, FA/RR, ANTE, spatial and custom factors.", 
    "Eigenbasis change supported by Henderson and direct inversion.", 
    "Latent fitting for singular random covariance, including conditional operators.", 
    "Known relationship is statistical structure, not a preconditioner.", 
    "Equation domain, not factorization backend.", "Uses known covariances without variance-component estimation.", 
    "Changes statistical objective and associated score/information terms.", 
    "Outer PQL iteration limit.", "Outer deviance/theta convergence tolerance.", 
    "Estimate negative-binomial theta for a single MASS negative.binomial family.", 
    "Reuse compatible inner covariance parameters and factorization caches.", 
    "Exact reduction; classes also caches cross-products and derivative operands.", 
    "Equivalent latent representation; profile also owns an outer optimization loop. Shape SEs are unavailable in profile mode.", 
    "Exact augmented equations with pivoted sparse LU; solver label is not the actual LU backend.", 
    "Exact sparse factor operands; compatibility covariance/derivatives remain available.", 
    "Avoid full Kronecker prior assembly during PCG optimization.", 
    "Requested backend; model and formulation determine admission and selected solver.", "Relative linear-solve tolerance; also used by known-covariance solving.", 
    "CG limit; zero selects automatic limit; also used by known-covariance solving.", 
    "SPD solve aid, not a statistical covariance approximation; known-covariance solving permits diagonal/block-jacobi only.", 
    "Rank used by the Nystrom preconditioner.", "Reuse compatible accepted solutions; also available to known-covariance solving.", 
    "Bounded accepted-point reuse; zero disables recycling.", 
    "Initial coarse correction or balanced SPD Krylov recycling; krylov needs positive recycleRank.", 
    "Explicit cross-fit import; exact coefficient coordinates required.", 
    "Export accepted Krylov basis for explicit reuse.", "Independent or block CG; known-covariance solving supports independent only.", 
    "Block RHS panel width; dependent/broken block directions use checked fallbacks.", 
    "Periodic recursive-residual replacement; zero disables it; final true residuals still checked. Also used by known-covariance solving.", 
    "Selects exact dense Schur, chain, banded or latent elimination.", 
    "Exact block-banded elimination.", "Multi-factor Woodbury/Schur elimination, not native zero-specific RR.", 
    "Eliminate random block before fixed-effect Schur complement.", 
    "Symmetric congruence for stochastic log determinants, with determinant correction.", 
    "Stochastic Lanczos quadrature depth.", "Shared probe budget for score traces and stochastic log determinants.", 
    "Stochastic score trace estimator; control-variate uses low-rank correction.", 
    "Low-rank trace control-variate dimension.", "Avoid redundant generic factor checks; proposed covariance-evaluation submodule.", 
    "Batch exact traces without thresholding derivative entries.", 
    "Exact AI or damped BFGS between exact refreshes; proposal extrapolation is separate.", 
    "Exact independent-direction AI assembly; scores remain full-coordinate; full uncertainty can still require final full AI.", 
    "Chooses EM/PXEM direction or on-demand recovery method.", 
    "Direction blending and recovery policy, not AI-diagonal blending.", 
    "Analytic common variance scale plus profiled-shape AI; distinct optimizer with its own acceptance/certification.", 
    "Scales proposal steps; likelihood safeguards remain active.", 
    "Safeguarded proposal extrapolation, not curvature construction.", 
    "Inner covariance iteration limit, not proof of convergence.", 
    "Likelihood/proposal convergence; hybrid/recovery paths also certify projected scores.", 
    "Likelihood/proposal convergence; hybrid/recovery paths also certify projected scores.", 
    "Adaptive budgets grow at initial covariance point, then freeze before line search; final empirical checks can refuse convergence.", 
    "Upper adaptive probe budget.", "Upper adaptive Lanczos depth.", 
    "Empirical log-determinant accuracy target, not total-error bound.", 
    "Empirical score-probe SE target, not total-error bound.", 
    "Coefficient uncertainty, independent of covariance-parameter information.", 
    "Controls PEV output extraction; FALSE does not itself disable requested inverse work.", 
    "Final covariance uncertainty only; optimizer AI and coefficient PEV remain separate.", 
    "Skips compatibility C assembly, not augmented factorization or design storage.", 
    "Setup inspection, not a universal eligibility or execution-plan API.", 
    "Exact final selected inverse, not a score-estimator choice.", 
    "Batch width for inverse solves.", "Resource admission, not a process-memory cap.", 
    "Resource admission, not a process-memory cap.", "Eligible dense kernels only; no change to equation formulation.", 
    "Eligible dense kernels only; no change to equation formulation.", 
    "BLAS threads only; OpenMP configuration remains separate.", 
    "Numerical stabilization and variance floors; not PCG solve tolerance.", 
    "Probe-stream identifier; reproducibility does not imply estimator accuracy.", 
    "Fit messages and package-age warning, respectively.", "Fit messages and package-age warning, respectively.", 
    "Phase timing and workload measurements."), source = c("R/mmes.R", 
    "R/mmes.R", "R/mmes.R", "R/mmes.R", "R/mmes.R", "R/mmes.R", 
    "R/mmes.R", "R/mmes.R", "R/mmes.R", "R/mmes.R", "R/mmes.R", 
    "R/mmes.R", "R/FUN_mme_solve.R", "R/mmes.R", "R/FUN_vsm.R", 
    "R/mmes.R", "src/mme_rr.h", "R/FUN_vsm.R", "R/FUN_mme_modules.R", 
    "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", 
    "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", 
    "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", 
    "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", 
    "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", 
    "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", 
    "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", 
    "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", 
    "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", 
    "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", 
    "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", 
    "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", 
    "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", 
    "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", 
    "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", 
    "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", 
    "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", 
    "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", 
    "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", 
    "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", 
    "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", 
    "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", "R/FUN_mme_modules.R", 
    "R/FUN_mme_modules.R"), status = c("current", "current", 
    "current", "current", "current", "current", "current", "current", 
    "current", "current", "current", "current", "current", "current", 
    "current", "current", "current", "current", "current", "current", 
    "current", "current", "current", "current", "current", "current", 
    "current", "experimental", "experimental", "experimental", 
    "current", "current", "current", "current", "current", "current", 
    "current", "current", "current", "current", "current", "current", 
    "current", "experimental", "experimental", "experimental", 
    "experimental", "current", "current", "current", "current", 
    "current", "experimental", "experimental", "current", "experimental", 
    "current", "current", "experimental", "current", "current", 
    "current", "current", "current", "current", "current", "current", 
    "current", "current", "current", "current", "current", "current", 
    "current", "experimental", "experimental", "current", "current", 
    "current", "current", "current", "current", "current", "current", 
    "current", "experimental"), previous = c("mmes.fixed", "mmes.random", 
    "mmes.rcov", "mmes.data", "mmes.W", "mmes.weights", "mmes.naMethodX", 
    "mmes.naMethodY", "mmes.naMethodRandom", "mmes.naMethodR", 
    "mmes.contrasts", "mmes.family", "mmes.covPar", "mmes.vcc", 
    "model.covariance", "model.rotation", "model.latentRR", "model.Gu", 
    "mmes.henderson", "mmes.solveOnly", "mmes.REML", "pql.maxit", 
    "pql.tol", "pql.estimateTheta", "pql.warmStart", "engine.compression", 
    "engine.factorScoreAugmentation", "experimental.saddlePoint", 
    "experimental.sparseFactors", "experimental.matrixFreePcg", 
    "engine.solver", "pcg.tol", "pcg.maxIters", "pcg.preconditioner", 
    "pcg.nystromRank", "pcg.warmStart", "pcg.recycleRank", "pcg.recycleMethod", 
    "pcg.recycleState", "pcg.exportRecycle", "pcg.rhsMethod", 
    "pcg.blockSize", "pcg.residualRefresh", "experimental.blockSchur", 
    "experimental.blockBanded", "experimental.factorSchurMultiFactor", 
    "experimental.dFirstML", "pcg.logDetScaling", "pcg.lanczosSteps", 
    "pcg.traceProbes", "pcg.traceEstimator", "pcg.traceRank", 
    "experimental.pdCertificates", "experimental.traceBatch", 
    "engine.acceleration", "experimental.reducedAI", "mmes.blend", 
    "mmes.blendWeight", "experimental.commonScale", "mmes.stepWeight", 
    "engine.acceleration", "mmes.nIters", "mmes.tolParConvLL", 
    "mmes.tolParConvNorm", "pcg.accuracy", "pcg.maxTraceProbes", 
    "pcg.maxLanczosSteps", "pcg.logDetTol", "pcg.scoreTol", "mmes.computeCi", 
    "mmes.getPEV", "engine.covarianceInformation", "engine.retainCoefficientMatrix", 
    "mmes.returnParam", "experimental.cholmodFinalSelected", 
    "experimental.panelCi2", "engine.denseMemoryMB", "engine.memoryPolicy", 
    "engine.gpu", "engine.gpuMinSize", "mmes.blasThreads", "mmes.tolParInv", 
    "pcg.seed", "mmes.verbose", "mmes.dateWarning", "experimental.profile"
    )), row.names = c("1", "2", "3", "4", "5", "6", "7", "8", 
"9", "10", "11", "12", "15", "19", "93", "94", "95", "96", "16", 
"14", "17", "89", "90", "91", "92", "37", "39", "86", "85", "79", 
"36", "51", "52", "53", "54", "55", "56", "57", "58", "59", "61", 
"62", "63", "75", "76", "77", "78", "64", "66", "65", "67", "68", 
"81", "84", "38", "87", "24", "25", "88", "26", "38.1", "20", 
"21", "22", "69", "70", "71", "72", "73", "27", "28", "40", "41", 
"29", "80", "82", "42", "43", "44", "45", "30", "23", "74", "31", 
"32", "83"), class = "data.frame"), decisions = structure(list(
    id = c("task", "known", "family", "pql", "domain", "direct", 
    "henderson", "pcg", "deterministic", "representation", "evaluation", 
    "optimizer", "outputs", "policy"), parent = c("", "task", 
    "task", "family", "family", "domain", "domain", "henderson", 
    "henderson", "deterministic", "representation", "evaluation", 
    "optimizer", "outputs"), condition = c("Start with model and requested task.", 
    "task$mode='solve'.", "task$mode='fit'.", "Non-Gaussian-identity family: outer PQL.", 
    "Gaussian fit, or inner PQL working fit.", "formulation='direct'.", 
    "formulation='henderson'.", "solve$method='pcg'.", "solve$method='auto', 'ldlt' or 'cholmod'.", 
    "Inspect representation requests, model layout and parameter constraints.", 
    "Select supported solve/logdet/score/curvature bundles.", 
    "Select update, proposal and convergence policies.", "Request coefficient/covariance uncertainty independently.", 
    "Apply execution policies and report actual selected methods."
    ), result = c("Choose known solving or covariance estimation.", 
    "Known-covariance matrix-free PCG; no estimation or inverse output.", 
    "Inspect family.", "control.task.pql owns outer convergence; control.convergence owns inner convergence.", 
    "Select equation domain.", "ai_reml_direct_sp2: ML/REML, output$inverse=0/2, no Henderson backend choice.", 
    "Select deterministic factorization or REML PCG.", "Iterative solves + SLQ logdet + stochastic score traces; REML, output$inverse=0/2.", 
    "Exact factorization-based evaluation; ML/REML, output$inverse=0/1/2.", 
    "Ordinary, compression, rotation, latent RR, factor augmentation or saddle-point, subject to cross-gates.", 
    "Structured elimination and exact/reduced/hybrid AI are not arbitrary interchangeable switches.", 
    "AI-first recovery, explicit blending, legacy zero blend or common-scale; Aitken/hybrid have separate ownership.", 
    "output$inverse controls fit-time PEV and coefficient-inverse work; output$covariance and retained C have separate effects.", 
    "Requested does not imply eligible or selected; consult diagnostics."
    ), modules = c("task", "task", "task", "task", "formulation", 
    "formulation", "solve", "solve", "solve", "representation", 
    "score", "update", "output", "execution")), row.names = c(NA, 
14L), class = "data.frame"), edges = structure(list(from = c("task", 
"task", "family", "family", "domain", "domain", "henderson", 
"henderson", "deterministic", "representation", "evaluation", 
"optimizer", "outputs", "pql", "pcg", "direct", "known"), to = c("known", 
"family", "pql", "domain", "direct", "henderson", "pcg", "deterministic", 
"representation", "evaluation", "optimizer", "outputs", "policy", 
"domain", "representation", "optimizer", "outputs"), kind = c("branch", 
"branch", "branch", "branch", "branch", "branch", "branch", "branch", 
"branch", "branch", "branch", "branch", "branch", "join", "join", 
"join", "join")), class = "data.frame", row.names = c(NA, 17L
)))
out$controls <- out$controls[out$controls$path != "control.output.pev", , drop=FALSE]
out$controls$values[out$controls$path == "control.representation.equations"] <-
  "normal, saddle-point, conditional."
out$controls$effect[out$controls$path == "control.representation.equations"] <-
  "Select ordinary, saddle-point, or sparse conditional latent equations independently of AI/EM update blocks."
out$controls <- rbind(out$controls, data.frame(
  path="control.update.method", module="update", values="ai, em, conditional-fa.",
  default="ai", requires="Conditional FA: Gaussian Henderson REML, one FA relationship term, diagonal/FA residuals, no weights/rotation/vcc, omitted covariance information and public C.",
  excludes="PCG, augmentation, compression, weights, rotation, vcc and uncertainty outputs; conditional AI uses its own exact curvature and EM recovery.",
  fallback="Explicit eligibility error; no change of estimator.",
  effect="Select AI or conditional EM; representation.equations='conditional' selects reusable latent equations. conditional-fa remains the legacy EM selector.",
  source="R/FUN_mme_conditional.R", status="experimental", previous="new"))
out$controls <- rbind(out$controls, data.frame(
  path="control.representation.fixedRank", module="representation",
  values="error, drop.", default="error",
  requires="Gaussian identity-link Henderson or direct fit; rank selection uses shared native sparse QR after observation filtering.",
  excludes="PQL, solve mode, conditional FA, factor scores, rotation and compression; automatic rank-reduced term inference requires a full-rank refit.",
  fallback="Default error; opt-in drop warns and records the selected basis and zero constraints.",
  effect="Fit a full-rank subset while preserving original coefficient names; aliased coefficients are zero constraints, not independently estimated effects.",
  source="R/FUN_fixed_rank.R, src/mme_fixed_rank.cpp",
  status="supported", previous="new"))
out$decisions <- rbind(out$decisions, data.frame(
  id="conditional-fa", parent="henderson",
  condition="representation$equations='conditional' or update$method='conditional-fa': eligible Gaussian FA REML model.",
  result="Sparse posterior moments + cached contractions; independent AI/EM update blocks, no uncertainty outputs.",
  modules="representation, update"))
out$edges <- rbind(out$edges, data.frame(from="henderson", to="conditional-fa", kind="branch"),
  data.frame(from="conditional-fa", to="outputs", kind="join"))
out
}

Try the sommer package in your browser

Any scripts or data that you put into this service are public.

sommer documentation built on Oct. 25, 2026, 5:06 p.m.