单射、双射与满射[通俗易懂]

单射、双射与满射[通俗易懂]数学上,单射、满射和双射指根据其定义域和陪域的关联方式所区分的三类函数。单射:指将不同的变量映射到不同的值的函数。满射:指陪域等于值域的函数。即:对陪域中任意元素,都存在至少一个定义域中的元素与之对应。双射(也称一一对应):既是单射又是满射的函数。直观地说,一个双射函数形成一个对应,并且每一个输入值都有正好一个输出值以及每一个输出值都有正好一个输入值。(在一些参考书中,“一一”用…

大家好,又见面了,我是你们的朋友全栈君。

数学上,单射满射双射指根据其定义域陪域的关联方式所区分的三类函数

  • 单射:指将不同的变量映射到不同的值的函数。
  • 满射:指陪域等于值域的函数。即:对陪域中任意元素,都存在至少一个定义域中的元素与之对应。
  • 双射(也称一一对应):既是单射又是满射的函数。直观地说,一个双射函数形成一个对应,并且每一个输入值都有正好一个输出值以及每一个输出值都有正好一个输入值。 (在一些参考书中,“一一”用来指双射,但是这里不用这个较老的用法。)

下图对比了四种不同的情况:

[编辑]单射(one to one或injective)

单射、双射与满射[通俗易懂]

单射、双射与满射[通俗易懂]

单射复合:第二个函数不必是单射。

一个函数称为单射(一对一)如果每个可能的像最多只有一个变量映射其上。等价的有,一个函数是单射如果它把不同值映射到不同像。一个单射函数简称单射。形式化的定义如下。

函数
f: A \to B 是
单射 
当且仅当对于所有
a,b \in A, 我们有
f(a) = f(b) \Rightarrow a = b.
  • 一个函数f : A → B是单射当且仅当A是空的或f是左可逆的,也就是说,存在一个函数gB → A 使得g o f = A上的恒等函数.
  • 因为每个函数都是满射当它的陪域限制为它的值域时,每个单射导出一个到它的值域的双射。更精确的讲,每个单射f : A → B可以分解为一个双射接着一个如下的包含映射。令fR : A → f(A)为把陪域限制到像的f,令i : f(A) → B为从f(A)到B中的包含映射.则f = i o fR. 一个对偶的分解会对满射成立。
  • 两个单射的复合也是单射,但若g o f是单射,只能得出f是单射的结论。参看右图。

[编辑]满射(onto)

单射、双射与满射[通俗易懂]

单射、双射与满射[通俗易懂]

满射复合:第一个函数不必为满射

一个函数称为满射如果每个可能的像至少有一个变量映射其上,或者说陪域任何元素都有至少有一个变量与之对应。形式化的定义如下:

函数
f: A \to B
满射
当且仅当对任意
b \in B,存在
a \in A满足
f(a) = b
  • 函数f:X\rightarrow Y为一个满射,当且仅当存在一个函数g:Y\rightarrow X满足f\circ g等于Y上的单位函数。(这个陈述等同于选择公理。)
  • 将一个满射的陪域中每个元素的原像集看作一个等价类,我们可以得到以该等价类组成的集合(原定义域的商集)为定义域的一个双射
  • 如果fg皆为满射,则f\circ g为满射。如果f\circ g是满射,则仅能得出f是满射。参见右图。

[编辑]双射(bijective)

单射、双射与满射[通俗易懂]

单射、双射与满射[通俗易懂]

双射复合:第一个函数不必为满射、第二个函数不必为单射

既是单射又是满射的函数称为双射. 函数为双射当且仅当每个可能的像有且仅有一个变量与之对应。

函数
f: A \to B
双射
当且仅当对任意
b \in B存在唯一
a \in A满足
f(a) = b
  • 函数f : A → B为双射当且仅当其可逆,即,存在函数gB → A满足g o f = A上的恒等函数,且f o gB上的恒等函数。
  • 两个双射的复合也是双射。如g o f为双射,则仅能得出f为单射且g为满射。见右图。
  • 同一集合上的双射构成一个对称群
  • 如果X,Y皆为实数\mathbb{R},则双射函数f:\mathbb{R}\rightarrow \mathbb{R}可以被视觉化为两根任意的水平直线只相交正好一次。(这是水平线测试的一个特例。)

[编辑]

双射函数经常被用于表明集合XY是等的,即有一样的基数。如果在两个集合之间可以建立一个一一对应,则说这两个集合等势。

如果X,Y皆为有限集合,则这两个集合中X,Y之间存在一个双射,当且仅当X和Y的元素数相等。其实,在公理集合论中,元素数相同的定义被认为是个特例,一般化这个定义到无限集合需要导入基数的概念,这是一个区别各类不同大小的无限集合的方法。

[编辑]举例

对于每个函数给定定义域陪域很重要,因为改变这些就能改变函数属于什么

GeLeiMappings.PNG

单射、双射与满射[通俗易懂]

[编辑]双射

  • 任意集合上的恒等函数id为一双射。
  • 考虑函数f:\mathbb{R}\rightarrow\mathbb{R},定义为f(x)=2x+1。这个函数是双射,因为给定任意一个实数y,我们都能解y=2x+1,得到唯一的实数解x=(y-1)/2
  • 指数函数 \exp : \mathbf{R} \to \mathbf{R}^+ : x \mapsto \mathrm{e}^x及其逆函数自然对数 \ln : \mathbf{R}^+ \to \mathbf{R} : x \mapsto \ln{x}

[编辑]单射、但非满射

  • 指数函数\exp : \mathbf{R} \to \mathbf{R} : x \mapsto \mathrm{e}^x

[编辑]满射、但非单射

  • \mathbf{R} \to \mathbf{R} : x \mapsto (x-1)x(x+1) = x^3 - x

[编辑]即非单射也非满射

  • \mathbf{R} \to \mathbf{R} : x \mapsto x^2

 

 

[摘自wikipedia]

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/136541.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • HTML iframe 标签[通俗易懂]

    HTML iframe 标签[通俗易懂]定义和用法iframe元素会创建包含另外一个文档的内联框架(即行内框架)把需要的文本放置在和之间,这样就可以应对无法理解iframe的浏IFrame对象IFrame对象代表一个HTML的内联框架在HTML文档中每出现一次,一个IFrame对象就会被创建。属性frameborder=1或0规定是否显示边框height=pixels或%…

    2025年7月8日
    2
  • 利用群晖nas Docker平台安装qb(qbittorrent)实现PT/BT

    利用群晖nas Docker平台安装qb(qbittorrent)实现PT/BT利用群晖这个低功耗平台挂机上传/下载应该在合适不过了话不多说,我们赶紧开始我使用的是黑裙,系统的版本是DSM6.11、安装Docker(已经安装好的可以直接跳到第二步)点击套件中心→点击左侧全部→滚动到中间位置就能找到“Docker”(鲸鱼游轮的ICO好可爱)当然也可以直接在搜索栏里搜索Docker,都是可以的稍等片刻以后,点击左上角呼出“所有程序”会出现一个Docke…

    2022年10月11日
    4
  • mysql数据库关键字及用法_mysql唯一索引关键字

    mysql数据库关键字及用法_mysql唯一索引关键字利用mysqlexplain来对sql语句进行优化,你需要懂这些关键字各表示的含义,这样优化才有的放矢。

    2022年10月17日
    2
  • pytorch转tensorrt_pytorch是啥

    pytorch转tensorrt_pytorch是啥报错原因分析涉及到梯度传播的tensor变量不能够直接numpy()转numpy,需要使用:var.detach().numpy()

    2022年8月31日
    4
  • 选择排序算法详解_八大排序算法图解

    选择排序算法详解_八大排序算法图解选择排序就是从待排序的元素中选择最小(最大)的元素,将其放在有序序列的相应位置,使这些元素构成有序序列。选择排序主要有两种:简单选择排序和堆排序。【简单选择排序】编写算法,要求使用简单选择排序算法对元素65、32、71、28、83、7、53、49进行从小到大排序。【算法思想】简单选择排序是一种简单的选择类排序算法,它的基本思想描述如下:假设待排序的元素有n个,在第一趟排序过程…

    2025年7月8日
    2
  • Pycharm git 使用简介

    Pycharm git 使用简介1.VCS版本控制服务器(GITCVSSVN)2.VCS—>checkoutfromversioncontrol从服务器clone代码并且创建本地项目,默认切换到主分支(master)3.gitignore文件:用来添加忽略文件4.右键—>Git—>Repository—>Branches创建并切换到dev分支5.开发到一定阶段将dev分支…

    2025年8月1日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号