Ramanujan's function k
DefinitionRamanujan's function \(k(q)\)#✓fully proved
For a complex number \(q\), Ramanujan's function is
where \((a;x)_\infty\) is the raw infinite q-Pochhammer product \(\prod_{n \ge 0} (1 - a x^n)\) (equal to \(1\) by convention when this product does not converge unconditionally), and a quotient by \(0\) is read as \(0\).
For \(|q| < 1\) this is the product representation of \(k(q) = r(q)\,r(q^2)^2\), where \(r\) is the Rogers–Ramanujan continued fraction.
noncomputable def ramanujanK (q : ℂ) : ℂ :=
q * (qPochhammerInfRaw q (q ^ 10) * qPochhammerInfRaw (q ^ 2) (q ^ 10) *
qPochhammerInfRaw (q ^ 8) (q ^ 10) * qPochhammerInfRaw (q ^ 9) (q ^ 10)) /
(qPochhammerInfRaw (q ^ 3) (q ^ 10) * qPochhammerInfRaw (q ^ 4) (q ^ 10) *
qPochhammerInfRaw (q ^ 6) (q ^ 10) * qPochhammerInfRaw (q ^ 7) (q ^ 10))
noncomputable def qPochhammerInfRaw (a q : ℂ) : ℂ :=
tprod (fun n : ℕ => (1 - a * q ^ n))
MathlibExt/Analysis/SpecialFunctions/QPochhammer.lean:47
Sources
- Russelle Guadalupe, New Proofs of Certain Theta Function Identities via Ramanujan's Function, INTEGERS 26 (2026), Article A41, Section 1 (product representation of
k(q)).
Uses 1 · Used by 4
TheoremRamanujan's function \(k\) vanishes at \(0\)#✓fully proved
Ramanujan's function satisfies \(k(0) = 0\).
theorem ramanujanK_zero : ramanujanK 0 = 0
noncomputable def ramanujanK (q : ℂ) : ℂ :=
q * (qPochhammerInfRaw q (q ^ 10) * qPochhammerInfRaw (q ^ 2) (q ^ 10) *
qPochhammerInfRaw (q ^ 8) (q ^ 10) * qPochhammerInfRaw (q ^ 9) (q ^ 10)) /
(qPochhammerInfRaw (q ^ 3) (q ^ 10) * qPochhammerInfRaw (q ^ 4) (q ^ 10) *
qPochhammerInfRaw (q ^ 6) (q ^ 10) * qPochhammerInfRaw (q ^ 7) (q ^ 10))
WantedExt/NumberTheory/RamanujanKFunctionWanted.lean:33
Sources
- Russelle Guadalupe, New Proofs of Certain Theta Function Identities via Ramanujan's Function, INTEGERS 26 (2026), Article A41, Section 1 (product representation of
k(q)).
Uses 2
TheoremEta-quotient expressions for Ramanujan's function \(k\)#●ready to prove
Let \(q\) be a complex number with \(0 < |q| < 1\), write \(f_m = (q^m;q^m)_\infty = \prod_{n \ge 1} (1 - q^{mn})\) for \(m \ge 1\), and let \(k = k(q)\) be the value of Ramanujan's function. Then
public theorem_wanted ramanujanK_eta_quotients (q : ℂ) (hq : ‖q‖ < 1) (hq0 : q ≠ 0) :
qPochhammerInfRaw (q ^ 2) (q ^ 2) * qPochhammerInfRaw (q ^ 5) (q ^ 5) ^ 5 /
(q * qPochhammerInfRaw q q * qPochhammerInfRaw (q ^ 10) (q ^ 10) ^ 5) =
1 / ramanujanK q - ramanujanK q ∧
qPochhammerInfRaw (q ^ 2) (q ^ 2) ^ 4 * qPochhammerInfRaw (q ^ 5) (q ^ 5) ^ 2 /
(q * qPochhammerInfRaw q q ^ 2 * qPochhammerInfRaw (q ^ 10) (q ^ 10) ^ 4) =
1 / ramanujanK q + 1 - ramanujanK q ∧
qPochhammerInfRaw q q ^ 3 * qPochhammerInfRaw (q ^ 5) (q ^ 5) /
(q * qPochhammerInfRaw (q ^ 2) (q ^ 2) * qPochhammerInfRaw (q ^ 10) (q ^ 10) ^ 3) =
1 / ramanujanK q - 4 - ramanujanK q
noncomputable def qPochhammerInfRaw (a q : ℂ) : ℂ :=
tprod (fun n : ℕ => (1 - a * q ^ n))
MathlibExt/Analysis/SpecialFunctions/QPochhammer.lean:47
noncomputable def ramanujanK (q : ℂ) : ℂ :=
q * (qPochhammerInfRaw q (q ^ 10) * qPochhammerInfRaw (q ^ 2) (q ^ 10) *
qPochhammerInfRaw (q ^ 8) (q ^ 10) * qPochhammerInfRaw (q ^ 9) (q ^ 10)) /
(qPochhammerInfRaw (q ^ 3) (q ^ 10) * qPochhammerInfRaw (q ^ 4) (q ^ 10) *
qPochhammerInfRaw (q ^ 6) (q ^ 10) * qPochhammerInfRaw (q ^ 7) (q ^ 10))
WantedExt/NumberTheory/RamanujanKFunctionWanted.lean:33
Sources
- Russelle Guadalupe, New Proofs of Certain Theta Function Identities via Ramanujan's Function, INTEGERS 26 (2026), Article A41, Lemma 2, Equations (5)-(7).
Uses 2
TheoremRamanujan's function \(k\) at \(q\) and \(q^2\) as an eta quotient#●ready to prove
For every complex number \(q\) with \(0 < |q| < 1\), Ramanujan's function \(k\) satisfies
where \((a;x)_\infty = \prod_{n \ge 0} (1 - a x^n)\) is the infinite q-Pochhammer product.
public theorem_wanted ramanujanK_div_sub_div_sq (q : ℂ) (hq : ‖q‖ < 1) (hq0 : q ≠ 0) :
ramanujanK q / ramanujanK (q ^ 2) - ramanujanK (q ^ 2) / ramanujanK q =
qPochhammerInfRaw q q * qPochhammerInfRaw (q ^ 5) (q ^ 5) ^ 3 /
(q * qPochhammerInfRaw (q ^ 10) (q ^ 10) ^ 4)
noncomputable def ramanujanK (q : ℂ) : ℂ :=
q * (qPochhammerInfRaw q (q ^ 10) * qPochhammerInfRaw (q ^ 2) (q ^ 10) *
qPochhammerInfRaw (q ^ 8) (q ^ 10) * qPochhammerInfRaw (q ^ 9) (q ^ 10)) /
(qPochhammerInfRaw (q ^ 3) (q ^ 10) * qPochhammerInfRaw (q ^ 4) (q ^ 10) *
qPochhammerInfRaw (q ^ 6) (q ^ 10) * qPochhammerInfRaw (q ^ 7) (q ^ 10))
WantedExt/NumberTheory/RamanujanKFunctionWanted.lean:33
noncomputable def qPochhammerInfRaw (a q : ℂ) : ℂ :=
tprod (fun n : ℕ => (1 - a * q ^ n))
MathlibExt/Analysis/SpecialFunctions/QPochhammer.lean:47
Sources
- Russelle Guadalupe, New Proofs of Certain Theta Function Identities via Ramanujan's Function, INTEGERS 26 (2026), Article A41, Lemma 3.
Uses 2
TheoremModular equation of degree 2 for Ramanujan's function \(k\)#●ready to prove
For every complex number \(q\) with \(|q| < 1\), the values \(X = k(q)\) and \(Y = k(q^2)\) of Ramanujan's function satisfy \(X^2 - Y + 2XY + X^2 Y + Y^2 = 0\).
public theorem_wanted ramanujanK_sq_relation (q : ℂ) (hq : ‖q‖ < 1) :
ramanujanK q ^ 2 - ramanujanK (q ^ 2) + 2 * ramanujanK q * ramanujanK (q ^ 2) +
ramanujanK q ^ 2 * ramanujanK (q ^ 2) + ramanujanK (q ^ 2) ^ 2 = 0
noncomputable def ramanujanK (q : ℂ) : ℂ :=
q * (qPochhammerInfRaw q (q ^ 10) * qPochhammerInfRaw (q ^ 2) (q ^ 10) *
qPochhammerInfRaw (q ^ 8) (q ^ 10) * qPochhammerInfRaw (q ^ 9) (q ^ 10)) /
(qPochhammerInfRaw (q ^ 3) (q ^ 10) * qPochhammerInfRaw (q ^ 4) (q ^ 10) *
qPochhammerInfRaw (q ^ 6) (q ^ 10) * qPochhammerInfRaw (q ^ 7) (q ^ 10))
WantedExt/NumberTheory/RamanujanKFunctionWanted.lean:33
Sources
- Russelle Guadalupe, New Proofs of Certain Theta Function Identities via Ramanujan's Function, INTEGERS 26 (2026), Article A41, Theorem 4.
Uses 1
TheoremRamanujan's level-10 theta function identities#●ready to prove
For complex \(x\) with \(|x| < 1\), let \(\varphi(x) = \sum_{n \in \mathbb{Z}} x^{n^2}\), \(\psi(x) = \sum_{n \ge 0} x^{n(n+1)/2}\) and \(f(-x) = \prod_{n \ge 1} (1 - x^n)\), so that \(f(x) = \prod_{n \ge 1} (1 - (-x)^n)\). Then for every complex number \(q\) with \(|q| < 1\),
and
public theorem_wanted ramanujan_theta_level_ten (q : ℂ) (hq : ‖q‖ < 1) :
ramanujanThetaRaw q q ^ 5 / ramanujanThetaRaw (q ^ 5) (q ^ 5) +
ramanujanThetaRaw (-q ^ 2) (-q ^ 2) ^ 5 / ramanujanThetaRaw (-q ^ 10) (-q ^ 10) +
2 * (qPochhammerInfRaw (-q) (-q) ^ 5 / qPochhammerInfRaw (-q ^ 5) (-q ^ 5)) =
4 * (ramanujanThetaRaw q (q ^ 3) ^ 5 / ramanujanThetaRaw (q ^ 5) ((q ^ 5) ^ 3)) ∧
ramanujanThetaRaw q q ^ 2 * ramanujanThetaRaw (q ^ 5) (q ^ 5) ^ 2 -
ramanujanThetaRaw (-q) (-q) ^ 2 * ramanujanThetaRaw (-q ^ 5) (-q ^ 5) ^ 2 -
16 * q ^ 3 * ramanujanThetaRaw (q ^ 2) ((q ^ 2) ^ 3) ^ 2 *
ramanujanThetaRaw (q ^ 10) ((q ^ 10) ^ 3) ^ 2 =
8 * q * qPochhammerInfRaw (q ^ 2) (q ^ 2) ^ 2 * qPochhammerInfRaw (q ^ 10) (q ^ 10) ^ 2
noncomputable def ramanujanThetaRaw (a b : ℂ) : ℂ :=
∑' n : ℤ, ramanujanThetaTerm a b n
MathlibExt/NumberTheory/ModularForms/JacobiTheta/Ramanujan.lean:57
noncomputable def qPochhammerInfRaw (a q : ℂ) : ℂ :=
tprod (fun n : ℕ => (1 - a * q ^ n))
MathlibExt/Analysis/SpecialFunctions/QPochhammer.lean:47
Sources
- Russelle Guadalupe, New Proofs of Certain Theta Function Identities via Ramanujan's Function, INTEGERS 26 (2026), Article A41, Theorem 1, Equations (3) and (4).
Uses 2
Loading dependency explorer…
The dependency explorer needs JavaScript and its graph data.