yuhuanstudio/wikipedia-omni-zh huggingface dataset:
自由软件基金会

自由软件基金会（Free Software Foundation，缩写：FSF）是一个致力于推广自由软件的美国民间非营利性组织。它于1985年10月由理查德·斯托曼与其他四个创始董事建立。其主要工作是执行GNU计划，开发更多的自由软件。

从其建立到1990年代中自由软件基金会的基金主要被用来雇用编程师来发展自由软件。从1990年代中开始写自由软件的公司和个人繁多，因此自由软件基金会的雇员和志愿者主要在自由软件运动的法律和结构问题上工作。

## 最近工作

<image>

GNU工程 : 自由软件基金会最早的目的在于促进自由软件的开发，但自由软件基金会也有开发GNU操作系统的任务。

施行GPL : 自由软件基金会具有施行GNU通用公共许可证和其它GNU许可证的能力和资源，但自由软件基金会只对它拥有版权的软件负责。其它软件必须由它们自己的拥有人来负责，原因是从法律规定上自由软件基金会无法为这些其它软件负责。自由软件基金会每年约接触到50个违反GNU通用公共许可证的事件，自由软件基金会试图不通过法院使对方遵守GNU通用公共许可证。

GNU许可证 : GNU通用公共许可证是自由软件工程中最普及的许可证。最新的版本（版本3）发表于2007年6月29日。自由软件基金会还发布了GNU宽通用公共许可证和GNU自由文档许可证。

监督版权 : FSF拥有大多数GNU软件和一些非GNU自由软件的版权。若GNU软件包的贡献者签署版权文件使得版权转交给FSF，FSF就可以在诉讼案中在法庭上维护这些软件。此外这样假如许可证有所变化的话不必征求软件所有的贡献者的同意。

自由软件目录 : 自由软件目录是所有自由软件包的一个列表。其中列出的每个软件包含47条信息，比如工程的主页、程序师、编程语言等。目的是提供一个自由软件的搜索引擎和为用户提供一个检查一个软件包是否自由的工具。自由软件基金会为此从联合国教科文组织获得少数基金。计划是将来这个目录可以翻译成不同的语言。

维持自由软件的定义 : 自由软件基金会维持多个定义自由软件运动的文献。

法律教育 : 自由软件基金会举办关于GNU通用公共许可证的法律问题的研究会，向律师提供咨询服务。

工程管理 : 自由软件基金会通过它的GNU草原（GNU Savannah）页面提供工程管理的服务。

颁发奖励 : 自由软件基金会每年颁发两部奖励：自由软件进步大奖和社会福利自由软件奖励。

## 高优先计划

自由软件基金会列出了一个高优先计划（high priority projects）列表，FSF认为以下区域需要自由软件社群们的注意，这些计划所在区域还需要有不断改进之处。

目前关注区域：

- 自由的手机操作系统
- 去中心化，联邦化与服务自建
- 自由的驱动程序，固件和硬件设计
- 实时音视频通话
- 鼓励社区中未被充分代表的人参与贡献自由软件
- 自由软件的无障碍可访问性问题
- 自由软件的多语言翻译问题
- 通过自由软件来保护软件安全以及对自由软件的安全保护
- 智能个人助理
- 帮助各种GNU/Linux发行版专注于实现软件自由
- 帮助政府采用自由软件

## 结构

### 成员

2002年11月25日自由软件基金会向个人提供自由软件基金会附属会员的可能性。到2005年3月它拥有3400多位附属会员。2003年3月5日它向商业企业提供公司保护计划，到2004年4月它拥有45位公司保护。

### 组织

#### 董事会成员

- Geoffrey Knauth，基金会财务秘书
- Christina Haralanova
- 亨利·普乐
- 杰拉德·杰伊·萨斯曼
- Ian Kelling，现任董事会主席
- en
- Maria Chiara Pievatolo
- 理查德·斯托曼
- Alex Oliva，Free Software Foundation Latin America创始人
- Eko K.A. Owen

### 姊妹组织

2001年在德国成立了欧洲自由软件基金会作为自由软件基金会在欧洲的代表人。2003年在喀拉拉邦成立了印度自由软件基金会。2005年11月成立了拉丁美洲自由软件基金会。

## 获得的荣誉

- 1999年：林纳斯·托瓦兹奖
- 2005年：电子艺术大奖

## 参考资料

- 类型：501(c)(3) 非营利组织
- 法律地位：501(c)(3)
- 目标：计算机用户自由
- 总部：远距工作，现无实体办公室
- 服务地区：全球
- longitem 会员：私人和企业赞助人
- 董事会主席：Ian Kelling
- 员工数：10
- 营收：$1,177,880（2024年度）
- 支出：$1,579,069（2024年度）
- 执行董事：Zoë Kooyman
操作系统列表

此列表列出了早期至今的所有操作系统名称。

## 早期操作系统（专利保护）

- TRS-DOS，ROM OS's
- TI99-4
- Commodore PET，64，和 VIC-20。
- 第一套IBM-PC
- System v1.0~7.6.1，Mac OS 7.6~9.2.2（苹果电脑）
- Sinclair Micro和QnX等

## 商业操作系统（非Unix）

- CP/M
- CP/M-86
- MP/M-80
- UCSD P-system
- Mini-FLEX
- SSB-DOS
- DR-DOS
- FreeDOS
- MS-DOS
- PC-DOS
- Mach 由卡纳尼基梅隆大学研究
- L4微内核 第二代微内核
- CHORUS
- Choices
- Multics
- OS-9
- NSJ
- Netware:一种网络服务器操作系统

## Unix及类似系统

- Unix System V
- Xenix-微软
- OS/2-IBM 微软
- SCO UNIX-SCO
- IRIX-SGI
- iOS-Apple
- A/UX-Apple->Mac OS X->macOS
- HP-UX-HP
- AIX-IBM
- Solaris，Open Solaris<-SunOS
- OS/390
- Chorus OS
- Cromix
- UNIflex
- QNX
- OS-9
- Digital UNIX->Tru64
- DNIX
- Inferno
- MenuetOS
- OSF/1
- Plan9
- Ultrix
- UniCOS
- z/OS
- Syllable Desktop
- Minix
- BSD
- NetBSD
- OpenBSD
- FreeBSD
- PC-BSD
- DragonFly BSD
- Kylin(麒麟操作系统)：Kylin 3.0版之后，采用Linux来改写。
- SUN OS
- GNU
- Hurd
- GNU/Hurd
- Linux（或称GNU/Linux）
- Debian
- Red Hat
- Ubuntu
- Linux mint
- Deepin<-Hiweed
- StartOS<-ylmf OS
- Chrome OS
- Android
- ezgo
- 安同 GNU/Linux
- ArchLinux

## 其他

### NeXT

- NEXTSTEP（即之后的Mac OS X）
- 九号计划
- Inferno

### 西门子

