上游优先或覆盖空间的路径提升属性

将数学概念应用于 FOSS 部署,为理解开源软件的相互关联性提供了新的有趣方法。
3 位读者喜欢这篇文章。
Math formulas in green writing

João Trindade。由 Jason Baker 修改。CC BY-SA 2.0。

别害怕;当你读完这篇文章时,你就会理解它的标题。

理解空间

几何学和拓扑学是数学的一个领域,它处理空间,通常是拓扑空间,以及你可以在其上定义的各种附加结构。

你如何将一组元素变成一个列表?“你可以使用 list() 函数!”我的 Python 朋友们会说。但本质上,你添加了一个的概念。你取这个集合,并解释该集合中的哪个点是下一个。同样,空间是元素的集合,具有这些附加概念

  • 对于拓扑空间,添加邻域的概念。你解释如何判断两个点是接近的。
  • 对于度量空间,添加距离的概念。你解释如何测量集合中任意两点之间的距离。

数学中有很多类型的空间,从众所周知的欧几里得空间到不太为人所知但同样常见的微分流形,一直到最近发明的奇异结构。该领域的研究围绕着寻找不同结构之间的关系,并确定它们是否定义了相同的基本对象。

例如,很容易证明度量空间始终是拓扑空间。但要证明存在无法用距离表示的拓扑空间则有点困难。

然而,对于周末休闲拓扑学家来说,我推荐二维曲面,例如,古老的球体、环面或莫比乌斯带。不像欧几里得平面那样方正和平坦,但仍然易于管理。而二维紧流形的分类理论非常有趣。

覆盖空间

拿起弹簧线圈,从顶部看它。你会看到一个圆圈。

 

spring

(Aleksandra Fedorova,CC BY-SA 4.0)

用数学语言表达这个事实,你会说线圈本身是全空间。在这种情况下,它本身只是一条一维线。它由各种组件组成

  • 你看到的圆圈是底空间
  • 视线定义了覆盖映射
  • 如果你有激光瞄准器,激光切割线圈的点将被称为纤维

总而言之,全空间、底空间和覆盖映射定义了覆盖空间或圆的覆盖,其纤维是离散的线。

家庭作业:圆可以覆盖线吗?

覆盖空间的关键特性,使其与任何投影不同的是,全空间中每个纤维点的邻域的工作方式与其在底空间中的投影的邻域非常相似。这使您可以使用底空间的预先存在的知识来推理全空间的特定属性,反之亦然。

数学家就是喜欢以这种方式在空间之间移动。一旦你在当前研究的空间中遇到某个障碍,你就会巧妙地将空间映射到熟悉的领域。你在那里证明一些东西,然后将结果转移回原始空间,在那里它可以带来新的和令人兴奋的突破。

路径提升属性

这一切与上游优先有什么关系?你可能会问。(我们仍处于为该理论开发适当的数学工具的早期阶段。欢迎在下面的评论部分添加您的建议和更正。)

看看代码是如何交付到企业级 Linux 发行版的,例如CentOS Stream。有一个开源项目和社区,他们开发特定版本的软件,例如 Firefox。我们称这样的项目为上游。一旦上游项目发布 Firefox 版本,它就会被打包到 Fedora。然后有一天,新的 CentOS Stream 版本使用 Fedora 包的内容进行引导,其中包含来自上游项目的特定版本的 Firefox。

当上游项目发布 Firefox 的关键更新时,该更新会在 Fedora 中打包和发布。但它也会通过 CentOS Stream 打包和发布。

FOSS 空间

考虑所有上游项目、Fedora 和 CentOS Stream 的所有补丁的集合。显然*,这是一个拓扑空间,其中 Git 历史记录定义了补丁的邻域。

(*)有时数学家使用显然这个词来掩盖他们无法真正详细解释这个概念的事实。

这个空间不容易掌握,虽然你可以用路径连接一些点,但其全局属性仍有待探索。

覆盖映射

在 FOSS 空间中获取任何提交,并将其映射到 CentOS Stream 中的提交,该提交实现了相同的功能或修复了相同的问题。对于 CentOS Stream 中的常规提交,该映射是微不足道的。对于任何上游更改或 Fedora 中的更改,该映射都指向其下游版本。因此,FOSS 空间可以表示为以 CentOS Stream 为底空间的覆盖空间。

提升路径

路径提升属性告诉你,对于底空间中的每条路径(CentOS Stream 中的更改),都应该在层中存在一条提升路径(Fedora 和上游项目中的更改,映射到它)。换句话说,它代表相同的错误修复。

上游优先原则告诉你要构建该路径。

总结

将数学概念应用于 FOSS 部署,为理解开源软件的相互关联性提供了新的有趣方法。我希望这篇深入探讨空间和上游优先原则的文章对您有所启发且有趣。

标签
Avatar
Aleksandra 是 Fedora 社区的长期成员、Fedora 大使和 Fedora 理事会的当选成员。她在红帽公司从事 RHEL、CentOS Stream 和 Fedora 的持续集成工作。她还拥有几何学和拓扑学博士学位。

2 条评论

谢谢你,Aleksandra!作为一名数学家(尽管我担心有点过时了),我总是很高兴看到这种用相关的具体例子来阐明数学概念的方式。很棒的文章!

谢谢

有一些强大的数学概念,我很乐意看到它们在日常生活中更普及。例如,同构(和同胚)或流形的思想。我希望人们能更频繁地看到数学不仅限于微积分和统计学,而且它还可以帮助我们构建思考复杂结构的方式。

也许我明年会写一些关于它的东西 :)

回复 作者 clhermansen

知识共享许可协议本作品根据知识共享署名-相同方式共享 4.0 国际许可协议获得许可。
© . All rights reserved.