def rosen_step
import unified-nsga-iii@0.2.2.0/problems.bend as Problemsimport Base
496def rosen_step(rest: List<&2, F32>, +a: F32) -> F32:
497 match rest:
498 case Nil{}:
499 0.0
500 case +b <> t:
501 +diff = F32.sub(b, F32.square(a))
502 +one = F32.sub(1.0, a)
503 F32.add(F32.add(F32.mul(100.0, F32.square(diff)), F32.square(one)), rosen_step(t, b))