- BS2000 - 用于西门子公司的大型主机。
- SINIX（也称Reliant UNIX） - 用于西门子公司的UNIX电脑系统。

## 其他操作系统

- 动态可扩展操作系统
- MIT的Exo Kernel
- 华盛顿大学的 SPIN
- 哈佛大学的 VINO
- illinois大学的Choices
- ReactOS
- JNode
- MenuetOS
- CLeonOS
GNU计划

<image>

GNU计划（GNU Project），是一个自由软件集体协作计划。1983年9月27日由理查德·斯托曼在两个USENET新闻组内公开发起。其主要目标是创建一套完全自由的操作系统，称为GNU。两年后斯托曼在GNU宣言中号召为GNU操作系统的开发提供支持，打破专有软件对用户的控制。该宣言认为发展自由软件是通往后稀缺社会的一个关键。

GNU是“GNU's Not Unix”的首字母递归缩写。与单词gnu（牛羚）的“new”发音不同。GNU计划中GNU发音为“Guh-NOO”。

## 历史

1985年，理查德·斯托曼和其他四人创立了自由软件基金会（FSF），为GNU计划提供技术、法律以及财政支持。虽然GNU计划有许多个人自愿无偿贡献，但FSF也会聘请程序员帮助编写。Bash的原作者布莱恩·福克斯即为FSF早期全职雇员。

当GNU计划开始逐渐获得成功时，一些商业公司开始介入开发和技术支持。Canonical（Ubuntu为旗下产品）开发了GNU Bazaar并部署在公司内部软件Launchpad上。尽管其分叉Breezy还在积极开发，Launchpad最终于2025年弃用了Bazaar。在激烈的市场竞争中，有的公司获得了成功。如后来被Red Hat兼并的Cygnus Solutions。也有昙花一现的。GNOME计划发起后，曾参与麦金塔项目（Macintosh）重要设计的安迪·赫兹菲尔德创办了en公司。Eazel公司为GNOME开发了图形化界面的Nautilus，用于取代纯文本界面的GNU Midnight Commander文件管理器。但是Eazel最后没有取得商业上的成功，并于2001年5月倒闭。

### 管理分歧

2009年，GNOME联合创始人米格尔·德伊卡萨在Planet GNOME上发表了关于专有软件Silverlight的文章。斯托曼进入GNOME的邮件列表参与讨论后，他想要阻止GNOME的Planet聚合器上的博客参与者编写宣传专有软件的文章。因为与斯托曼观点相左，GNOME计划的核心参与者如Philip Van Hoof就想过脱离GNU计划，并且在GNOME计划内部发起了脱离GNU的投票。

2021年4月，部分来自GCC、GNU C Library、GnuCOBOL等GNU软件包的参与者开始追求管理结构的革新。他们在GNU计划内部成立了一个新的名叫GNU Assembly的组织。新闻引述他们官网上对自己的定位：“the GNU project would be healthier and more effective if GNU maintainers had the ability to act collectively, beyond our capacities in our individual projects.”。这个新的组织使用GNU Social Contract（GNU社会契约）和成文的行为准则进行管理。

## 实现方法

### 哲学构筑

1980年，美国开始把计算机软件正式列入著作权保护的范畴内。1985年整理成型的GNU宣言阐明了GNU计划以及自由软件运动想要达成的目标。后来，为了界定什么样的软件代码公开方式以及配套许可证能构成一款自由软件，自由软件基金会与gnu.org从一开始的两大自由逐渐扩展并整理出了如今自由软件定义的四大自由。根据斯托曼的陈述，FSF发行的软件许可证GNU GPL之所以被称作“Copyleft”许可证，是因为专有软件开发者用“Copyright”（著作权）夺取用户自由，而他们想做的事情正好相反，即用著作权法保障用户自由。

### 法律保障

GNU计划主要通过各种Copyleft许可证来为软件的四大自由提供法律保障。因为Gosling Emacs变为专有软件，斯托曼发起了GNU Emacs项目，并基于Emacs Commune（Emacs公社）的精神为GNU Emacs建立了许可证。之后，斯托曼和几位律师合作改写了GNU Emacs的许可证并在1989年释出了GNU通用公共许可证（GNU GPL）。GPL被运用在一些计划内的GNU软件包上（如GCC的非运行时库部分、GNU核心工具组、R语言等）以及大量非GNU的软件上。后来又针对各类程序库和软件包增加了LGPL和AGPL许可证。GNU贡献者可以选择转移著作权给FSF。转交著作权给单个拥有者的一个原因是项目分散的Copyleft著作权可能会导致Copyleft效力减弱。

### 经济支持

除了公司或非营利组织雇佣GNU软件包的开发者以外。计划内软件包有的从FSF的Working Together for Free Software Fund捐款渠道获取资金支持，也有GNU软件包如Octave采用其它的捐款渠道。还有同时从FSF的Fund和其它渠道获取捐款的GNU项目，如Guix。此外，荷兰的基金会在规定期限内会资助通过资质审核的自由软件项目，其中就存在一些GNU软件。比如对于GNU，NLnet配合欧盟委员会倡议旗下NGI（下一代互联网倡议）在2026年4月就启动了开发兼容性插件及本体的资助计划。

## 批评

### 管理模式

GNU计划贡献者，也同时是开放源代码促进会（OSI）的联合创始人埃里克·雷蒙曾经批评GNU计划的开发模式是“大教堂”（Cathedral）。他认为这类中心化的开发模式在效率上低于类似当时新生的Linux内核那种更去中心化，从下到上的“集市”（Bazaar）开发模式。因为GNU计划内部的管理分歧，也出现了本文提到的GNOME计划退出GNU、开发者创建新的跨项目管理结构GNU Assembly等情况。法律层面上，FSF在2021年放宽了对GCC的著作权拥有权，不再要求所有开发者都把著作权转移给FSF。

## 子计划

### 已退出

#### GNOME计划

在一次对GNOME联合创始人米格尔·德伊卡萨的采访中，他自述创建GNOME桌面环境是因为KDE最开始调用的Qt工具库是专有的。而GNOME计划发起就是为了创建一个完全由自由软件构成的桌面环境。2000年，Linux Journal里关于GNOME的文章记录了其包含于GNU计划的历史。FSF也曾是GNOME基金会的成员组织。2021年4月14日，GNOME的X平台社交媒体官号表示“Let's also clarify that here. GNOME is NOT a GNU project.”。相较2018年的情况，GNU计划官方网站软件包列表里2024年的版本也不存在GNOME。

### 已停止

#### GNU Enterprise（GNUe）

GNUe（一套企业信息化管理软件）已停止维护。该软件曾在IEEE Software期刊2006年5-6月期中得到介绍。

## 外部链接

- 斯托曼1983年宣告GNU计划开始的宣言
- GNU哲学的网页
- GNU宣言
- GNU专案的细节记录
- GNU专案的简要历史
- 原码3路_3/5 :用革命存活社群-GNU (1/2)
- GNOME Foundation relationship with GNU and the FSF
自由软件运动

