def test_array_operations_distribute(x, y): xs = distribute(scalar_to_array(x, AA), (4, 3)) ys = distribute(scalar_to_array(y, AA), (4, 3)) div = array_map(scalar_div, xs, ys) sm = array_reduce(scalar_add, div, ()) return array_to_scalar(sm)
def up1(x2): return array_map( scalar_add, x2, distribute(scalar_to_array(1, typeof(x)), shape(x)), )
def before(x): return distribute(x, (3, 5))
def after(xs): return distribute(scalar_to_array(3, arr_t), shape(xs))
def test_prim_distribute(): assert (distribute(1, (2, 3)) == np.ones((2, 3))).all()