added option to kompile and krun controlling whether the java backend throws a failed assertion when function definitions are not deterministic