自由软件运动（free software movement或free/open source software movement，简称FSM或FOSSM）是一个推广用户有使用、复制、研究、修改和分发软件等权利的社会运动。接近和相关的运动包括开放源码运动及自由软件的开放源码运动。这运动跟1970年代的黑客文化有渊源，而理查德·斯托曼是该运动的主要发起人以及精神领袖。

自由软件运动人士认为自由软件的精神应当贯彻到所有软件：他们认为禁止计算机用户行使这种自由是不道德的行为。理察·马修·斯托曼认为贩卖不附带源代码的二进制软件是不道德的，因为这样阻止了软件用户学习以及帮助其他人的权利。然而目前还没有如何实现自由软件运动最终目标的共识。有些人认为应当使用法律手段强制软件供应商提供源代码；有些则认为应当通过抵制专有软件来达到目的。还有一些人则认为时间将证明，自由软件最终在质量上要比专有软件略胜一筹，并会在自由市场上取得胜利。

部分自由软件运动人士也认为其他受专利权保护的产品也应当自由化。还有一些人士则认为有部分资源不应当被自由更改，例如GNU通用公共协议证书，小说等。

## 理念

这个运动的理念在于电脑的使用不应该阻碍人际合作。更直接地说，这个运动代表着拒绝专有软件并推广自由软件。它的终极目标在于解放网络世界中的每个人——即每个电脑使用者。理查·斯托曼表明这个行动旨在提升而非妨碍科技进步，因为“这代表我们可以避免重复无益的系统编程，而把这份精力用在推动技术革新上面。”("It means that much wasteful duplication of system programming effort will be avoided. This effort can go instead into advancing the state of the art.")

自由软件运动的成员相信所有软件使用者有享有自由软件定义中列举的自由。许多成员认为禁止他人享有这些自由是不道德的，也相信在创造一个使用者可以互相帮助并拥有自己对于电脑控制权的社会，这些自由是必须的。斯托曼在一篇《Copyleft: Pragmatic Idealism》中描述，他的一位朋友便不排斥开发专有软件，但是开发专有软件的时候这位朋友要求薪资。

虽然社会变迁是一个科技变迁下非刻意造成的副产物，新科技的倡议者经常宣传这些新技术就社会正面影响一个工具。圣荷西州立大学的教授Joel West解释了许多自由源代码运动的理念。如果假设科技不仅对社会变迁造成影响，并从科技进步主导社会变迁的角度来看待，禁止特定人员使用这些科技是道德的吗？因此—纵使不能造成立刻的改变—自由软件运动还是希望唤醒人们这个运动所能造成的影响，因为能造成对现实社会的影响。举例来说：与没有电脑时相比，电脑给了我们更多自由，但这些科技媒介究竟是带来自由、或仅赋予少数人特权？这样的道德争论如何取的一个折衷的办法对自由软件运动是个难题。

自由软件基金会坚信所有的软件需要说明文件，特别是周到的工程师应做到能更新说明书以反映他们对软件的调整，但他们认为对修改其他著作的自由本身是相对次要的。在自由软件运动中FLOSS Manuals基金会特别强调提供此类文件的目标。自由软件运动的成员也倡议具实际用途的软件应该自由的。

## 知名自由软件

- GNU Hurd
- Mastodon
- Linux
- PHP
- MySQL
- Notepad++
- Firefox
- Thunderbird

## 行动

<image>

### 编写及推广自由软件

自由软件运动的核心工作专注于软件开发。自由软件运动也反对专有软件，拒绝安装不给予自由权利的软件。根据斯托尔曼叙述，“在软件领域比专有程序未经授权的拷贝更糟糕的唯一一件事，就是私有软件的授权副本。因为这样做同样伤害其整个用户群体。此外，通常开发商，这个邪恶的犯罪人，就可从中获利。

### 建立意识

自由软件运动的一些支持者们会通过公众演讲，或者主持软件相关会议，以提高公民对于软件自由的认识。这被视为相当重要，因为接受自由软件的人们，往往不知道它是自由软件。进而继续使用专有软件或者专有的插件。

### 道德平等

玛格丽特·S·埃利奥特，一个在在加州大学欧文分校的软件研究者。不仅列出了可能来自自由软件运动的许多好处，她还声称，它本质上是要给予每个人平等的机会利用互联网。假设计算机是全球访问，由于世界变得更加立足于技术及其发展，建立一个选择性的互联网，只允许部分人在访问，这根据“艾略特自由”是荒谬的。根据许多推动有关自由软件运动的学者的认识，如果人们想要生存在通信和全球援助更加共存的世界，那么全球自由软件更加应该争取一个位置。这个由GNU同伙引发的想法，是促进一个理解当地和全球社区的利益，所谓“合作环境”的一种尝试。

## 立法

大量的抵制软件专利和著作权法扩张的游说工作已经完成。其他游说则直接专注于政府机构和政府资助的项目中所使用的自由软件。

委内瑞拉政府在2006年1月实施了保证软件自由的法律。法令第3,390条，授权所有政府机构可以将完成超过两年的软件，编列为自由软件。

国会议员埃德加·戴维斯·维拉纽瓦和雅克·罗吉克·阿克曼在引进秘鲁法案1609“公共管理自由软件”的过程中，出力极大。而这一事件立刻引起微软公司秘鲁分部的注意，而其总经理随后写了一封信给埃德加·戴维斯·维拉纽瓦博士。维拉纽瓦博士的反应受到了全世界的关注，此后对于自由软件的论证，更是被视为经典。

在美国，也已经有了在州政府于州级对促进使用自由软件通过立法的努力。

## 发展中采取措施

Ohloh。一种成立于2004年，发起于2006年的Web服务。用于监视在自由软件社区的软件开发活动，对项目和编程语言的发展和普及提供详细的软件度量和定量分析。

黑鸭子软件。监视很多FOSS软件仓库和分析各种FOSS软件许可证的普及。

## 外部链接

- 自由软件的定义
- Free Software Movement intro by FSF
- 自由软件的故事
材料科学

<image>

材料科学（materials science），涉及物质的性质及其在各个科学和工程学领域的整合应用，是一个研究材料的制备或加工工艺、材料的微观结构与材料宏观性能三者之间的相互关系的跨领域学科。涉及的理论包括固体物理学、材料化学、应用物理和应用化学，以及化学工程、机械工程、电机工程、电子工程、土木工程和建筑工程。与机械结合则衍生出机械材料，与电子结合则衍生出电子材料，与土木建筑结合则衍生出结构材料，与生物学结合则衍生出生物材料等等。随着近年来媒体将注意力大量集中在纳米科学上，材料科学在科学与工程学领域越来越广为人知。它也是鉴识科学和破坏分析中的一个重要组成部分，以后者为例，它是分析各种飞航意外的关键。今日许多科技上的问题受限于材料能够容许的极限，也因此，在此领域的突破在未来科技具有指标性的影响。材料科学有着广泛的应用前景。

