Lean 域
在数学中,**域(Field)**是一种代数结构,它扩展了环的概念,并引入了除法的操作。域是一个具有加法和乘法两种运算的集合,并且满足特定的公理。在Lean中,域的概念被形式化,使得我们可以在定理证明中使用它。
什么是域?
域是一个集合 ,配备了两个二元运算:加法()和乘法(),并且满足以下公理:
- 加法交换律:
- 加法结合律:
- 加法单位元:存在一个元素 ,使得
- 加法逆元:对于每一个元素 ,存在一个元素 , 使得
- 乘法交换律:
- 乘法结合律:
- 乘法单位元:存在一个元素 ,使得
- 乘法逆元:对于每一个非零元素 ,存在一个元素 ,使得
- 分配律:
在Lean中,域的定义如下:
class field (F : Type*) extends comm_ring F, has_inv F :=
(zero_ne_one : (0 : F) ≠ 1)
(mul_inv_cancel : ∀ {a : F}, a ≠ 0 → a * a⁻¹ = 1)
代码示例
让我们来看一个简单的例子,定义一个域并验证其性质:
import algebra.field
-- 定义一个域
example : field ℚ := by apply_instance
-- 验证域的性质
example (a b : ℚ) : a + b = b + a :=
begin
exact add_comm a b
end
在这个例子中,我们使用了Lean的field
类来定义有理数域 ,并验证了加法的交换律。