Bug fix: equivalent(get_inf(), 0.0) unexpectedly returns true
Add `kind_from_type'