## 简史

在各时代上材料的选择往往决定了该时代的发展，像是石器时代、青铜器时代、铁器时代和工业革命就是明显的例子。材料科学是最古老的应用科学及工程学之一，起初被引导来自陶瓷的加工和冶金学的延伸。现代材料科学演进来自于冶金学。在十九世纪晚期一位美国科学家约西亚·吉布斯发现材料在不同相态之间的热力学性质，使得在理解材料性质上有重大性的突破。材料科学与其他领域的合作发展革命性科技，像是塑胶、半导体和生物材料。

在1960年代前，许多材料科学系都被称为矿冶系。1960后当时美国高等研究计划署(Advanced Research Projects Agency)，现为国防高等研究计划署(Defense Advanced Research Projects Agency)，为了材料科学的基础研究以及训练的国家计划(“to expand the national program of basic research and training in the materials science”)在1960年代创立一系列大学实验室，建立了材料科学。此领域包含陶瓷材料、聚合物、半导体、磁性材料、生物材料、奈米材料。

## 材料科学理论

- 物理冶金学
- 晶体学
- 固体物理学
- 材料化学（固体化学）
- 材料应用力学
- 材料静力学
- 材料动力学
- 材料力学
- 材料热流学
- 材料热力学
- 材料流体力学
- 材料计算科学

## 材料的分类

- 基本材料分类
- 木材
- 金属材料
- 陶瓷材料
- 玻璃材料
- 高分子材料
- 复合材料
- 半导体材料
- 按化学状态分类
- 木材
- 金属材料
- 无极非金属材料
- 陶瓷材料
- 有机材料
- 高分子材料
- 按物理性质分类
- 高强度材料
- 耐高温材料
- 超硬材料
- 导电材料
- 绝缘材料
- 磁性材料
- 透光材料
- 半导体材料
- 按状态分类
- 单晶材料
- 多晶质材料
- 非晶态材料
- 准晶态材料
- 按物理效应分类
- 铁电材料
- 压电材料
- 热电材料
- 电磁材料
- 激光材料
- 按用途分类
- 土木材料
- 建筑材料
- 结构材料
- 研磨材料
- 耐火材料
- 耐酸材料
- 水工材料、配管材料
- 机械材料
- 电机材料
- 电子材料
- 电工材料、配线材料
- 光学材料
- 感光材料
- 包装材料
- 按组成分类
- 单组分材料
- 复合材料

## 材料工程技术

- 金属材料成形
- 机械加工
- 非传统加工
- 热处理
- 热加工
- 陶瓷冶金
- 陶瓷工程
- 粉末冶金
- 薄膜生长技术
- 表面处理技术
- 表面改性技术
- 表面涂覆技术

## 材料的应用

- 结构材料
- 资讯材料
- 储存材料
- 半导体材料
- 机械材料
- 电机材料
- 电子材料
- 航行材料
- 航空材料
- 航海材料
- 土木材料
- 建筑材料
- 能源材料
- 生物材料
- 环境材料
- 储能材料和含能材料
生命

生命是一种特征，物质存在的一种活跃形式。目前对于生命的定义在学术界还无共识，较流行的定义是一类维持体内平衡、具有生命周期和稳定的物质和能量代谢现象、能对刺激做反应、能进行自我复制和繁殖、进化的半开放物质系统。由细胞组成，能够成长、适应环境。其他定义有时包括非细胞生命形式，如病毒和类病毒。

生命是生物学的基本概念，而生物学是研究生命的科学。生命具有生物进程（如信号传递和自我维持过程）的物理实体与那些没有生物进程的实体区分开来。如果生物过程的功能已经停止（死亡），或者它们从来没有这样的功能则会被归类为无生命。

生命包含所有“生物的特性”，生命个体一定会经历出生、成长、衰老和死亡。生命种群则在一代代个体的更替中经过自然选择发生进化以适应环境。生物学则是以研究生命为中心的科学。

生命的最小单位是生物，生物是由一个或多个细胞组成，能够新陈代谢，维持恒定性，可以成长，回应刺激，可以繁殖甚至演化，以适应外界环境，继续繁殖并产生后代。生命以各种形式存在，如植物、动物、真菌、原生生物、古菌和细菌。在地球的生物圈内可以找到许多不同的生物，在这些生物中都有共同的特征，都是由以碳和水为基础的细胞构成，有其组织以及可以遗传的基因资讯。

生命起源是生命从非生物物质（如简单的有机化合物）中产生的Q13878858。普遍的科学假设是，从非生物到生物的转变不是一个单一的事件，而是一个逐渐增加复杂性的过程。地球上的生命最早出现在42.8亿年前，在44.1亿年前海洋形成后不久，在45.4亿年前地球形成后不久。当时是始太古代，冥古宙熔化的地壳已经固化。已知最早的生命形式是细菌的微化石。研究人员普遍认为，目前地球上的生命来自于RNA世界 尽管基于RNA的生命可能不是第一种存在的生命。地球上最早的生物证据是在西格陵兰发现的37亿年前变质岩中的生物物质石墨，及西澳洲34.8亿年前砂岩中的远古生物化石。不过很多研究推测地球在更早之前就已有生命。根据其中一种研究，可能在42.5亿年前就已有生命，另一个研究则认为是44亿年前。目前仍不确定地球上产生生命的机制，不过已有许多的生命起源假说。生命形成后，变成许多不同的形式，生物学家则将其分类成许多分类单元的体系。生命可以在许多不同的条件下生存。

## 生命现象

新陈代谢和自我复制的能力有时被视为判断生命的根本条件，称之为生命现象。有生命现象的蛋白质分子为朊病毒，为最原始的生命物质，如疯牛病朊病毒，可感染脑细胞，并自行复制遗传。病毒在有寄主可寄生的时候，会表现出生命现象；但在没有寄主可寄生的时候，不会表现生命现象，所以病毒是介于生命与非生命之间的一种奇妙的有机物。

## 定义

生命没有公认定义，不同的科学家曾提出过各种定义。

### 传统定义

科学家经常认为只有生物体会展现以下全部现象：

- 恒定性：能够调节体内环境以维持身体处于一个相对恒定的状态，例如恒温动物能发汗来降低过热的体温，也能靠发抖来产生额外的热量以保持体温。
- 组织性：由一个或以上的生物基本单位──细胞所组成。
- 新陈代谢：能够转换非生物为细胞成分（组成代谢）以及分解有机物（分解代谢）来获取和转化能量。生物体需要能量来维持体内平衡及产生其他生命现象。
- 生长：使组成代谢的速率高于分解代谢的速率来让细胞体积增大，并在细胞分裂后使细胞成长。一个生长中的有机体增加其细胞的数量和体积，而不止是将得到的物质积存起来。某些物种的个体可以长得很巨大，例如蓝鲸。
- 适应：对环境变化作出反应的能力，与生物当前的身体构造、生活习性及遗传有关。这种能力对生存是很重要的。生物可以通过进化适应环境。
- 感应：反应可以以很多方式进行，从单细胞变形虫被触碰时的收缩到高等生物在不同情况下的复杂反射。最常见的反应是运动，例如植物的叶片转向太阳以及动物追捕其猎物。
- 繁殖：能够产生新的个体。包括只需一个亲本的无性生殖和需要至少两个亲本的有性生殖。

