(STRATEGY INNERMOST) (VAR X Y) (DATATYPES A = µX.< +(X, X), 1, 0 >) (SIGNATURES * :: [A x A] -> A) (RULES *(X,+(Y,1())) -> +(*(X ,+(Y,*(1(),0()))) ,X) *(X,1()) -> X *(X,0()) -> X *(X,0()) -> 0())