rename function in CNF definition to program: should reduce confusion about function vs worker function