在精益类定义中扩展或推断(PID / UFD)


狗头军师
2025-03-09 05:18:55 (7天前)

为什么mathlib对UFD的定义是这样的:


  1. class unique_factorization_domain : Type) [integral_domain α] :=
    (factors : α multiset α)
    (factors_prod : ∀{a : α}, a 0 (factors a).prod ~ᵤ a)
    (prime_factors : ∀{a : α}, a 0 xfactors a, prime x)

(要求通过类型类推断来推断积分域结构),但它对PID的定义是:


  1. class principal_ideal_domain : Type) extends integral_domain α :=
    (principal : (S : ideal α), S.is_principal)

扩展积分域结构?有什么区别?旧的结构命令与此有关吗?

2 条回复
  1. 1# v-star*위위 | 2020-08-19 15-54

    从关于精益聊天的讨论中,我的印象是,由于与类型类推断有关的细微原因,扩展类可能更好,因此,也许需要重构UFD的定义。

登录 后才能参与评论