大部分科学家称这样的现象为生命的表现方式。通常必须具备全部七个特征才能被视作生命。

但是，这个定义也有局限性。例如：有些生物体不能繁殖，因为它们是正常物种中自然形成的。这些生物体仍是生命。有些人说生命的特性是可遗传的；因此，这些不能繁殖的有机体也还是有生命的，它们仍可以通过亲属选择等机理来产生新个体。

有些人认为病毒和朊毒体（能够进行自我复制的蛋白质）是可以自行复制的毒素而不是生命体，因为它们不能在没有其他细胞的情况下表现出生命现象。但是，立克次体和衣原体等有类似细菌的细胞结构的生物也不能独立执行很多重要的生物过程，它们也要进入真核生物宿主细胞的细胞质内进行生长和自我复制。另外，几乎所有的生命都倚赖其他物种提供食物，并且归根结底需要地球上某些细胞的特殊化学作用来提供能量源，如光合作用和海底热泉细菌的硫化作用。

具系统性的生命定义是，生物是自我组织并自我制造的。这些物质不与耗散结构混淆（如：火）。

这个定义变种包括了斯图亚特·考夫曼定义生命为能够复制自己或他人的一种自主主体（autonomous agent）或一种多主体系统（multi-agent system），并最少完成一次热力学循环。

## 起源

<image>

尽管不能准确地找到确实时间，但有证据表现地球上的生命已存在了大约37亿年。

虽然没有标准表示生命起源的模型，但现时最为公认的科学模型建立于一个或更多包括下面的发现之上，可以粗略地列出有以下假设：

- 模拟真实的史前生物环境以制造形成生命的基本细小分子。这已由米勒-尤里实验以及Sidney W. Fox的工作所证明。
- 磷脂自发地形成脂双分子层，而脂双层是细胞膜的基本结构。
- 制造随机核糖核酸分子的过程可能制造出核酶，而可以在非常特殊的环境下制造更多核糖核酸。

很多不同的假说认为早期地球上的简单有机分子能够转变为原始细胞并进行新陈代谢。很多模型可分为“先有基因”或“先有新陈代谢”两类，但最近流行的混合模型并不属于任何一类。现时所推测的生命历史还有很多疑点，生命的起源对科学家而言仍是一个很大的谜团。

## 外星生命

在宇宙中，地球是人类已知的唯一存有生命的星球。德雷克公式可以估算其他地方出现生命的几率，但科学家不同意很多公式中变量的值（严格地说，德雷克公式计算的是处于银河系中且我们可能接触的外星生物的数量，而不是有生命的几率）。取决于不同的值，方程式可以暗示生命的形成是频繁或稀少的。德雷克计算我们在任何时间可能接触的外星生命只有1个。

有关地球生命的起源，胚种论也被称为外源性起源认为生命来自宇宙，通过陨石、彗星或宇宙尘等天体到达地球。但是这些理论对解释生命的起源没有帮助。

## 终结

即生命体之死亡阶段或状态。以人类为例，一般以呼吸及心脏跳动停止和脑部完全停止活动（非暂时性的停止）为判定死亡的标准。

生命体的死亡可以是因为细胞分裂的次数达到极限而衰亡，也可以是被毒素、自然灾害或其他生物杀死。

任何一个个体的死亡并不会威胁物种的存在，反而是维持物种延续的重要环节。如果年老的个体永远不死，新的个体会失去生存空间和生存必需的资源。但个体大量死亡至难以维持繁殖时，物种就可能灭绝。

已经死亡的细胞不能重建生命活动。已经死亡的生物个体不能复活。这是生命的基本特征之一。

## 外部链接

- Wikispecies - 维基网上生命字典（英）
程序设计

<image>

计算机程序设计，或称程式设计，是给程序解决出特定问题的过程，软件开发过程中的重要步骤。程序设计方法往往以某种程序设计语言为工具，给出这种语言下的程序。程序设计过程一般包括分析、设计、编码、测试、除错等不同阶段。

## 发展历程

在计算机技术发展的早期，软件开发主要就是程序设计。但随着技术的发展，软件系统越来越复杂，逐渐分化出许多专用的软件系统，如操作系统、数据库系统、应用服务器，而且这些专用的软件系统愈来愈成为普遍的系统环境的一部分。这种情况下软件开发的内容越来越丰富，不再只是纯粹的程序设计，还包括数据库设计、用户界面设计、通信协议设计和复杂的系统配置过程。

空间方面，在早期，由于机器资源比较昂贵，如何缩小储存空间往往是设计关心的首要重点；而随着硬件技术的飞速发展，电脑上资料储存媒体的价格降低，空间不再是考虑的第一要点，一些较耗时的运算也渐渐发展出以空间换取时间的模式。

时间方面，在早期，如何加强程式效率、缩短程式执行时间是程序员的共同目标；而在硬件效能进步、效率差距缩小，软件规模与复杂度却日益增加的现在，程序的结构、可维护性、重复使用性、弹性等因素更显得重要。在多人合作的程式设计专案里，程序员们会加上各种注解以协助其他参与者理解程式码，但却因能达到较好的沟通并提高程式码的可维护性，而成为目前的主流。

然而，随着智能手机等携带装置的兴起，执行时间的缩短与储存空间的有效运用再次成为焦点，形成与主机服务器类型应用程序不同的重点考虑方向。

## 设计工具

- 开发环境
- 源代码编辑器、编译器、解释器、调试工具
- 集成开发环境
- 可视化开发环境
- 计算机辅助软件工程

## 图像展览

<image>

- 早期IBM 402会计电脑的程式是用改变线路连接的方式来撰写

<image>

- GNAT程式设计软件

<image>

- 中华民国经济部举办的手机程式设计比赛

## 外部链接

- Computers/Programming
计算机程序

```c
#include <stdio.h>
int main(void) {
    printf("Hello world!\n");
    return 0;
}
```

```java
public class HelloWorld {
    public static void main(String[] args){
        System.out.println("Hello World!");
    }
}
```

```csharp
using System;

    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");
        }
    }
```

```python3
print("Hello World!")
```

```c
#include <iostream>
int main()
{
    std::cout<<"Hello World!"<<endl;
    return 0;
}
```

