def f(x): return lax.cond( jnp.sum(x) > 0., lambda _: jnp.sum(x) / functools.reduce(lax.mul, jax2tf.shape_as_value(x)), lambda _: 0., operand=None)
def f_jax(x): return jnp.sum(x) / np.prod(jax2tf.shape_as_value(x))
def f_jax(x): return jnp.sum(x, axis=0) / jax2tf.shape_as_value(x)[0]
def f(x): return jnp.sum(x, axis=0) * jax2tf.shape_as_value(x)[0]