improve sharing when updating exps
add if0, fix, mul
fix test logging
Fixed expression diff