graph Jip is [circus_dog:Jip] -> (attr) -> [legs:{*}@3]. type circus_dog(x) is [dog:*x] <- (agnt) <- [perform] -> (loc) -> [circus]. graph fact1 is [number:3] -> <> -> [number:?]. actor factorial(in a;out b) is [number:*a] - <> -> [number=0] -> <> -> [number:*b] <> -> [number>0:*x] -> <> -> [number] -> <> -> [number] -{1}-> <> - <-{2}- [number>0:*x] -> [number:*b].