(well a strict replacement would require it to be `is_nonlinear`)