the Karatsuba multiplication algorithm