用域定义函数的正确方法(箭头语法)

用域定义函数的正确方法(箭头语法)

我想使用“箭头语法”来定义我的函数,同时定义域(我不记得规范符号是否使用括号):

在此处输入图片描述

但是为了制作这个绘图,我需要使用cases并手动添加间距,\,\,\,我认为这有点不方便。否则,我得到的是这个,在我看来看起来不太好看。

在此处输入图片描述

在 LaTeX 中定义这个的正确方法是什么?

梅威瑟:

\documentclass{article}
\usepackage{amsmath}
\usepackage{amsfonts}

\begin{document}
\[
    f(x) \colon
\begin{cases}
  \mathbb{N} & \longrightarrow\,\,\, \mathbb{N} \\
  x          & \longmapsto\,\,\, x^2
\end{cases}
\]
\end{document}

答案1

我不会使用cases环境,因为从语义上讲,环境在这里毫无意义。我会使用一个简单的align环境,就像这样;

\documentclass{article}
\usepackage{amsmath}

\begin{document}

\begin{align*}
  f\colon \mathbf N & \longrightarrow\mathbf N \\[-1ex]
  x & \longmapsto x^2
\end{align*}

\end{document} 

在此处输入图片描述

答案2

作为@Bernard 答案的补充(+1):

\documentclass{article}
\usepackage{amsmath}

\begin{document}
    \begin{equation}
f\colon \left\{\begin{aligned}
                \mathbf N & \longrightarrow\mathbf N \\
                x & \longmapsto x^2
               \end{aligned}\right.
    \end{equation}
\end{document} 

在此处输入图片描述

答案3

我从来没有见过带括号的符号;无论如何,“(X)“ 旁边F(从数学上来说) 是不合适的。

如果您想要括号,并且不需要由aligned或产生的额外空格cases,则可以使用array

\documentclass{article}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{array}

\usepackage{showframe}

\newcommand{\function}[5]{%
  #1\colon
  \left\lbrace
  \renewcommand{\arraystretch}{1.2}%
  \setlength{\arraycolsep}{0pt}
  \begin{array}{ r >{{}}c<{{}} l }
  #2 & \rightarrow & #3 \\
  #4 & \mapsto     & #5
  \end{array}%
  \right.\kern-\nulldelimiterspace
}
\newcommand{\longfunction}[5]{%
  #1\colon
  \left\lbrace
  \renewcommand{\arraystretch}{1.2}%
  \setlength{\arraycolsep}{0pt}
  \begin{array}{ r >{{}}c<{{}} l }
  #2 & \longrightarrow & #3 \\
  #4 & \longmapsto     & #5
  \end{array}%
  \right.\kern-\nulldelimiterspace
}

\begin{document}

This is a function
\[
\function{f}{\mathbb{N}}{\mathbb{N}}{x}{x^2}
\]
And now we compare it with Zarko's proposal
\[
f\colon \left\{\begin{aligned}
                \mathbf N & \longrightarrow\mathbf N \\
                x & \longmapsto x^2
               \end{aligned}\right.
\]
and yours
\[
    f \colon
\begin{cases}
  \mathbb{N} & \longrightarrow\,\,\, \mathbb{N} \\
  x          & \longmapsto\,\,\, x^2
\end{cases}
\]
Finally, the ``long'' version
\[
\longfunction{f}{\mathbb{N}}{\mathbb{N}}{x}{x^2}
\]

\end{document}

我更喜欢“短”版本,但这取决于你的喜好。请注意,中间的两个实例并非真正居中。

在此处输入图片描述

答案4

另一种可能性是使用tikz-cd如下图所示的包:

在此处输入图片描述

\documentclass{article}
\usepackage{amsmath,amssymb}
\usepackage{tikz-cd}

\begin{document}

$\begin{tikzcd}[row sep=-4pt, column sep= normal]
 f\colon\!  \mathbb{N} \arrow[r] & \mathbb{N} \\
\quad x \arrow[r, maps to] & x^2       
\end{tikzcd}$

\end{document}

您可以通过在 sep 列中输入 pt 值(而不是常规值)来减小箭头的长度。请参阅以下示例column sep= 10pt

\documentclass{article}
\usepackage{amsmath,amssymb}
\usepackage{tikz-cd}

\begin{document}

$\begin{tikzcd}[row sep=-4pt,column sep= 10pt]
f\colon \mathbb{N} \arrow[r] & \mathbb{N} \\[-1pt]
\quad x \arrow[r, maps to] & x^2       
\end{tikzcd}$

\end{document}

在此处输入图片描述

相关内容