1
00:00:01,320 --> 00:00:07,440
接下来,我们来看函数的一些概念
2
00:00:09,620 --> 00:00:10,650
刚才讲了函数
3
00:00:10,660 --> 00:00:14,640
实际上是A到B的一个映射
4
00:00:15,290 --> 00:00:17,050
从A里面取第1坐标
5
00:00:17,060 --> 00:00:20,570
到B里面取第2坐标
6
00:00:21,670 --> 00:00:23,560
第1坐标相同的时候
7
00:00:23,570 --> 00:00:27,200
第2坐标一定要相同
8
00:00:28,620 --> 00:00:30,320
那么这个时候第1坐标
9
00:00:30,610 --> 00:00:33,170
我们叫domain
10
00:00:34,920 --> 00:00:36,350
现在说领域什么的
11
00:00:36,960 --> 00:00:38,870
但是这里实际上是定义域的意思
12
00:00:38,960 --> 00:00:45,090
就是我们初中上学学的定义域、值域
13
00:00:48,230 --> 00:00:48,700
range
14
00:00:49,530 --> 00:00:50,050
值域
15
00:00:51,590 --> 00:00:56,720
可以这样来表达,第1坐标的集合,定义域
16
00:00:57,120 --> 00:00:58,440
第2坐标集合,值域
17
00:00:58,450 --> 00:01:04,800
函数的操作
18
00:01:04,810 --> 00:01:07,140
因为函数是关系
19
00:01:07,670 --> 00:01:08,300
关系是什么
20
00:01:08,310 --> 00:01:10,120
实际上关系也是集合
21
00:01:11,510 --> 00:01:13,220
同样有集合的运算
22
00:01:13,860 --> 00:01:14,190
23
00:01:18,540 --> 00:01:23,980
集合的交、差、并一样的
24
00:01:24,550 --> 00:01:27,250
我们看,函数的交
25
00:01:27,750 --> 00:01:28,900
我们来看右边
26
00:01:30,860 --> 00:01:33,230
右边这是G1
27
00:01:33,240 --> 00:01:35,950
这是函数,三个有序对
28
00:01:36,250 --> 00:01:37,840
a,1 b,2 c,3
29
00:01:38,340 --> 00:01:41,580
然后,G2也是函数,a,2 d,4
30
00:01:42,920 --> 00:01:46,440
因为左边不同,右边也不同
31
00:01:47,700 --> 00:01:51,560
那么G1并G2
32
00:01:56,300 --> 00:01:59,240
就得到{ (a,1), (b,2), (c,3),
33
00:02:00,230 --> 00:02:01,910
然后(a,2), (d,4) }
34
00:02:02,580 --> 00:02:04,930
这里就有这个了
35
00:02:05,260 --> 00:02:07,050
这个并就不一定是函数
36
00:02:07,820 --> 00:02:08,640
但还是集合
37
00:02:09,310 --> 00:02:11,010
集合的并还是集合
38
00:02:11,020 --> 00:02:13,620
但是函数的并不一定是函数
39
00:02:14,120 --> 00:02:18,070
因为它这里,很可能第2坐标
40
00:02:18,430 --> 00:02:19,630
就有可能相同了
41
00:02:20,470 --> 00:02:23,710
它不是函数,交肯定是
42
00:02:27,350 --> 00:02:29,430
因为交本身并没有增加
43
00:02:29,440 --> 00:02:33,250
你的集合里面元素的数量
44
00:02:33,260 --> 00:02:37,710
差也是一样,减掉
45
00:02:38,480 --> 00:02:43,430
就是说没有增加里面的元素的数量的时候
46
00:02:43,440 --> 00:02:47,350
它这个函数是不会说突然就不是函数了
47
00:02:47,820 --> 00:02:52,030
唯一有危险的,元素数量增加了
48
00:02:53,430 --> 00:02:57,590
导致这个地方出现了同样的第1坐标
49
00:02:57,600 --> 00:02:59,470
但是第2坐标不一样的情况
50
00:03:02,160 --> 00:03:05,340
所以对于并运算来说
51
00:03:07,870 --> 00:03:09,190
集合是封闭的
52
00:03:09,200 --> 00:03:11,270
但是函数它不是封闭的
53
00:03:16,860 --> 00:03:17,840
但是有的时候
54
00:03:20,470 --> 00:03:21,630
它的并运算
55
00:03:21,640 --> 00:03:23,550
依然是函数也存在的
56
00:03:23,840 --> 00:03:25,350
像上面那个不是函数
57
00:03:25,440 --> 00:03:29,170
下面这个就是,你看,G3
58
00:03:30,010 --> 00:03:31,080
工号999
59
00:03:31,290 --> 00:03:33,800
姓名罗永浩,这是函数
60
00:03:35,090 --> 00:03:36,030
G4也是函数
61
00:03:37,570 --> 00:03:41,000
G3并G4也是函数
62
00:03:42,340 --> 00:03:42,770
为什么
63
00:03:44,410 --> 00:03:51,320
这里面,就是这个地方,相同的元素,并的时候
64
00:03:51,810 --> 00:03:57,140
这个地方,工号是一样的时候
65
00:03:57,150 --> 00:03:59,320
这个999就是一样
66
00:03:59,970 --> 00:04:02,010
假设这里不是999,而是1000
67
00:04:03,180 --> 00:04:05,770
那么它就会多一个工号1000
68
00:04:07,370 --> 00:04:09,120
那就不行了,那就不是函数了
69
00:04:09,130 --> 00:04:10,080
就像这个一样
70
00:04:10,370 --> 00:04:13,570
你看这a1,a2这就不对了
71
00:04:14,520 --> 00:04:18,560
是因为大家共同的这个地方
72
00:04:20,660 --> 00:04:21,910
第2坐标是一样的
73
00:04:24,810 --> 00:04:28,190
所以它就可以并完之后依然是函数
74
00:04:33,070 --> 00:04:34,760
所以这个工号是什么
75
00:04:34,770 --> 00:04:38,560
然后这就是G3、G4的定义域里面
76
00:04:39,660 --> 00:04:40,530
共同的元素
77
00:04:40,540 --> 00:04:46,380
也就是说,它的定义域里面,两个定义域
78
00:04:47,610 --> 00:04:48,800
这边是工号、姓名
79
00:04:48,810 --> 00:04:50,770
生日
80
00:04:51,020 --> 00:04:52,890
这个集合,这边是工号、职位
81
00:04:53,680 --> 00:04:57,070
这两个定义域的交集就是工号
82
00:04:59,640 --> 00:05:01,080
那么对于工号来说
83
00:05:01,430 --> 00:05:05,910
G3函数跟G4函数它的值是一样的
84
00:05:06,790 --> 00:05:07,860
这个时候就可以并
85
00:05:08,530 --> 00:05:08,800
所以
1
00:00:01,640 --> 00:00:03,240
那么引出的概念就是
2
00:00:04,290 --> 00:00:06,560
可兼容或者可连接的概念
3
00:00:07,950 --> 00:00:14,050
如果两个函数,它的并集仍然是函数的话
4
00:00:14,220 --> 00:00:16,610
我们就可以把这两个函数
5
00:00:16,620 --> 00:00:19,130
称为可兼容或者可连接的
6
00:00:20,940 --> 00:00:24,870
跟我们数据库里面
7
00:00:25,700 --> 00:00:28,090
连接查询,两个表连起来
8
00:00:28,530 --> 00:00:30,400
那个一样,你看两个表连起来
9
00:00:30,410 --> 00:00:33,200
然后它会有一个on A的什么ID
10
00:00:33,950 --> 00:00:36,030
等于B的什么ID
11
00:00:36,280 --> 00:00:38,790
实际上,意思就是跟这个一样
12
00:00:40,830 --> 00:00:42,620
背后的本质是一样的
13
00:00:46,280 --> 00:00:47,320
严格点的定义
14
00:00:47,330 --> 00:00:50,660
就是这个,函数F和函数G兼容
15
00:00:51,400 --> 00:00:55,460
等价于任意的c
16
00:00:55,470 --> 00:00:57,950
属于F的定义域
17
00:00:59,180 --> 00:01:02,850
和G的定义域的交集
18
00:01:04,780 --> 00:01:05,860
F的定义域
19
00:01:05,870 --> 00:01:07,300
和G的定义域的交集
20
00:01:07,310 --> 00:01:08,740
里面的任何一个元素c
21
00:01:08,750 --> 00:01:11,710
F(c)=G(c)
22
00:01:13,520 --> 00:01:14,640
也就是说,这两个函数
23
00:01:14,650 --> 00:01:18,980
针对这样的c,它的值是一样的
24
00:01:18,990 --> 00:01:21,860
也就是说,在定义域的交集里面
25
00:01:23,310 --> 00:01:26,870
它们的映射过去得到的值是一样的
26
00:01:27,960 --> 00:01:30,840
实际上跟我们的数据库表一样
27
00:01:30,850 --> 00:01:33,420
你ID是这个,映射过来
28
00:01:34,140 --> 00:01:38,310
ID是同样的ID
29
00:01:38,650 --> 00:01:40,860
那么就可以兼容
30
00:01:40,870 --> 00:01:42,530
就可以并起来
31
00:01:42,540 --> 00:01:44,170
因为ID都是
32
00:01:45,460 --> 00:01:47,650
按照刚才就999
33
00:01:47,660 --> 00:01:48,970
工号就是999
34
00:01:49,770 --> 00:01:51,560
既然大家都是工号999的
35
00:01:51,570 --> 00:01:54,990
那就可以并起来
36
00:01:58,650 --> 00:02:03,430
当然如果这个交集是空的
37
00:02:03,440 --> 00:02:05,430
就F跟G就没有交集
38
00:02:06,920 --> 00:02:08,830
这两个函数实际上也是兼容的
39
00:02:08,840 --> 00:02:09,670
只不过怎么样
40
00:02:10,490 --> 00:02:12,130
这样的兼容没有什么意义
41
00:02:13,700 --> 00:02:15,250
在我们的这种
42
00:02:16,830 --> 00:02:19,640
不管是建模还是运算上没有什么意义
43
00:02:20,060 --> 00:02:21,860
两个不相干的
44
00:02:22,620 --> 00:02:23,810
不相干
45
00:02:23,820 --> 00:02:25,090
你硬是拿来
46
00:02:25,830 --> 00:02:27,950
交一下,也不是不可以
47
00:02:27,960 --> 00:02:30,230
但是你得到之后有什么意义
48
00:02:30,240 --> 00:02:33,280
因为它们之间任何没有什么联系
49
00:02:38,160 --> 00:02:43,570
就像右下角 G5、G6并起来
50
00:02:43,580 --> 00:02:44,850
也不是不可以
51
00:02:45,360 --> 00:02:47,180
但这个并起来有什么意义
52
00:02:47,910 --> 00:02:50,060
如果说要有意义,你中间必然有连接
53
00:02:50,070 --> 00:02:52,420
比如工号,这个人
54
00:02:53,070 --> 00:02:56,660
可能参与了某一次消费
55
00:02:57,000 --> 00:03:00,430
消费有发票,必然有这样的连接连起来才行
56
00:03:02,050 --> 00:03:03,810
人,突然来个发票
57
00:03:03,940 --> 00:03:07,310
中间又没有什么共同的连接点
58
00:03:08,780 --> 00:03:09,410
肯定不行的