单型
在抽象的代数中,数学分支, Monoid是配备了关联二进制操作和身份元素的集合。例如,具有添加的非负整数形成单体,身份元素为0 。
相对于函数组成,集合中的功能形成了一个单体。更一般而言,在类别理论中,对象本身的形态形成形成了一个单体,相反,单型物体可能被视为具有单个对象的类别。
在计算机科学和计算机编程中,由给定的字符组构建的一组字符串是免费的单体。过渡单体和句法单体用于描述有限状态的机器。痕量单体和历史单体为过程计算和并发计算提供了基础。
在理论计算机科学中,单体研究是自动机理论( Krohn – Rhodes理论)和形式语言理论(星形高度问题)的基础。
有关该主题的历史,请参见Semigroup ,以及单素的其他一些一般特性。
定义
配备了二进制操作S × S → S的集合S ,如果它满足以下两个公理,则表示•是一个单体:
- 关联
- 对于所有a , b和c在s中,方程( a • b )• c = a •( b • c )都保持。
- 身份元素
- 存在s中的元素e ,使得对于s中的每个元素a ,平等性e • a = a和a • e = A = A = A = a 。
换句话说,单体是具有身份元素的半群。也可以将其视为具有关联性和身份的岩浆。单体的身份元素是唯一的。因此,身份被认为是常数,即0 -ary(或无效)操作。因此,单体的特征是指定三重( s ,•, e ) 。
根据上下文,可以省略二进制操作的符号,以便用并置表示操作。例如,可以编写单轴公理( AB ) C = A ( BC )和EA = AE = A 。该符号并不意味着它的数字被乘以。
单体结构
亚摩型
单体( m ,•)的亚monoie是m的子集n ,在单体操作下封闭,并包含m的身份元素e 。象征性地,如果e∈N⊆M ,则n是m的下monoid,而每当x , y∈N时x • y∈N 。在这种情况下, n是从m继承的二进制操作下的单体。
另一方面,如果n是在单体操作下封闭的单体的子集,并且是该遗传操作的单体,则n并不总是一个下monoid,因为身份元素可能会有所不同。例如,单例集{0}是在乘法下关闭的,并且不是非负整数的(乘法)单体的亚monoid。
发电机
如果含有s的最小的亚monoi为m ,则据说M的子集S会产生M。如果有一个有限的集合生成M ,则M被认为是有限的单体生成的。
交换性单线
一种具有交换性的单体称为交换性单体(或者不太常见的是Abelian Monoid )。交换性单体通常是加上书写的。如果存在z + z = y ,则任何交换性单体都赋予其代数预分排≤ ,由x≤y定义。交换性monoid m的订单单位是m的元素u ,因此对于m的任何元素x ,在u生成的集合中都存在v ,从而使x≤v 。如果M是部分订购的Abelian G组G的正锥,通常使用的是,在这种情况下,我们说U是G的订单单元。
部分交换性单体
对于某些人而言,操作对某些但并非所有元素都是痕量的单型肌动物。痕量单体通常发生在并发计算理论中。
例子
- 在16个可能的二元布尔运营商中,有四个具有两侧的身份,这也具有交换性和关联性。这四个使集合{false,true}是交换性的单体。在标准定义下,并且Xnor具有XOR时的身份为真,并且具有身份错误。来自and和or的单体也是愿意的,而来自XOR和XNOR的人则不是。
- 自然数n = {0,1,2,...}是添加(身份元素0 )或乘法(身份元素1 )下的交换性单体。在添加下的n个下monoie称为数值单体。
- 正整数n ∖{0}的集合是在乘法下(身份元素1 )下的换向单体。
- 给定一个a , a的子集集是在相交下的交换性单体(身份元素本身)。
- 给定一个a , a的子集集为联合下的交换性单体(身份元素是空集)。
- 概括上一个示例,每个有界的半刻板是一个愿意的交换性肌体。
- 每个Singleton设置{ X }在二进制操作下关闭•形成琐碎的(单元素)单型,这也是琐碎的群体。
- 每个群体都是一个单型,每个阿贝利亚人都是可交换的。
- 对于所有s∈S,任何半群s都可以简单地将元素e毗邻并定义为e • s = s • e来将任何半群s变成单体。任何半群向单型物体的转换都是由自由函子在半群类别和单体类别之间完成的。
- 任何环的基础集,并加上或乘法作为操作。 (根据定义,环具有乘法身份1 。
- 在某些固定字母σ上的所有有限字符串的集合形成了带有字符串串联的单体串。空字符串用作身份元素。该单体表示为σ ∗ ,被称为σ上方的frof monoid 。如果σ至少有两个要素,则不会交换。
- 给定任何单体M ,相对的MONOID M OP具有与M相同的载体集和身份元素,并且其操作由X • Op Y = Y • X定义。任何交换性单体都是自身相反的。
- 给定两组M和N具有单体结构(或者通常,任何有限数量的单体数, m 1 ,..., m k ),它们的笛卡尔产物m × n ,其二进制操作和身份元素定义在相应坐标,称为直接产物,也是一种单型(分别为m 1 ×·仇虚× m k )。
- 修复一个单体m 。从给定集合到M的所有函数的集合也是一个单体。身份元素是将任何值映射到M的身份的常数函数;关联操作定义为点。
- 用操作•和身份元素e固定一个单体M ,并考虑其功率集p ( m ),该功率由m的所有子集组成。该子集的二进制操作可以由S • t = { s • t : s∈S , t∈T }定义。这将P ( M )变成具有身份元素{ E }的单体。以类似的方式, G组的功率集是组子集的乘积下的单体。
- 让S为一组。所有功能S → S的集合在功能组成下形成一个单体。身份只是身份函数。它也称为s的完整变换。如果s是有限的,则n元素, s上的函数的单体为有限, n n元素是有限的。
- 概括上一个示例,让C为类别, x一个c的对象。 X(表示末端C ( X )的X的所有内态的集合)在形态的组成下形成了单型。有关类别理论与单体之间关系的更多信息,请参见下文。
- 紧凑型表面的同构类别具有连接的总和。它的单位元素是普通2-Sphere的类别。此外,如果a表示圆环的类,而b表示投射平面的类,则单体的每个元素C具有独特的表达式, c = na + mb n n是正整数, m = 0, 1或2 。我们有3 B = A + B 。
- 令⟨f⟩为n顺序的循环单体,即, ⟨f⟩ = { f 0 , f 1 ,..., f n -1 } 。然后f n = f k对于一些0≤k < n 。实际上,每个这样的k都给出了n级别的独特性,并且每个循环单体对其中之一都是同构的。
此外, F可以将f视为{0,1,2,..., n -1}的函数
然后通过函数组成给出⟨f⟩中元素的乘法。
当k = 0时,函数f是{0、1、2,..., n -1}的排列,并给出唯一的循环级n 。
特性
单轴公理表明身份元素E是唯一的:如果e和f是单体的身份元素,则E = ef = f 。
产品和力量
对于每个非负整数n,一个人可以定义单粒n元素的任何序列(a1,...,an)的乘积递归:让p0 = e,让pm = pm -1•am in 。
作为一种特殊情况,可以定义单粒元素x的非负整数幂: x 0 = 1和x n = x n = xn≥1 。然后x m + n = x m • x n对于所有m , n≥0 。
可逆元素
如果存在一个元素y ,则称为X元素X可逆。元素y称为x的逆。逆转(如果存在)是唯一的:如果y和z是x的对流,则通过关联y = ey =( zx ) y = z ( xy )= ze = z 。
如果x是可逆的,则说使用反向y ,则可以通过为每个n≥1设置x -n = y n来定义x的负功率;这使得对所有m , n∈Z的方程x m + n = x m • x n保持。
MONOID中的所有可逆元素的集合以及操作•形成一个组。
Grothendieck集团
并非每个单人物都坐在一个小组内。例如,完全有可能具有一个单体,其中两个元素A和B存在使A • B = A也可以保持,即使B不是身份元素。这样的单体不能嵌入一组中,因为在组中,双方都乘以a的倒数将获得b = e ,这是不正确的。
如果对于M中的所有A , B和C ,则Monoid ( M ,•)具有取消属性(或取消),则相等性A • B = A • C表示B = C ,而相等性B • A = C • A表示B = C 。
具有取消属性的交换性单体始终可以通过Grothendieck组的结构嵌入组中。这就是整数的添加群(具有操作+的组)的方式,是由自然数(具有操作+和取消属性的可交换性的单体)构建的。但是,非共同的取消性单体不必嵌入一组中。
如果单体具有取消属性并且是有限的,则实际上是一组。
单粒子的右 - 左癌元素依次形成下monoid(即在操作下关闭,显然包括身份)。这意味着任何可交换单体的取消元素都可以扩展到一个组。
单肌中的取消特性不需要执行Grothendieck构造 - 通勤性就足够了。但是,如果交换性单体没有取消特性,则单粒对Grothendieck组的同态并不是注入性的。更确切地说,如果A • B = A • C ,则B和C在Grothendieck组中具有相同的图像,即使B ≠ c 。特别是,如果Monoid具有吸收元素,则其Grothendieck组是微不足道的群体。
类型的类型
一个逆monoid是一个单体,其中每个a中的每个a在m中都存在一个唯一的a -1 ,使得a = a = a • a -1 • a • a -1 = a -1 • a -1• a •a• a -1 。如果是逆的单体取消,则是一组。
在相反的方向上,零free monoid是一个添加书面的单体,其中a + b = 0意味着a = 0 and b = 0 :等于,除零以外没有其他元素具有添加剂倒数。
行为和操作员
令M为单型,并用二进制操作表示••用e表示的身份元素。然后a(左) m -act (或M左ACT ACT)是一个集合X ,以及一个操作EB: M × X → X ,与MONOID结构兼容,如下所示:
- 对于x中的所有x : eEšx = x ;
- 对于所有a , b和x中的b和x中的x : a ·( b · x )=( a • b ) Åx 。
这是一个(左)群体行动的单体理论中的类似物。正确的m -acts以类似的方式定义。带有动作的单体也被称为操作员单体。重要的例子包括半自动瘤的过渡系统。通过毗邻身份变换,可以将转换半群变成算子。
单形同态
两个单型( m ,∗)和( n ,•)之间的同态是一个函数f : m → n ,使得
- f ( x ∗ y )= f ( x )• f ( y )的所有x , y在m中
- f ( e m )= e n ,
其中e m和e n分别是m和n的身份。单形同态有时被简单地称为单型形态。
并非单粒之间的每个半群同态都是单形的同态,因为它可能不会将身份映射到靶标单体的身份,即使身份是同态图像的身份。例如,考虑[ z ] n ,配备乘法的残基类模块。特别是, [1] n是身份元素。函数f :[ z ] 3 →[ z ] 6由[ k ] 3↦ [3 k ] 6给出的是半群的同构,因为[ 3kš3l ] 6 = [9 kl ] 6 = [3 kl ] 6 。但是, f ([1] 3 )= [3] 6 ≠[1] 6 ,因此单型同态是单型膜之间的半群同态,它映射了第一个单肌的身份,对第二个单肌的身份,而后者的身份无法被省略。
相比之下,组之间的半群同形始终是组同态,因为它一定保留了身份(因为在同态的目标群体中,身份元素是唯一的元素x ,因此x · x = x )。
徒单型同态被称为单形同构。如果它们之间存在单构同构,则据说两个单形是同构。
方程式演示
可以给出单粒呈现方式,就像可以通过小组演示指定组一样。一个人通过指定一组发电机σ来做到这一点,并在自由构体σ ∗上指定一组关系。一个人通过将σ ∗的(有限)二进制关系扩展到单体一致性,然后构建商单体,如上所述。
给定二进制关系r⊂σ ∗ ×σ ∗ ,一个人将其对称闭合定义为r r r r r -r -1 。可以通过定义x〜e y y y y y y y y y y y y y y = s = sut and y = svt ,对于某些字符串u , v , s ,s, t∈σ ∗ ( u , v) ) ∈Rr -1 。最后,一个人对E进行了反身和及时的闭合,然后是单型的一致性。
在典型情况下,关系r简单地作为一组方程式给出,因此r = { u 1 = v 1 ,..., u n = v n } 。因此,例如
是Bicyclic Monoid的方程式呈现,并且是
是2度的多型单型(它具有无限顺序)。这种构成单体的元素可以写成整数I,j,k,因为关系显示BA都与A和B上下班。
与类别理论的关系
总体 | 关联 | 身份 | 分裂性 | 换算性 | |
---|---|---|---|---|---|
部分岩浆 | 不需要 | 不需要 | 不需要 | 不需要 | 不需要 |
半群 | 不需要 | 必需的 | 不需要 | 不需要 | 不需要 |
小类 | 不需要 | 必需的 | 必需的 | 不需要 | 不需要 |
群素 | 不需要 | 必需的 | 必需的 | 必需的 | 不需要 |
岩浆 | 必需的 | 不需要 | 不需要 | 不需要 | 不需要 |
准元素 | 必需的 | 不需要 | 不需要 | 必需的 | 不需要 |
Unital Magma | 必需的 | 不需要 | 必需的 | 不需要 | 不需要 |
环形 | 必需的 | 不需要 | 必需的 | 必需的 | 不需要 |
半群 | 必需的 | 必需的 | 不需要 | 不需要 | 不需要 |
联想准群 | 必需的 | 必需的 | 不需要 | 必需的 | 不需要 |
单型 | 必需的 | 必需的 | 必需的 | 不需要 | 不需要 |
交换性单线 | 必需的 | 必需的 | 必需的 | 不需要 | 必需的 |
团体 | 必需的 | 必需的 | 必需的 | 必需的 | 不需要 |
阿贝里安集团 | 必需的 | 必需的 | 必需的 | 必需的 | 必需的 |
^α闭合公理,由许多来源使用并以不同的方式定义,是等效的。 ^β在这里,划分性专门指的是准公理。 |
单型可以看作是特殊类别的类别。实际上,当限制在源和目标是给定的对象的所有形态的集合时,单粒操作所需的公理恰好是形态组成所需的公理。那是,
- 本质上,单型与具有单个对象的类别相同。
更确切地说,给定一个单体( m ,•) ,一个人只能用一个对象构造一个小类,其形态是m的元素。形态的组成由单型操作•给出。
同样,单体同态只是单个对像类别之间的函子。因此,这种结构在(小)monoids mon的类别与(小)类别类别的类别的完整子类别之间具有等效性。同样,组类别等效于另一个CAT的完整子类别。
从这个意义上讲,可以将类别理论视为单体概念的扩展。关於单体的许多定义和定理可以推广到具有多个对象的小型类别。例如,一个具有一个对象的类别的商只是一个商单体。
就像其他代数结构一样,单体也形成了自己的类别,即其对像是单型物体,其形态是单型同态。
还有一个单体对象的概念,它是类别中一种单体的抽象定义。集合中的单体物体只是一个单体。
计算机科学中的单体
在计算机科学中,许多抽象的数据类型可以赋予单体结构。在共同的模式中,单粒元素的一系列元素被“折叠”或“累积”以产生最终值。例如,许多迭代算法需要在每次迭代中更新某种“运行总计”。这种模式可以通过单型操作来优雅地表达。另外,MONOID操作的关联性可确保可以通过使用前缀总和或类似算法并并行操作,以便有效地利用多个内核或处理器。
给定具有身份元素ε和关联操作的类型M值的顺序• ,折叠操作定义如下:
另外,考虑到其元素的序列化,任何数据结构都可以以类似的方式“折叠”。例如,“折叠”二进制树的结果可能取决于预订和后阶树遍历。
MapReduce
所谓的MAPREDUCE编程模型是计算机科学中单粒细胞的应用(请参阅编码MAP-REDUCE作为带有左折叠的单体)。 MapReduce在计算中由两个或三个操作组成。给定数据集,“映射”包括将任意数据映射到特定单体的元素。 “降低”包括折叠这些元素,以便最终我们仅产生一个元素。
例如,如果我们有一个多键,则在一个程序中,它以从元素到其数字的地图表示。在这种情况下,元素称为键。不同键的数量可能太大了,在这种情况下,多键正在碎片。为了正确地降低,“改组”阶段会在节点之间重新组合数据。如果我们不需要此步骤,则整个地图/降低包括映射和减少;这两个操作都是可行的,这是前者由于其元素的性质而引起的,后者是由於单体的关联而引起的。
完整的单体
完整的单体是一个可容纳任何索引集I的换向单型,以便任何索引
和
- .
有序的交换性肌体是一个交换性monoid m,部分有序≤≤ ,使每个a∈M≥0≥0 ,并且a≤b表示所有a , b , c∈M的a + c≤b + c 。
连续的单体是一个有序的交换性单体( m ,≤) ,其中每个定向子集都具有最小的上限,并且这些最小的上限与单型操作兼容:
对于每个a和m的定向子集。
如果( m ,≤)是连续的单体,则对于任何索引集i和元素集合( a i ) i∈I ,一个人可以定义
M与此无限总和一起是一个完整的单体操作。