Function Or Not: Unique Arrows Test

% Code for the left diagram:
\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{arrows, shapes, fit}

\begin{document}

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

  % Define elements in the range
  \node (r0) at (4,-0.5) {4};
  \node (r1) at (4,-1.5) {6};
  
  \node (domain) at (-2,-1) {Domain $\to$};
  \node (range) at (5.7,-1) {$\leftarrow$ Range};
  

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

\end{document}
% Code for the right diagram:
\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{arrows, shapes, fit}

\begin{document}

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

  % Define elements in the range
  \node (r0) at (4,0) {4};
  \node (r1) at (4,-1) {6};
  \node (r2) at (4,-2) {10};
  
  \node (domain) at (-2,-1) {Domain $\to$};
  \node (range) at (6,-1) {$\leftarrow$ Range};
  \node[red] (violation) at (-1.65,0) {Two Arrows $\to$};
  

  % Draw the arrows
  \draw[->] (d0) -- (r0);
  \draw[->] (d0) -- (r2);
  \draw[->] (d1) -- (r1);
  \draw[->] (d2) -- (r1);
  \draw[red] (0.2,0) circle (0.5);
  
  % Draw the ellipses around the sets:
  \node[shape = ellipse , draw = black , minimum size = 2cm , fit = {(d0) (d2)}] {};
  \node[shape = ellipse , draw = black , minimum size = 2cm , fit = {(r0) (r2)}] {};
\end{tikzpicture}

\end{document}