Ways of Describing Functions

\documentclass{standalone}
\usepackage{tikz} % A graphics library
\usetikzlibrary{arrows, shapes, fit}

\begin{document}

\begin{tikzpicture}
  % Define elements in the domain
  \node (d0) at (0,0) {0};
  \node (d1) at (0,-1) {1};
  \node (d2) at (0,-2) {2};
  \node (d3) at (0,-3) {3};
  \node (dcont) at (0,-4) {$\vdots$};

  % Define elements in the range
  \node (r0) at (4,0) {0};
  \node (r1) at (4,-1) {1};
  \node (r2) at (4,-2) {2};
  \node (r3) at (4,-3) {3};
  \node (r4) at (4,-4) {4};
  \node (r5) at (4,-5) {5};
  \node (r6) at (4,-6) {6};
  \node (r7) at (4,-7) {7};
  \node (r8) at (4,-8) {8};
  \node (r9) at (4,-9) {9};
  \node (rcont) at (4,-10) {$\vdots$};
  
  \node (domain) at (-2,-2) {Domain $\to$};
  \node (range) at (6,-2) {$\leftarrow$ Range};
  

  % Draw the arrows
  \draw[->] (d0) -- (r0);
  \draw[->] (d1) -- (r1);
  \draw[->] (d2) -- (r4);
  \draw[->] (d3) -- (r9);
  
  % Draw the ellipses around the sets:
  \node[shape = ellipse, draw = black, minimum size = 2cm, fit = {(d0) (dcont)}] {};
  \node[shape = ellipse, draw = black, minimum size = 2cm, fit = {(r0) (rcont)}] {};
\end{tikzpicture}

\end{document}