I datalogi er en deterministisk funktion en funktion, som for det samme argument altid returnerer det samme resultat.
I matematik er definitionen af funktion i sætteori implicit deterministisk, hvorfor udtrykket primært bruges i datalogi, eller udtrykket funktion bruges i en mindre formel definition.
Udtrykket deterministisk funktion svarende til den klassiske matematiske definition af en funktion, vil vi give nogle eksempler på ikke-deterministiske funktioner. Karakteristikken ved ikke-deterministiske funktioner er at returnere forskellige resultater for flere opkald ved hjælp af de samme argumenter. Denne sag dækker to hovedscenarier: