{
 "schema": "reviewed-by/v1",
 "commit": "d9068003cb02ec808e548ee70982ffef9379db00",
 "generated": "2026-10-19T06:15:48Z",
 "declarations": {
  "HeckeRing.GL2.heckeSlashModularFormEnd": {
   "hash": "69fe10be6689d10e",
   "kind": "def",
   "url": "https://github.com/TauCetiProject/TauCeti/blob/d9068003cb02ec808e548ee70982ffef9379db00/TauCeti/NumberTheory/ModularForms/HeckeSlash/ModularForm.lean#L127-L134",
   "tally": {
    "Reviewed-by": {
     "people": 0,
     "ai": 0,
     "earlier": 1
    }
   },
   "marks": [
    {
     "trailer": "Reviewed-by",
     "by": "CBirkbeck",
     "kind": "person",
     "agent": "",
     "hash": "f923bec5a453d2c3",
     "current": false,
     "status": "incomparable",
     "at": "2026-09-22T14:05:47Z",
     "evidence": "agrees with literature",
     "issue": 6,
     "url": "https://github.com/CBirkbeck/tauceti-reviewed-by-test/issues/6",
     "id": "d9896fb0676fbaac"
    }
   ],
   "problems": [],
   "tests": {
    "results": [
     {
      "test": "HeckeRing.GL2.coe_heckeSlashModularFormEnd_eq_sum",
      "status": "passes",
      "statement": "lemma coe_heckeSlashModularFormEnd_eq_sum {ι : Type*} [Fintype ι] (a : ι → GL (Fin 2) ℚ)\n    (hcover : doubleCoset (D.out : GL (Fin 2) ℚ) (G.map (mapGL ℚ)) (G.map (mapGL ℚ)) =\n      ⋃ i, MulOpposite.op (a i) • (G.map (mapGL ℚ) : Set (GL (Fin 2) ℚ)))\n    (hinj : Function.Injective fun i ↦\n      MulOpposite.op (a i) • (G.map (mapGL ℚ) : Set (GL (Fin 2) ℚ)))\n    (f : ModularForm (G.map (mapGL ℝ)) k) :\n    ⇑(heckeSlashModularFormEnd k D hD f) = ∑ i, ⇑f ∣[k] a i",
      "url": "https://github.com/TauCetiProject/TauCeti/blob/d9068003cb02ec808e548ee70982ffef9379db00/TauCeti/NumberTheory/ModularForms/HeckeSlash/ModularForm.lean#L162-L170",
      "checks": "given coset representatives a_i of the double coset, it is the classical sum of the slashes f |[k] a_i",
      "by": "CBirkbeck",
      "kind": "agent",
      "agent": "Claude Code (Opus 5)",
      "at": "2026-09-22T16:22:52Z"
     },
     {
      "test": "HeckeRing.GL2.coe_heckeSlashModularFormEnd",
      "status": "passes",
      "statement": "@[simp] lemma coe_heckeSlashModularFormEnd (f : ModularForm (G.map (mapGL ℝ)) k) :\n    ⇑(heckeSlashModularFormEnd k D hD f) = heckeSlashSum k D f",
      "url": "https://github.com/TauCetiProject/TauCeti/blob/d9068003cb02ec808e548ee70982ffef9379db00/TauCeti/NumberTheory/ModularForms/HeckeSlash/ModularForm.lean#L148-L150",
      "checks": "as a function it is the Hecke slash sum over the double coset",
      "by": "CBirkbeck",
      "kind": "agent",
      "agent": "Claude Code (Opus 5)",
      "at": "2026-09-22T16:22:52Z"
     }
    ],
    "suggested": [],
    "tally": {
     "results": 2,
     "suggested": 0
    }
   }
  },
  "NumberField.Set.HasNaturalDensity": {
   "hash": "1fdb1863cc32180d",
   "kind": "def",
   "url": "https://github.com/TauCetiProject/TauCeti/blob/d9068003cb02ec808e548ee70982ffef9379db00/TauCeti/NumberTheory/ArithmeticDirichletSeries/NaturalDensity.lean#L96-L98",
   "tally": {
    "Reviewed-by": {
     "people": 0,
     "ai": 0,
     "earlier": 1
    }
   },
   "marks": [
    {
     "trailer": "Reviewed-by",
     "by": "CBirkbeck",
     "kind": "person",
     "agent": "",
     "hash": "40adf15df4936807",
     "current": false,
     "status": "incomparable",
     "at": "2026-09-21T15:05:54Z",
     "evidence": "LGTM",
     "issue": 4,
     "url": "https://github.com/CBirkbeck/tauceti-reviewed-by-test/issues/4",
     "id": "527d5b366599122b"
    }
   ],
   "problems": [],
   "tests": {
    "results": [
     {
      "test": "NumberField.Set.HasNaturalDensity.unique",
      "status": "passes",
      "statement": "theorem HasNaturalDensity.unique (hδ : HasNaturalDensity S δ) (hε : HasNaturalDensity S ε) :\n    δ = ε",
      "url": "https://github.com/TauCetiProject/TauCeti/blob/d9068003cb02ec808e548ee70982ffef9379db00/TauCeti/NumberTheory/ArithmeticDirichletSeries/NaturalDensity.lean#L107-L109",
      "checks": "a set has at most one density: it is a limit, not a limit point",
      "by": "CBirkbeck",
      "kind": "agent",
      "agent": "Claude Code (Opus 5)",
      "at": "2026-09-22T16:22:52Z"
     },
     {
      "test": "NumberField.Set.hasNaturalDensity_univ",
      "status": "passes",
      "statement": "@[simp]\ntheorem hasNaturalDensity_univ :\n    HasNaturalDensity (Set.univ : Set (HeightOneSpectrum (𝓞 K))) 1",
      "url": "https://github.com/TauCetiProject/TauCeti/blob/d9068003cb02ec808e548ee70982ffef9379db00/TauCeti/NumberTheory/ArithmeticDirichletSeries/NaturalDensity.lean#L126-L131",
      "checks": "all primes have density 1",
      "by": "CBirkbeck",
      "kind": "agent",
      "agent": "Claude Code (Opus 5)",
      "at": "2026-09-22T16:22:52Z"
     },
     {
      "test": "NumberField.Set.hasDirichletDensity_of_hasNaturalDensity",
      "status": "passes",
      "statement": "theorem hasDirichletDensity_of_hasNaturalDensity (h : HasNaturalDensity S δ) :\n    HasDirichletDensity S δ",
      "url": "https://github.com/TauCetiProject/TauCeti/blob/d9068003cb02ec808e548ee70982ffef9379db00/TauCeti/NumberTheory/ArithmeticDirichletSeries/NaturalDensity.lean#L368-L387",
      "checks": "it agrees with Dirichlet density whenever it exists",
      "by": "CBirkbeck",
      "kind": "agent",
      "agent": "Claude Code (Opus 5)",
      "at": "2026-09-22T16:22:52Z"
     },
     {
      "test": "NumberField.Set.hasNaturalDensity_of_finite",
      "status": "passes",
      "statement": "theorem hasNaturalDensity_of_finite (hS : S.Finite) : HasNaturalDensity S 0",
      "url": "https://github.com/TauCetiProject/TauCeti/blob/d9068003cb02ec808e548ee70982ffef9379db00/TauCeti/NumberTheory/ArithmeticDirichletSeries/NaturalDensity.lean#L188-L192",
      "checks": "a finite set of primes has density 0",
      "by": "CBirkbeck",
      "kind": "agent",
      "agent": "Claude Code (Opus 5)",
      "at": "2026-09-22T16:22:52Z"
     },
     {
      "test": "NumberField.Set.HasNaturalDensity.compl",
      "status": "passes",
      "statement": "theorem HasNaturalDensity.compl (hS : HasNaturalDensity S δ) :\n    HasNaturalDensity Sᶜ (1 - δ)",
      "url": "https://github.com/TauCetiProject/TauCeti/blob/d9068003cb02ec808e548ee70982ffef9379db00/TauCeti/NumberTheory/ArithmeticDirichletSeries/NaturalDensity.lean#L172-L184",
      "checks": "the complement of a set of density δ has density 1 − δ",
      "by": "CBirkbeck",
      "kind": "agent",
      "agent": "Claude Code (Opus 5)",
      "at": "2026-09-22T16:22:52Z"
     }
    ],
    "suggested": [],
    "tally": {
     "results": 5,
     "suggested": 0
    }
   }
  },
  "ProbabilityTheory.IdentDistrib": {
   "hash": "930da279ba3a6ff1",
   "kind": "structure",
   "url": "https://leanprover-community.github.io/mathlib4_docs/Mathlib/Probability/IdentDistrib.html#ProbabilityTheory.IdentDistrib",
   "tally": {
    "Reviewed-by": {
     "people": 0,
     "ai": 0,
     "earlier": 1
    }
   },
   "marks": [
    {
     "trailer": "Reviewed-by",
     "by": "RemyDegenne",
     "kind": "agent",
     "agent": "Claude Code (claude-opus-5-5)",
     "hash": "42cfccf4c8d91557",
     "current": false,
     "status": "stale-underneath",
     "at": "2026-09-28T17:25:44Z",
     "evidence": "`IdentDistrib f g μ ν`: `f` and `g` are almost everywhere measurable and `Measure.map f μ = Measure.map g ν`, so the two have the same law: the textbook definition.\n\nThe a.e. measurability is what keeps it honest: `Measure.map` of a function that is not a.e. measurable is `0`, a junk value, so without it any two such functions would count as identically distributed. `μ` and `ν` default to `volume` when omitted; `strong_law_ae` passes them explicitly.",
     "issue": 2,
     "url": "https://github.com/LeanTrustBuilders/mathlib-probability-evidence/issues/2",
     "id": "df52069550b3794d",
     "store": {
      "repo": "LeanTrustBuilders/mathlib-probability-evidence",
      "name": "Mathlib probability"
     }
    }
   ],
   "problems": []
  },
  "ProbabilityTheory.IndepFun": {
   "hash": "8fb02cf00ac00de2",
   "kind": "def",
   "url": "https://leanprover-community.github.io/mathlib4_docs/Mathlib/Probability/Independence/Basic.html#ProbabilityTheory.IndepFun",
   "tally": {
    "Reviewed-by": {
     "people": 0,
     "ai": 0,
     "earlier": 1
    }
   },
   "marks": [
    {
     "trailer": "Reviewed-by",
     "by": "RemyDegenne",
     "kind": "agent",
     "agent": "Claude Code (claude-opus-5-5)",
     "hash": "1eb4028394bc4d3b",
     "current": false,
     "status": "stale-underneath",
     "at": "2026-09-28T17:25:54Z",
     "evidence": "`IndepFun f g μ` unfolds to `Kernel.IndepFun f g (Kernel.const Unit μ) (Measure.dirac ())`, which is `Indep` of the σ-algebras `comap f` and `comap g`: for every `A` measurable for `comap f` and `B` for `comap g`, `μ (A ∩ B) = μ A * μ B` (the almost-everywhere over `dirac ()` is over a single point). That is independence of the σ-algebras the two random variables generate, the textbook definition.\n\nIt is stated for any measure. For one that is not a probability measure it forces `μ univ ∈ {0, 1, ∞}`, which is harmless: the theorems using it either assume a probability measure or, like `strong_law_ae`, reduce to one.",
     "issue": 3,
     "url": "https://github.com/LeanTrustBuilders/mathlib-probability-evidence/issues/3",
     "id": "43ea19792f51fdf0",
     "store": {
      "repo": "LeanTrustBuilders/mathlib-probability-evidence",
      "name": "Mathlib probability"
     }
    }
   ],
   "problems": []
  },
  "ProbabilityTheory.strong_law_ae": {
   "hash": "641f49e7b488c050",
   "kind": "theorem",
   "url": "https://leanprover-community.github.io/mathlib4_docs/Mathlib/Probability/StrongLaw.html#ProbabilityTheory.strong_law_ae",
   "tally": {
    "Reviewed-by": {
     "people": 0,
     "ai": 0,
     "earlier": 1
    }
   },
   "marks": [
    {
     "trailer": "Reviewed-by",
     "by": "RemyDegenne",
     "kind": "agent",
     "agent": "Claude Code (claude-opus-5-5)",
     "hash": "02e79451043e228f",
     "current": false,
     "status": "stale",
     "at": "2026-09-28T17:25:34Z",
     "evidence": "Read against Etemadi's strong law. For `X : ℕ → Ω → E` with `X 0` integrable, the `X i` pairwise independent (`Pairwise ((· ⟂ᵢ[μ] ·) on X)`) and each `X i` identically distributed with `X 0`, the averages `n⁻¹ • ∑ i ∈ range n, X i ω` converge to `μ[X 0]` for μ-almost every ω. That is Etemadi's theorem (pairwise independence suffices), for random variables with values in a real Banach space `E` with its Borel σ-algebra: more general than the real-valued textbook statement.\n\n- Indexing: `range n` is `X 0, …, X (n-1)`, and `(n : ℝ)⁻¹` at `n = 0` is Lean's `0⁻¹ = 0`, which a limit does not see.\n- `μ` is any measure: the theorem omits `IsProbabilityMeasure μ`. Nothing is lost: independence of the whole space with itself forces `μ univ ∈ {0, 1, ∞}`, and an integrable, identically distributed sequence rules out `∞` unless `X 0 = 0` almost everywhere, where both sides are 0 (the proof's first case).\n- `μ[X 0]` is the Bochner integral, meaningful here since `X 0` is integrable.\n- Not vacuous: independent identically distributed sequences exist (infinite product measures).",
     "issue": 1,
     "url": "https://github.com/LeanTrustBuilders/mathlib-probability-evidence/issues/1",
     "id": "02651f66c06ffcf3",
     "store": {
      "repo": "LeanTrustBuilders/mathlib-probability-evidence",
      "name": "Mathlib probability"
     }
    }
   ],
   "problems": []
  },
  "ProbabilityTheory.variance": {
   "hash": "ed218442063783a7",
   "kind": "def",
   "url": "https://leanprover-community.github.io/mathlib4_docs/Mathlib/Probability/Moments/Variance.html#ProbabilityTheory.variance",
   "tally": {
    "Reviewed-by": {
     "people": 0,
     "ai": 0,
     "earlier": 1
    }
   },
   "marks": [
    {
     "trailer": "Reviewed-by",
     "by": "RemyDegenne",
     "kind": "agent",
     "agent": "Claude Code (claude-opus-5-5)",
     "hash": "f4d1ef22cd7a1b96",
     "current": false,
     "status": "stale-underneath",
     "at": "2026-09-28T17:26:05Z",
     "evidence": "`variance X μ = (evariance X μ).toReal`, with `evariance X μ = ∫⁻ ω, ‖X ω - μ[X]‖ₑ ^ 2 ∂μ`: the expected squared distance to the mean, which is the textbook variance of a square-integrable real random variable. `variance_eq_sub` gives the computing formula `E[X²] − E[X]²` for `X` in L², and `variance_of_ae_eq_zero_or_one` the Bernoulli variance. Outside L² it is `0` (the caveat).",
     "issue": 4,
     "url": "https://github.com/LeanTrustBuilders/mathlib-probability-evidence/issues/4",
     "id": "7ce8e864ac2ab419",
     "store": {
      "repo": "LeanTrustBuilders/mathlib-probability-evidence",
      "name": "Mathlib probability"
     }
    }
   ],
   "problems": [],
   "tests": {
    "results": [
     {
      "test": "ProbabilityTheory.variance_eq_sub",
      "status": "passes",
      "statement": "",
      "url": "",
      "checks": "For X in L² under a probability measure, Var[X] = E[X²] − E[X]²: the textbook computing formula, which pins the definition down against the usual one.",
      "by": "RemyDegenne",
      "kind": "agent",
      "agent": "Claude Code (claude-opus-5-5)",
      "at": "2026-09-28T17:26:26Z"
     },
     {
      "test": "ProbabilityTheory.variance_of_ae_eq_zero_or_one",
      "status": "missing",
      "statement": "",
      "url": "",
      "checks": "The variance of a random variable that is almost surely 0 or 1 is P(X = 0) · P(X = 1): the Bernoulli variance p(1 − p).",
      "by": "RemyDegenne",
      "kind": "agent",
      "agent": "Claude Code (claude-opus-5-5)",
      "at": "2026-09-28T17:28:34Z",
      "challenge": "4ecf29ff6e8d28d6"
     }
    ],
    "suggested": [
     {
      "id": "4ecf29ff6e8d28d6",
      "issue": 7,
      "url": "https://github.com/LeanTrustBuilders/mathlib-probability-evidence/issues/7",
      "status": "written",
      "test": "The variance of a random variable that is almost surely 0 or 1 is P(X = 0) · P(X = 1): the Bernoulli variance p(1 − p).",
      "statement": "∀ {Ω : Type*} [MeasurableSpace Ω] (μ : Measure Ω) [IsProbabilityMeasure μ] (X : Ω → ℝ), AEMeasurable X μ → (∀ᵐ ω ∂μ, X ω = 0 ∨ X ω = 1) → Var[X; μ] = μ.real {ω | X ω = 0} * μ.real {ω | X ω = 1}",
      "catches": "a variance normalized differently (dividing by n − 1), or computed without subtracting the mean",
      "modes": [
       "object",
       "convention"
      ],
      "by": "RemyDegenne",
      "kind": "agent",
      "agent": "Claude Code (claude-opus-5-5)",
      "at": "2026-09-28T17:26:35Z",
      "closedBy": "RemyDegenne",
      "closedAt": "2026-09-28T17:28:34Z",
      "commit": "",
      "note": "Mathlib has it, in `Mathlib/Probability/Distributions/TwoValued.lean`, for any `IsZeroOrProbabilityMeasure`: the pages now check it as a test of `variance`.",
      "metBy": "ProbabilityTheory.variance_of_ae_eq_zero_or_one"
     }
    ],
    "tally": {
     "results": 1,
     "suggested": 0
    }
   }
  },
  "TauCeti.IdealArithmeticFunction.vonMangoldt": {
   "hash": "f514eba8374473bc",
   "kind": "def",
   "url": "https://github.com/TauCetiProject/TauCeti/blob/d9068003cb02ec808e548ee70982ffef9379db00/TauCeti/NumberTheory/ArithmeticDirichletSeries/VonMangoldt.lean#L84-L87",
   "tally": {
    "Reviewed-by": {
     "people": 0,
     "ai": 0,
     "earlier": 2
    }
   },
   "marks": [
    {
     "trailer": "Reviewed-by",
     "by": "CBirkbeck",
     "kind": "person",
     "agent": "",
     "hash": "ec094eda1b60f4b3",
     "current": false,
     "status": "incomparable",
     "at": "2026-09-22T14:07:38Z",
     "evidence": "LGMT",
     "issue": 7,
     "url": "https://github.com/CBirkbeck/tauceti-reviewed-by-test/issues/7",
     "id": "ac41a3a54a2d87b1"
    },
    {
     "trailer": "Reviewed-by",
     "by": "CBirkbeck",
     "kind": "agent",
     "agent": "Claude Code (Opus 5)",
     "hash": "ec094eda1b60f4b3",
     "current": false,
     "status": "incomparable",
     "at": "2026-09-21T14:43:34Z",
     "evidence": "It gives log N(𝔭) exactly when the ideal is 𝔭^k with 𝔭 prime in the monoid of ideals (a nonzero prime ideal) and k ≥ 1, and 0 otherwise, which is the classical ideal von Mangoldt function. The choice in h.choose is harmless because ideal factorisation in 𝓞 K is unique, and the unit ideal gets 0 (vonMangoldt_one). Test mark made while setting up this repository.",
     "issue": 2,
     "url": "https://github.com/CBirkbeck/tauceti-reviewed-by-test/issues/2",
     "id": "fa2f21fdb0cd19f3"
    }
   ],
   "problems": [],
   "tests": {
    "results": [
     {
      "test": "TauCeti.IdealArithmeticFunction.vonMangoldt_apply_prime",
      "status": "passes",
      "statement": "@[simp]\ntheorem vonMangoldt_apply_prime {P : (Ideal (𝓞 K))⁰}\n    (hP : Prime (P : Ideal (𝓞 K))) :\n    (vonMangoldt : IdealArithmeticFunction K) P =\n      Real.log (Ideal.absNorm (P : Ideal (𝓞 K)))",
      "url": "https://github.com/TauCetiProject/TauCeti/blob/d9068003cb02ec808e548ee70982ffef9379db00/TauCeti/NumberTheory/ArithmeticDirichletSeries/VonMangoldt.lean#L116-L121",
      "checks": "a prime ideal P gets log N(P)",
      "by": "CBirkbeck",
      "kind": "agent",
      "agent": "Claude Code (Opus 5)",
      "at": "2026-09-22T16:22:52Z"
     },
     {
      "test": "TauCeti.IdealArithmeticFunction.vonMangoldt_eq_zero_iff",
      "status": "passes",
      "statement": "@[simp]\ntheorem vonMangoldt_eq_zero_iff {A : (Ideal (𝓞 K))⁰} :\n    (vonMangoldt : IdealArithmeticFunction K) A = 0 ↔ ¬ IsPrimePow (A : Ideal (𝓞 K))",
      "url": "https://github.com/TauCetiProject/TauCeti/blob/d9068003cb02ec808e548ee70982ffef9379db00/TauCeti/NumberTheory/ArithmeticDirichletSeries/VonMangoldt.lean#L145-L148",
      "checks": "it vanishes exactly on the ideals that are not prime powers",
      "by": "CBirkbeck",
      "kind": "agent",
      "agent": "Claude Code (Opus 5)",
      "at": "2026-09-22T16:22:52Z"
     },
     {
      "test": "TauCeti.IdealArithmeticFunction.vonMangoldt_apply_prime_pow",
      "status": "passes",
      "statement": "@[simp]\ntheorem vonMangoldt_apply_prime_pow {P : (Ideal (𝓞 K))⁰}\n    (hP : Prime (P : Ideal (𝓞 K))) {n : ℕ} (hn : 0 < n) :\n    (vonMangoldt : IdealArithmeticFunction K) (P ^ n) =\n      Real.log (Ideal.absNorm (P : Ideal (𝓞 K)))",
      "url": "https://github.com/TauCetiProject/TauCeti/blob/d9068003cb02ec808e548ee70982ffef9379db00/TauCeti/NumberTheory/ArithmeticDirichletSeries/VonMangoldt.lean#L107-L113",
      "checks": "every positive power P^n also gets log N(P), not log N(P^n), which is what separates it from log N",
      "by": "CBirkbeck",
      "kind": "agent",
      "agent": "Claude Code (Opus 5)",
      "at": "2026-09-22T16:22:52Z"
     },
     {
      "test": "TauCeti.IdealArithmeticFunction.vonMangoldt_one",
      "status": "passes",
      "statement": "@[simp]\ntheorem vonMangoldt_one : (vonMangoldt : IdealArithmeticFunction K) 1 = 0",
      "url": "https://github.com/TauCetiProject/TauCeti/blob/d9068003cb02ec808e548ee70982ffef9379db00/TauCeti/NumberTheory/ArithmeticDirichletSeries/VonMangoldt.lean#L90-L93",
      "checks": "the unit ideal gets 0",
      "by": "CBirkbeck",
      "kind": "agent",
      "agent": "Claude Code (Opus 5)",
      "at": "2026-09-22T16:22:52Z"
     }
    ],
    "suggested": [],
    "tally": {
     "results": 4,
     "suggested": 0
    }
   }
  }
 }
}
