def das_dennis
import unified-nsga-iii@0.2.2.0/reference_directions.bend as ReferenceDirectionsimport Base
124# Generate directions. M == 1n → [[1.0]]. M == 0n → Nil{}. p == 0n → Nil{} when M > 1.
125def das_dennis(number_of_objectives: Nat, partitions: Nat) -> List<&2, List<&2, F32>>:
126 match number_of_objectives partitions:
127 case 0n p:
128 Nil{}
129 case 1n+rest 0n:
130 das_dennis.p0(rest)
131 case +m 1n+q:
132 das_dennis.from(m, 1n+q, Nat.sub(m, 1n))