import numberdb.sage as numberdb
from sage.rings.complex_arb import ComplexBallField
from sage.rings.real_arb import RealBallField
RB = RealBallField(numberdb.bits(80, losing=80))
CB = ComplexBallField(numberdb.bits(80, losing=80))
pi = RB.pi()
def Lambda(theta):
theta = RB(theta)
if (theta / pi).contains_integer():
return RB(0)
z = (CB(0, 2) * CB(theta)).exp()
return z.polylog(2).imag() / 2
Lambda(pi / 3) / 8 # Vol([3,3,6])The generator evaluates the Lobachevsky function as $\frac12\operatorname{Im}\operatorname{Li}_2(e^{2i\theta})$ in arb ball arithmetic and applies (2) and the orthoscheme decompositions of [1]. It writes $100$ digits.
All $23$ rows were checked against the source values in [1]. The $[3^{[3,3]}]$ and $[4^{[4]}]$ rows were checked against the stored Clausen values. The $[3,3,6]$ and $[3,4,4]$ rows were checked as quarters of the $D=-3$ and $D=-4$ Bianchi covolumes; the $[3,6,3]$ and $[(3^2,4^2)]$ rows were checked as those covolumes themselves.