fixes #13: require input to isValid to be a Program