计算机程序（computer program）是指一组指示电子计算机或其他具有讯息处理能力的电子装置每一步动作的指令，通常用某种程序设计语言编写，运行于某种目标体系结构上。打个比方，一个程序就像一个用汉语（程序设计语言）写下的红烧肉菜谱（程序源代码），用于指导懂汉语的人（体系结构）来做这个菜。计算机程序是软件的一个组成部分，它还包括文档和其他无形组成部分。通常，以英文文本为基础的计算机程序要经过编译和连结而成为一种人们不易看清而计算机可解读的一连串数字的格式，然后放入运行。这种程序也叫作编译语言。未经编译就可运行的程序，通常称之为脚本程序（script）或解释型语言。

## 程序的运行

为了一个程序运行，计算机加载程序代码，可能还要加载数据，从而初始化成一个开始状态，然后调用某种启动机制。在最低层上，这些是由一个载入器开始的。

在大多数计算机中，操作系统例如Windows等，加载并且执行很多程序。在这种情况下，一个计算机程序是指一个单独的可执行的映射，而不是当前在这个计算机上运行的全部程序。

程序里的指令都是基于机器语言。程序通常由一个计算机程序设计语言编写，然后由该语言的编译器（或者，有时由汇编程序）编译为机器语言。

## 冯诺依曼体系结构（普林斯顿结构）

冯·诺伊曼结构又做普林斯顿结构，在一台基于最常见的冯诺依曼体系结构的计算机上，程序从某种外部设备，通常是硬盘，被加载到计算机之内。如果计算机选择冯诺依曼体系结构，那么程序就被加载入内存。指令序列顺序执行，直到一条跳转或转移指令被执行，或者一个中断出现。所有这些指令都会改变指令寄存器的内容。

基于这种体系的计算机，如果没有程序的支持，将无法工作。一个计算机程序是一系列指令的集合。

程序里的指令都是基于机器语言；程序通常首先用一种计算机程序设计语言编写，然后用编译器或者直译器翻译成机器语言。有时，也可以用汇编语言编程，汇编语言实质就是表示机器语言的一组记号－在这种情况下，用于翻译的程序叫做汇编程序。

## 程序和数据

数据可以被定义为被程序处理的信息。当我们考虑到整个计算机系统时，有时程序和数据的区别就不是那么明显了。中央处理器有时有一组微指令控制硬件，数据可以是一个有待执行的程序（参见脚本编程语言），程序可以编写成去编写其它的程序；所有这些例子都使程序和数据的比较成为一种视角的选择。有人甚至断言程序和数据没有区别。

编写一个程序去生成另外一个程序的过程被称之为元编程（Metaprogramming）。它可以被应用于让程序根据给定数据生成代码。单单一个程序可能不足以表示给定数据的所有方面。让一个程序去分析这个数据并生成新的程序去处理数据所有的方面可能会容易一些。Lisp就是一例支持这种编程模式的程序语言。

在神经网络里储存的权重是一种数据。正是这些权重数据，跟网路的拓扑结构一起，定义了网络的行为。人们通常很难界定这些数据到底表示什么或者它们是否可以由程序来代替。这个例子以及跟人工智能相关的其它一些问题进一步考验程序和数据的区别。

## 算法

算法指解决某个问题的严格方法，通常还需辅以某种程度上的运行性能分析。算法可以是纯理论的，也可以由一个计算机程序实现。理论算法通常根据复杂性分为不同类别；实现的算法通常经过剖析（Profiling）以测试其性能。请注意虽然一个算法在理论上有效可行，但是一个糟糕的算法仍会浪费宝贵的计算机资源。（更详细信息，参见算法信息论（Algorithmic Information Theory））

## 开发

编写程序是以下步骤的一个往复过程：编写新的源代码，测试、分析和提高新编写的代码以找出语法和语义错误。从事这种工作的人叫做程序员。由于计算机的飞速发展，编程的要求和种类也日趋多样，由此产生了不同种类的程序设计员，每一种都有更细致的分工和任务。软件工程师和系统分析员就是两个例子。现在，编程的长时间过程被称之为“软件开发”或者软件工程。后者也由于这一学科的日益成熟而逐渐流行。

因此，如今程序设计员可以指某一领域的编程专家，也可以泛指软件公司里编写一个复杂软件系统里某一块的一般程序员。一组为某一软件公司工作的程序员有时会被指定一个程序组长或者项目经理，用以监督项目进度和完成日期。大型软件通常经历由系统设计师掌握的一个长时间的设计阶段，然后才交付给开发人员。牛仔式的编程（未经详细设计）是不为人所齿的。

两种当今常见的程序开发方式之一是项目组开发方式。使用这种方式项目组里每一个成员都能对项目的进行发表意见，而由其中的某一个人协调不同意见。这样的项目组通常有15个左右的成员，这样做是为了便于管理。第二种开发方式是结对开发。

## 参考文献

- Eric Baum What is Thought MIT Press 2004年 ISBN 0-262-02548-5
- - Chapter Two: The Mind is a Computer Program
历史学家

历史学家，又称历史家、史学家、史家，是指以撰写历史著作为职业或对历史学的创立、发展与应用付出努力的知识分子。

## 概念

历史学家包括历史记录的编撰者和史料的研究者。人们研究历史必须倚靠前人所留下的记录。历史学家会研究过去所发生的事件和这些事件记录的真确性，并将他们的研究记录下来。历史学家的研究对象可以是某人的经历，某城市、某地或某国家的发展。根据他们不同的研究对象，历史可有不同的分类，例如：个人历史，是有关某人过去发生的事做研究；地方历史，是有关某城市或某地曾发生事件的研究；世界历史，是有关世界各地过去事件的研究。

## 古中国历史

在古代中国，历史学的传统主要是以历史编撰的形式创立和发展的，在西汉历史编撰者司马迁之后，唐代的刘知几开创了另外一种门类的工作，即对历史编撰这项工作本身的研究（史学）。在宋代，开始了以往的历史记录为材料的针对“历史”的研究活动。在清代，也有史学家刘鹗研究商代甲骨文。

## 古希腊/罗马历史

而在古希腊/罗马，历史学家向来被视为文学家的一种，撰写历史的首务是将人物或事件写的生动，甚至某些“修饰”是被认为理所当然的。

## 历史分析

历史分析的过程比较复杂，牵涉到研究、调查和分析不能同时接受的构想、事实和传说去设一致的讲法去解释“发生什么事”、“怎么样发生”和“为什么发生”。现代的历史分析常利用很多其他社会科学，包括经济学、社会学、政治学、心理学、人类学、哲学和语言学。
开放源代码

开放源代码（Open Source）是一种在电脑程序出品前和开发中提供其内部程式码的做法。

开放源代码在互联网上获得广泛使用，参加者需要大量更新电脑源代码。开放源代码使得生产模组、通讯管道、互动社群获得改善。随后，一个新著作权、软件授权条款、域名和消费者提供建立的，一个新词开源软件诞生。

开源模型概念包括同时间不同时程和方法来生产，相对而言，更加集中式的软体设计模型，例如典型的商业软体公司。一个开源软体开发的主要原则和惯例是易货贸易和合作的同侪生产，经由免费公开的最终产品、原始资讯、蓝图和文件。这逐渐应用在其它领域，例如生物技术。

