introduce point_multiply