def build_and_solve(a, b):
    matvec = partial(high_precision_dot, jnp.exp(a))
    return matrix_free_solve(matvec, jnp.cos(b))
def build_and_solve(a, b):
    matvec = partial(high_precision_dot, jnp.exp(a))
    return matrix_free_solve(matvec, jnp.cos(b))