mul(a, -1) returns -a, mul(a, -2) returns -(a + mul(a, -1)) which is -(a - a) which is -a + a, which is 0.
So on an even second argument you’ll always get 0 and on odds you get -a.
mul(a, -1) returns -a, mul(a, -2) returns -(a + mul(a, -1)) which is -(a - a) which is -a + a, which is 0.
So on an even second argument you’ll always get 0 and on odds you get -a.