interface for analyzing functions