{
  "schema_version": 1,
  "builder_plan": {
    "scenario": "A self-hosted assistant is too expensive because its model uses most of the GPU memory.",
    "change": "Try the paper's supported lower-precision weights on a copy of your serving setup.",
    "baseline": "The same model at its original precision, on the same GPU.",
    "steps": [
      "Locate the paper's implementation and check its license, model support, data needs, and hardware requirements. Stop here if you cannot obtain the required artifacts.",
      "Save a small set of representative product tasks and expected outcomes. Keep evaluation tasks out of any training or tuning, and choose quality and cost limits before running.",
      "Run the baseline and the proposed change on identical inputs. Keep other settings fixed and repeat paired runs to expose variation.",
      "Save per-task outputs, failures, timings, and all usage costs. Review regressions before expanding the test."
    ],
    "measure": "Peak memory, task pass rate, latency, and total serving cost at the same context and load.",
    "decision": "Keep the change only if it meets your preselected quality and latency limits and improves the metric you care about after setup and operating costs. Otherwise retain the baseline. This is an exploration plan, not a validated recommendation."
  },
  "builder_review": null,
  "arxiv_id": "2609.14706",
  "title": "WaterKron and FlipFlop Hessian: Information-Theoretically Grounded Quantization with Kronecker-factored Hessians",
  "summary": "It replaces the input-only (activation covariance) Hessian approximation used in standard GPTQ with a Kronecker-factored Hessian whose factors are selected by minimizing an explicit mismatch factor via alternating covariance-fitting ('flip-flop') updates, combined with waterfilling scales and entropy coding. The cost is additional calibration-time computation for the iterative factor fitting and entropy coding, plus implementation complexity beyond stock GPTQ; inference memory and latency are unchanged. It can fail if the claimed perplexity and KL gains do not hold on the reader's specific models, bit-widths, or downstream tasks, and integrating it requires modifying an existing PTQ pipeline rather than using an off-the-shelf tool.",
  "rationale": "A drop-in Hessian choice for GPTQ fits constrained infrastructure well, but with only unquantified consistency claims in the abstract, the reader should validate perplexity gains on their own models before adopting it in production.",
  "technique": "FlipFlop Kronecker Hessian for post-training quantization",
  "family": "quantizacao",
  "recommendation": "testar",
  "published": "2026-09-13",
  "as_of": "2026-10-18",
  "editorial_status": "indexed",
  "source_url": "https://arxiv.org/abs/2609.14706",
  "independent_implementations": 0,
  "total_implementations": 0,
  "stars": 0,
  "citations": 0,
  "claims": [
    {
      "claim_id": "claim-01",
      "statement": "It replaces the input-only (activation covariance) Hessian approximation used in standard GPTQ with a Kronecker-factored Hessian whose factors are selected by minimizing an explicit mismatch factor via alternating covariance-fitting ('flip-flop') updates, combined with waterfilling scales and entropy coding. The cost is additional calibration-time computation for the iterative factor fitting and entropy coding, plus implementation complexity beyond stock GPTQ; inference memory and latency are unchanged. It can fail if the claimed perplexity and KL gains do not hold on the reader's specific models, bit-widths, or downstream tasks, and integrating it requires modifying an existing PTQ pipeline rather than using an off-the-shelf tool.",
      "basis": "inferred",
      "result": "",
      "baseline": "",
      "conditions": "",
      "source_url": "https://arxiv.org/abs/2609.14706",
      "source_page": null,
      "source_excerpt": ""
    },
    {
      "claim_id": "claim-02",
      "statement": "The FlipFlop Hessian consistently improves KL divergence and perplexity over input-only, marginal, and Frobenius-based Hessian choices; no magnitude is reported in the abstract.",
      "basis": "inferred",
      "result": "",
      "baseline": "",
      "conditions": "",
      "source_url": "https://arxiv.org/abs/2609.14706",
      "source_page": null,
      "source_excerpt": ""
    }
  ],
  "exposure_map": [
    {
      "dimension": "quality",
      "basis": "not_evaluated",
      "finding": "",
      "interpretation": "",
      "limitation": "",
      "next_check": "",
      "source_url": "",
      "source_page": null,
      "source_excerpt": ""
    },
    {
      "dimension": "compute",
      "basis": "not_evaluated",
      "finding": "",
      "interpretation": "",
      "limitation": "",
      "next_check": "",
      "source_url": "",
      "source_page": null,
      "source_excerpt": ""
    },
    {
      "dimension": "latency",
      "basis": "not_evaluated",
      "finding": "",
      "interpretation": "",
      "limitation": "",
      "next_check": "",
      "source_url": "",
      "source_page": null,
      "source_excerpt": ""
    },
    {
      "dimension": "operations",
      "basis": "not_evaluated",
      "finding": "",
      "interpretation": "",
      "limitation": "",
      "next_check": "",
      "source_url": "",
      "source_page": null,
      "source_excerpt": ""
    },
    {
      "dimension": "compatibility",
      "basis": "not_evaluated",
      "finding": "",
      "interpretation": "",
      "limitation": "",
      "next_check": "",
      "source_url": "",
      "source_page": null,
      "source_excerpt": ""
    },
    {
      "dimension": "security",
      "basis": "not_evaluated",
      "finding": "",
      "interpretation": "",
      "limitation": "",
      "next_check": "",
      "source_url": "",
      "source_page": null,
      "source_excerpt": ""
    },
    {
      "dimension": "data_and_training",
      "basis": "not_evaluated",
      "finding": "",
      "interpretation": "",
      "limitation": "",
      "next_check": "",
      "source_url": "",
      "source_page": null,
      "source_excerpt": ""
    },
    {
      "dimension": "reproducibility",
      "basis": "not_evaluated",
      "finding": "",
      "interpretation": "",
      "limitation": "",
      "next_check": "",
      "source_url": "",
      "source_page": null,
      "source_excerpt": ""
    }
  ],
  "risks": [],
  "minimum_test": [],
  "open_questions": [],
  "independent_tests": [],
  "lab_reproductions": [],
  "report_available": false,
  "validation_tier": "unknown",
  "evidence_tier": "unknown",
  "infrastructure_basis": "unknown",
  "equations": [
    {
      "anchor": "S4.Ex19",
      "label": "",
      "section": "4 Kronecker-Hessian Mismatch Factor",
      "role": "metric",
      "latex": "\\Phi(H,A\\otimes B):=\\frac{\\tr(H(A\\otimes B)^{-1})/mn}{|H|^{1/mn}\\cdot|A|^{-1/n}|B|^{-1/m}}=\\frac{\\tr(H(A\\otimes B)^{-1})/mn}{|H|^{1/mn}\\cdot|A\\otimes B|^{-1/mn}}",
      "mathml": "<math display=\"block\"><mrow><mrow><mi mathvariant=\"normal\">Φ</mi><mo>⁡</mo><mrow><mo stretchy=\"false\">(</mo><mi>H</mi><mo>,</mo><mrow><mi>A</mi><mo lspace=\"0.222em\" rspace=\"0.222em\">⊗</mo><mi>B</mi></mrow><mo stretchy=\"false\">)</mo></mrow></mrow><mo>:=</mo><mfrac><mrow><mrow><mrow><mi>tr</mi><mo>⁡</mo><mrow><mo stretchy=\"false\">(</mo><mrow><mi>H</mi><mo lspace=\"0em\" rspace=\"0em\">​</mo><msup><mrow><mo stretchy=\"false\">(</mo><mrow><mi>A</mi><mo lspace=\"0.222em\" rspace=\"0.222em\">⊗</mo><mi>B</mi></mrow><mo stretchy=\"false\">)</mo></mrow><mrow><mo>−</mo><mn>1</mn></mrow></msup></mrow><mo stretchy=\"false\">)</mo></mrow></mrow><mo>/</mo><mi>m</mi></mrow><mo lspace=\"0em\" rspace=\"0em\">​</mo><mi>n</mi></mrow><mrow><mo fence=\"false\" rspace=\"0.167em\" stretchy=\"false\">|</mo><mi>H</mi><mo fence=\"false\" stretchy=\"false\">|</mo><msup><mrow></mrow><mrow><mrow><mn>1</mn><mo>/</mo><mi>m</mi></mrow><mo lspace=\"0em\" rspace=\"0em\">​</mo><mi>n</mi></mrow></msup><mo lspace=\"0em\" rspace=\"0em\">⋅</mo><mo fence=\"false\" rspace=\"0.167em\" stretchy=\"false\">|</mo><mi>A</mi><mo fence=\"false\" rspace=\"0.167em\" stretchy=\"false\">|</mo><msup><mrow></mrow><mrow><mo>−</mo><mn>1</mn><mo>/</mo><mi>n</mi></mrow></msup><mo fence=\"false\" rspace=\"0.167em\" stretchy=\"false\">|</mo><mi>B</mi><mo fence=\"false\" stretchy=\"false\">|</mo><msup><mrow></mrow><mrow><mo>−</mo><mn>1</mn><mo>/</mo><mi>m</mi></mrow></msup></mrow></mfrac><mo>=</mo><mfrac><mrow><mrow><mrow><mi>tr</mi><mo>⁡</mo><mrow><mo stretchy=\"false\">(</mo><mrow><mi>H</mi><mo lspace=\"0em\" rspace=\"0em\">​</mo><msup><mrow><mo stretchy=\"false\">(</mo><mrow><mi>A</mi><mo lspace=\"0.222em\" rspace=\"0.222em\">⊗</mo><mi>B</mi></mrow><mo stretchy=\"false\">)</mo></mrow><mrow><mo>−</mo><mn>1</mn></mrow></msup></mrow><mo stretchy=\"false\">)</mo></mrow></mrow><mo>/</mo><mi>m</mi></mrow><mo lspace=\"0em\" rspace=\"0em\">​</mo><mi>n</mi></mrow><mrow><mo fence=\"false\" rspace=\"0.167em\" stretchy=\"false\">|</mo><mi>H</mi><mo fence=\"false\" stretchy=\"false\">|</mo><msup><mrow></mrow><mrow><mrow><mn>1</mn><mo>/</mo><mi>m</mi></mrow><mo lspace=\"0em\" rspace=\"0em\">​</mo><mi>n</mi></mrow></msup><mo lspace=\"0em\" rspace=\"0em\">⋅</mo><mo fence=\"false\" rspace=\"0.167em\" stretchy=\"false\">|</mo><mi>A</mi><mo lspace=\"0.222em\" rspace=\"0.222em\">⊗</mo><mi>B</mi><mo fence=\"false\" stretchy=\"false\">|</mo><msup><mrow></mrow><mrow><mo>−</mo><mn>1</mn><mo>/</mo><mi>m</mi><mi>n</mi></mrow></msup></mrow></mfrac></mrow></math>",
      "context": "Theorem 4.1 now gives us a clear criterion for choosing the Hessian approximation <math display=\"inline\"><mrow><mi>A</mi><mo lspace=\"0.222em\" rspace=\"0.222em\">⊗</mo><mi>B</mi></mrow></math> in order to minimize distortion: We have to minimize the term in the distortion that depends on <math display=\"inline\"><mrow><mi>A</mi><mo>,</mo><mi>B</mi></mrow></math>, which is <math display=\"inline\"><mrow><mrow><mrow><msup><mrow><mo stretchy=\"false\">|</mo><mi>A</mi><mo stretchy=\"false\">|</mo></mrow><mrow><mn>1</mn><mo>/</mo><mi>n</mi></mrow></msup><mo lspace=\"0em\" rspace=\"0em\">​</mo><msup><mrow><mo stretchy=\"false\">|</mo><mi>B</mi><mo stretchy=\"false\">|</mo></mrow><mrow><mn>1</mn><mo>/</mo><mi>m</mi></mrow></msup><mo lspace=\"0.167em\" rspace=\"0em\">​</mo><mrow><mi>tr</mi><mo>⁡</mo><mrow><mo stretchy=\"false\">(</mo><mrow><mi>H</mi><mo lspace=\"0em\" rspace=\"0em\">​</mo><msup><mrow><mo stretchy=\"false\">(</mo><mrow><mi>A</mi><mo lspace=\"0.222em\" rspace=\"0.222em\">⊗</mo><mi>B</mi></mrow><mo stretchy=\"false\">)</mo></mrow><mrow><mo>−</mo><mn>1</mn></mrow></msup></mrow><mo stretchy=\"false\">)</mo></mrow></mrow></mrow><mo>/</mo><mi>m</mi></mrow><mo lspace=\"0em\" rspace=\"0em\">​</mo><mi>n</mi></mrow></math>. It is cleanest to additionally normalize this by <math display=\"inline\"><msup><mrow><mo stretchy=\"false\">|</mo><mi>H</mi><mo stretchy=\"false\">|</mo></mrow><mrow><mrow><mn>1</mn><mo>/</mo><mi>m</mi></mrow><mo lspace=\"0em\" rspace=\"0em\">​</mo><mi>n</mi></mrow></msup></math>. We call the resulting metric the Kronecker-Hessian mismatch factor and abbreviate it as <math display=\"inline\"><mi mathvariant=\"normal\">Φ</mi></math>:",
      "headline": "",
      "explanation": "",
      "objective": "",
      "symbols": {},
      "evidence": "",
      "evidence_url": "",
      "source_url": ""
    },
    {
      "anchor": "S5.EGx3",
      "label": "",
      "section": "5 The FlipFlop Hessian Approximation",
      "role": "proposed_method",
      "latex": "A_{k+1} \\propto\\mathbb{E}[G^{T}B_{k}^{-1}G]=\\mathbb{E}[g^{T}B_{k}^{-1}g\\cdot xx^{T}] \\\\ B_{k+1} \\propto\\mathbb{E}[GA_{k+1}^{-1}G^{T}]=\\mathbb{E}[x^{T}A_{k+1}^{-1}x\\cdot gg^{T}]",
      "mathml": "<math display=\"block\"><mrow><msub><mi>A</mi><mrow><mi>k</mi><mo>+</mo><mn>1</mn></mrow></msub><mrow><mphantom></mphantom><mo>∝</mo><mrow><mi>𝔼</mi><mo>⁡</mo><mrow><mo stretchy=\"false\">[</mo><mrow><msup><mi>G</mi><mi>T</mi></msup><mo lspace=\"0em\" rspace=\"0em\">​</mo><msubsup><mi>B</mi><mi>k</mi><mrow><mo>−</mo><mn>1</mn></mrow></msubsup><mo lspace=\"0em\" rspace=\"0em\">​</mo><mi>G</mi></mrow><mo stretchy=\"false\">]</mo></mrow></mrow><mo>=</mo><mrow><mi>𝔼</mi><mo>⁡</mo><mrow><mo stretchy=\"false\">[</mo><mrow><mrow><mrow><msup><mi>g</mi><mi>T</mi></msup><mo lspace=\"0em\" rspace=\"0em\">​</mo><msubsup><mi>B</mi><mi>k</mi><mrow><mo>−</mo><mn>1</mn></mrow></msubsup><mo lspace=\"0em\" rspace=\"0em\">​</mo><mi>g</mi></mrow><mo lspace=\"0.222em\" rspace=\"0.222em\">⋅</mo><mi>x</mi></mrow><mo lspace=\"0em\" rspace=\"0em\">​</mo><msup><mi>x</mi><mi>T</mi></msup></mrow><mo stretchy=\"false\">]</mo></mrow></mrow></mrow></mrow></math><math display=\"block\"><mrow><msub><mi>B</mi><mrow><mi>k</mi><mo>+</mo><mn>1</mn></mrow></msub><mrow><mphantom></mphantom><mo>∝</mo><mrow><mi>𝔼</mi><mo>⁡</mo><mrow><mo stretchy=\"false\">[</mo><mrow><mi>G</mi><mo lspace=\"0em\" rspace=\"0em\">​</mo><msubsup><mi>A</mi><mrow><mi>k</mi><mo>+</mo><mn>1</mn></mrow><mrow><mo>−</mo><mn>1</mn></mrow></msubsup><mo lspace=\"0em\" rspace=\"0em\">​</mo><msup><mi>G</mi><mi>T</mi></msup></mrow><mo stretchy=\"false\">]</mo></mrow></mrow><mo>=</mo><mrow><mi>𝔼</mi><mo>⁡</mo><mrow><mo stretchy=\"false\">[</mo><mrow><mrow><mrow><msup><mi>x</mi><mi>T</mi></msup><mo lspace=\"0em\" rspace=\"0em\">​</mo><msubsup><mi>A</mi><mrow><mi>k</mi><mo>+</mo><mn>1</mn></mrow><mrow><mo>−</mo><mn>1</mn></mrow></msubsup><mo lspace=\"0em\" rspace=\"0em\">​</mo><mi>x</mi></mrow><mo lspace=\"0.222em\" rspace=\"0.222em\">⋅</mo><mi>g</mi></mrow><mo lspace=\"0em\" rspace=\"0em\">​</mo><msup><mi>g</mi><mi>T</mi></msup></mrow><mo stretchy=\"false\">]</mo></mrow></mrow></mrow></mrow></math>",
      "context": "This is minimized when <math display=\"inline\"><mi>B</mi></math> is proportional to <math display=\"inline\"><mi>S</mi></math>. Indeed, the AM-GM inequality applied to the eigenvalues of <math display=\"inline\"><mrow><msup><mi>B</mi><mrow><mo>−</mo><mn>1</mn></mrow></msup><mo lspace=\"0em\" rspace=\"0em\">​</mo><mi>S</mi></mrow></math> says <math display=\"inline\"><mrow><mrow><mrow><mi>tr</mi><mo>⁡</mo><mrow><mo stretchy=\"false\">(</mo><mrow><msup><mi>B</mi><mrow><mo>−</mo><mn>1</mn></mrow></msup><mo lspace=\"0em\" rspace=\"0em\">​</mo><mi>S</mi></mrow><mo stretchy=\"false\">)</mo></mrow></mrow><mo>/</mo><mi>m</mi></mrow><mo>≥</mo><msup><mrow><mo stretchy=\"false\">(</mo><mrow><mrow><mo stretchy=\"false\">|</mo><mi>S</mi><mo stretchy=\"false\">|</mo></mrow><mo>/</mo><mrow><mo stretchy=\"false\">|</mo><mi>B</mi><mo stretchy=\"false\">|</mo></mrow></mrow><mo stretchy=\"false\">)</mo></mrow><mrow><mn>1</mn><mo>/</mo><mi>m</mi></mrow></msup></mrow></math> and equality holds when the eigenvalues are all the same, leading to <math display=\"inline\"><mrow><mi>B</mi><mo>∝</mo><mi>S</mi></mrow></math>. Similarly, when <math display=\"inline\"><mi>B</mi></math> is fixed, then <math display=\"inline\"><mi>A</mi></math> minimizes <math display=\"inline\"><mi mathvariant=\"normal\">Φ</mi></math> precisely when <math display=\"inline\"><mrow><mi>A</mi><mo>∝</mo><mrow><mi>𝔼</mi><mo>⁡</mo><mrow><mo stretchy=\"false\">[</mo><mrow><msup><mi>G</mi><mi>T</mi></msup><mo lspace=\"0em\" rspace=\"0em\">​</mo><msup><mi>B</mi><mrow><mo>−</mo><mn>1</mn></mrow></msup><mo lspace=\"0em\" rspace=\"0em\">​</mo><mi>G</mi></mrow><mo stretchy=\"false\">]</mo></mrow></mrow></mrow></math>. This naturally leads to the following alternating (fixed-point) iteration:",
      "headline": "",
      "explanation": "",
      "objective": "",
      "symbols": {},
      "evidence": "",
      "evidence_url": "",
      "source_url": ""
    },
    {
      "anchor": "S5.Ex23",
      "label": "",
      "section": "5 The FlipFlop Hessian Approximation",
      "role": "loss",
      "latex": "\\Phi(H,A\\otimes B)\\quad\\propto\\quad|A|^{1/n}|B|^{1/m}\\cdot\\mathbb{E}\\tr(B^{-1}GA^{-1}G^{T})",
      "mathml": "<math display=\"block\"><mrow><mrow><mi mathvariant=\"normal\">Φ</mi><mo>⁡</mo><mrow><mo stretchy=\"false\">(</mo><mi>H</mi><mo>,</mo><mrow><mi>A</mi><mo lspace=\"0.222em\" rspace=\"0.222em\">⊗</mo><mi>B</mi></mrow><mo stretchy=\"false\">)</mo></mrow></mrow><mspace width=\"1em\"></mspace><mo>∝</mo><mspace width=\"1em\"></mspace><mrow><mrow><mrow><msup><mrow><mo stretchy=\"false\">|</mo><mi>A</mi><mo stretchy=\"false\">|</mo></mrow><mrow><mn>1</mn><mo>/</mo><mi>n</mi></mrow></msup><mo lspace=\"0em\" rspace=\"0em\">​</mo><msup><mrow><mo stretchy=\"false\">|</mo><mi>B</mi><mo rspace=\"0.055em\" stretchy=\"false\">|</mo></mrow><mrow><mn>1</mn><mo>/</mo><mi>m</mi></mrow></msup></mrow><mo rspace=\"0.222em\">⋅</mo><mi>𝔼</mi></mrow><mo lspace=\"0.167em\" rspace=\"0em\">​</mo><mrow><mi>tr</mi><mo>⁡</mo><mrow><mo stretchy=\"false\">(</mo><mrow><msup><mi>B</mi><mrow><mo>−</mo><mn>1</mn></mrow></msup><mo lspace=\"0em\" rspace=\"0em\">​</mo><mi>G</mi><mo lspace=\"0em\" rspace=\"0em\">​</mo><msup><mi>A</mi><mrow><mo>−</mo><mn>1</mn></mrow></msup><mo lspace=\"0em\" rspace=\"0em\">​</mo><msup><mi>G</mi><mi>T</mi></msup></mrow><mo stretchy=\"false\">)</mo></mrow></mrow></mrow></mrow></math>",
      "context": "Thus we can rewrite the objective <math display=\"inline\"><mi mathvariant=\"normal\">Φ</mi></math>, and also simplify it by removing constants:",
      "headline": "",
      "explanation": "",
      "objective": "",
      "symbols": {},
      "evidence": "",
      "evidence_url": "",
      "source_url": ""
    }
  ],
  "equations_status": "selected",
  "core_kind": "formula",
  "equations_fetched_at": "2026-10-01",
  "equations_source_url": "",
  "equations_source_sha256": "",
  "exposures_reviewed_at": "",
  "exposures_source_sha256": ""
}