alek_discrete_math_property_testing.pdf