## 历史

开放源代码的概念和免费分享技术资讯，在电脑诞生前存在很长的一段时间。例如食谱共享从人类文化一开始就有。开放源代码能够用在商业技术上的电脑和软体。

在汽车发展的初期，二行程引擎的专利被资产家乔治·赛尔登所垄断。借由掌握这项专利，能够垄断市场，或是对于竞争者提出侵权诉讼。然而，汽车制造商亨利·福特在1911年挑战这项专利，其结果使得这项专利变成几乎一文不值，并形成新的关联，催生出汽车制造商协会。

1998年，提姆·奥莱理召开了一次开放源代码会议，包括BSD阵营与Linux社群的中坚份子都参与其中。因为自由软件基金会提出的自由软件（Free Software）可能与免费软件造成混淆，在会议中，决议以克里斯蒂娜·彼得森提出的Open Source作为共通名称。

## 开源软件列表

### 应用软件

<image>

<image>

三维绘图及渲染

- Blender

整合式开发环境

- Eclipse
- Lazarus

图像处理

- GIMP

视频编辑

- OpenShot
- Kdenlive

桌面出版

- Scribus

绘图软件

- Krita
- LibreCAD
- FreeCAD

矢量图形编辑器

- Inkscape

数位声波编辑

- Ardour
- Audacity
- OpenAL

纯文字编辑器

- Emacs
- Vim

电子邮件客户端

- Mozilla Thunderbird

虚拟地球

- NASA World Wind

线上直播

- Open Broadcaster Software

桌面搜寻游戏引擎

- Godot

### 操作系统

<image>

- MINIX——为Linux之前的操作系统。
- Linux——类Unix操作系统家族。
- Android——基于Linux的操作系统。
- Firefox OS——基于Linux的操作系统。
- FreeBSD——类Unix的操作系统。
- OpenIndiana——类Unix操作系统家族。
- ReactOS——建立在Windows NT架构的操作系统。
- Haiku——与BeOS相容的操作系统。

### 程式语言

- Perl——一种通用的程式语言。
- PHP——适用于网络开发的程式语言。
- Python——一种通用的程式语言。
- Ruby——一种通用的程式语言。
- Go——一种通用的程式语言。
- Rust——一种通用的程式语言。
- Swift——一种支援多编程范式，编译式编程语言。
- Java——一种通用的程式语言。
- Scratch——为初学者而设的电脑程序开发平台。

### 服务器软件

- Apache HTTP Server——一种网页服务器。
- Drupal——内容管理系统。
- Joomla!——内容管理系统。
- MediaWiki——执行于维基百科的Wiki引擎。
- MongoDB——档案导向数据库管理系统
- Moodle——课程管理系统、虚拟学习环境。

### 电脑硬件

- Arduino——单芯片微电脑，由艺术家、设计师、业余爱好者所使用。

## 开源可乐

开源可乐是一种开放可乐配方，任何人都能够轻易地获取它的配方并对其做出修改。开源可乐发行运动的最初目的是推广自由和开源软件。

## 外部链接

- 开放源代码促进会
- 《开源软件文集》
- 台湾中央研究院 自由软件铸造场
- 中国的LUPA开源社区 供参考
- OSMSG开源资讯
- 10 things people get wrong about open source (images) （10个对于开源码的错误印象）
- 自由开源软件侵权警告与因应流程
- DARPA Open Catalog - 美国国防高等研究计划署
运算数学

运算数学是数学的一个分支，研究的内容包括设计和分析算法以及数学建模等，目的是为了在实际工程中利用快速稳定的算法得到精确值的近似值。在运算机科学高度发展的今天，其基础运算理论的发展使运算数学进入现代化阶段。

## 运算数学的几个主要方面

- 逼近论与函数逼近
- 非线性方程求解
- 矩阵及特征值理论
- 最优化及其算法
- 微分方程及其数值解
- 建立在上面基础之上的数学建模及其应用

## 延伸阅读

- R. E. White (2003), Computational Mathematics: Models, Methods, and Analysis with MATLAB, Chapman and Hall. ISBN 978-1-58488-364-7
- X. S. Yang (2008), Introduction to Computational Mathematics, World Scientific, (2008). ISBN 978-9812818171
- G. Strang (2007), Computational Science and Engineering, Wiley. ISBN 978-0961408817

## 外部链接

- Princeton Program in Applied and Computational Mathematics
- Applied and Computational Mathematics, Caltech
- Center for Computational Mathematics, University of Colorado Denver
- Scientific Computing and Computational Mathematics Program, Stanford University
- Institute for Computational Science and Engineering, The University of Texas at Austin
- Foundations of Computational Mathematics非利润组织
自然数

自然数（natural numbers）按ISO 80000-2和ISO 2382定义，指非负整数 $( 0, 1, 2, 3, 4, \ldots)$；此定义相同于集合论和计算机科学领域中，认为0属于自然数。但在数论领域中，认为0不属于自然数，因而按数论描述，自然数会同义于正整数。为免歧义，可直接以术语“非负整数”代替自然数称之。

数学中，一般以$\mathbb{N}$代表以自然数组成的集合。自然数集是一个可数的，无上界的无穷集合。非零自然数即指正整数$( 1, 2, 3, 4, \ldots)$。

自然数可用于计数（如：桌子上有“三”个苹果）和定序（如：国内“第三”大城市）。

## 符号

<image>

数学家们使用$N$或$\mathbb{N}$来表示所有自然数的集合。较早的教科书也有使用$J$来表示这一集合的情况。

为了消除是否包含0的歧义，有时通过上、下标的形式表示集合中是否包含0：

- 自然数：$\mathbb{N}_0 = \mathbb{N}^0 = \{0, 1, 2, \dots\}$
- 非零自然数：$\mathbb{N}^* = \mathbb{N}^+ = \mathbb{N}_1 = \mathbb{N}_{>0} = \{1, 2, \dots\}$

## 定义

### 基于序数理论

基于序数理论提出的皮亚诺公理可以得到自然数的许多特性，这五条公理用非形式化的方法叙述如下：

- 0是自然数。
- 每一个确定的自然数a，都有一个确定的后继数a'，a' 也是自然数。
- 对于每个自然数b、c，b=c当且仅当b的后继数=c的后继数。
- 0不是任何自然数的后继数。
- 任意关于自然数的命题，如果证明：它对自然数0是真的，且假定它对自然数a为真时，可以证明对a' 也真。那么，命题对所有自然数都真。

其中，一个数的后继数指紧接在这个数后面的数，例如，0的后继数是1，1的后继数是2等等；公理5保证了数学归纳法的正确性，从而被称为归纳法原理。

### 基于基数理论

在基数理论中，集合论的一般做法是将0定义为空集后，将任一非零自然数看作是所有比该数小的自然数组成的集合，即

