The gradient dtype is equal to the tensor’s data type as it’s used to update the data.
Could you explain a bit what a floating point gradient on a bool value would mean and how a parameter update would work?