$$0 = \{\}, 1 = \{0\}, 2 = \{0,1\}, 3 = \{0,1,2\}, \ldots$$

通过无穷公理，可以得到存在一个只包含全体自然数的自然数集$\mathbb{N}$。

另外，在此定义下，在集合$n$内就有$n$个元素；而若$n$小于$m$，则$n$会是 $m$的子集。

## 性质

### 无限性

自然数的集合是无限集。根据定义，这种无限称为可数无限。可以与自然数建立双射关系的所有集合都具有这种无限性，称作，这个集合的势为$\aleph_0$。

### 可加性

自然数加法可经$a+0=a$及$a+(b+1)=(a+b)+1$递归定义而成。因而得出交换幺半群$(N,+)$，是由$1$生出的自由幺半群，其中幺元为$0$。此幺半群服从消去律，可嵌入一群内：最小的是整数群。

### 可乘性

同理，自然数乘法$\times$可经$a \times 0=0$及$a \times (b+1)=ab+a$ 得出。

### 加乘关系

而$(N, \times)$亦是交换幺半群；$\times$和$+$符合分配律：

$a \times (b+c)=ab+ac$。

### 有序性

我们说$a \le b$当且仅当有自然数$c$使得$a+c=b$。$(N, \le)$是一个良序集，即每个非空子集都有一个最小的自然数。

此序也和加法及乘法兼容，即若$a$，$b$和$c$都是自然数且$a \le b$，则$a+c \le b+c$及$ac \le bc$。

### 可除性

给定两个自然数$a$和$b$，其中$b \ne 0$，可找到唯一的两个自然数$q$及$r$使得

$$a=bq+r,\ 0\le r < q$$

$q$称为“商数”而$r$称为“余数”。若$r=0$，则称$a$可被$b$整除，记为$b|a$。

相关概念有辗转相除、质数及其它数论概念。

## 历史与0的争议

自然数由数数而起。古希腊人最早研究其抽象特性，当中毕达哥拉斯主义更视之为宇宙之基本。其它古文明也对其研究作出极大贡献，尤其以印度对0的接受，为人称道。

零早于公元前400年被巴比伦人用作数字使用。玛雅人于公元200年将零视为数字，但未与其它文明有所交流。现代的观念由印度学者婆罗摩笈多于公元628年提出，经阿拉伯人传至欧洲。欧洲人一开始仍对零作为数字感到抗拒，认为零不是一个“自然”数。不过历史上也有人把0包括在自然数之内，例如这两本18世纪的法国书籍。

19世纪末，集合论者给自然数一个较严谨的定义。据此定义，把零（对应于空集）包括于自然数内更为方便。逻辑论者及计算机科学家，接受集合论者的定义。而其他一些数学家，主要是数论学家，则依从传统把零拒之于自然数之外。

在全球范围内，目前针对0是否属于自然数的争论依旧存在。

在中国大陆，2000年左右之前的中小学教材一般不将0列入自然数之内，或称其属于“扩大的自然数列”。在2000年左右之后的新版中小学教材中，普遍将0列入自然数。

认为自然数不包含零的其中一个理由是自然数所指为自然界中存在的数，例如一棵大树、两条鱼、十亿个细胞等等，而鲜少有人说零个物品。

国际标准ISO 31-11:1992《量和单位 第十一部分：物理科学和技术中使用的数学标志与符号》（已被ISO/IEC 80000-2取代）中，从集合论角度规定：符号 $\mathbb{N}$ 所表示的自然数集是包括正整数和0。

中国大陆于1993年制定的强制性国家标准《物理科学和技术中使用的数学符号》(GB 3102.11-93)参照国际标准ISO 31-11规定：$\mathbb{N}$表示“非负整数集；自然数集”，$\mathbb{N}=\{0,1,2,3,\ldots\}$。但自2017年3月23日起，该标准转化为推荐性标准，不再强制执行。

## 推广

自然数用于计数时称之为基数，用于定序时称之为序数。基数用于判定集合的大小，序数用作排列。

对于有限序列或有限集合，序数及基数皆与自然数同。
数域

数域（number field）又称数体，是近世代数学中常见的概念，指对加减乘除四则运算封闭的代数结构。通常定义的数域是指复数域$\mathbb{C}$的子域。“数域”一词有时也被用作代数数域的简称，但两者的定义有细微的差别。

## 定义

设$\mathcal{P}$是复数域$\mathbb{C}$的子集。若$\mathcal{P}$中包含0与1，并且$\mathcal{P}$中任两个数的和、差、乘积以及商（约定除数不为0）都仍在$\mathcal{P}$中，就称$\mathcal{P}$为一个数域。用域论的话语来说，复数域的子域是为数域。

任何数域都包括有理数域$\mathbb{Q}$，但并不一定是$\mathbb{Q}$的有限扩张，因此数域不一定是代数数域。例如实数域$\mathbb{R}$和复数域$\mathbb{C}$都不是代数数域。反之，每个代数数域都同构于某个数域。

## 例子

除了常见的实数域$\mathbb{R}$和复数域$\mathbb{C}$以外，通过在有理数域中添加特定的无理数进行扩张得到的扩域也是数域。例如所有形同：

$$a + b\sqrt{2}, \; \; a, b \in \mathbb{Q}$$

数的集合，就是一个数域。可以验证，任何两个这样的数，它们的和、差、乘积以及商（约定除数不为0）都能写成$a+b\sqrt{2}$的形式，故仍然在集合之中。这个集合记作$\mathbb{Q}(\sqrt{2})$，是有理数域$\mathbb{Q}$的二次扩域。

### 可构造数

可构造数也叫规矩数，指的是从给定的单位长度开始，能够通过有限次标准的尺规作图步骤做出的长度数值。所有可构造数的集合记为$\mathcal{C}$，是一个数域。因为给定了两个已经做出的线段后，可以通过符合尺规作图规定的手段，在有限步内作出长度为两者长度之和、差、乘积以及商的线段。$\mathcal{C}$是$\mathbb{Q}$的扩域，次数为无限大，是实数域$\mathbb{R}$的子域。

### 代数数

代数数指能够成为某个有理系数多项式的根的数。所有代数数的集合记作$\mathcal{A}$，是一个数域。$\mathcal{A}$也常被称为代数数域，但与定义为“$\mathbb{Q}$的有限扩张”的代数数域是不同的概念。不过，每个$\mathbb{Q}$的有限扩张生成的域都可看作是$\mathbb{Q}$中加入某个代数数扩成的，所以都是$\mathcal{A}$的子域。可构造数构成的数域$\mathcal{C}$也是$\mathcal{A}$的子域。由于虚数单位i也是代数数，所以$\mathcal{A}$不是$\mathbb{R}$的子域。另一方面，自然对数的底e以及圆周率π都不是代数数，所以$\mathbb{R}$也不是$\mathcal{A}$的子域

$\mathcal{A}$

$\mathbb{R}$

$\mathcal{A}$。