许创杰2013

布尔值的有限序列和无限序列的模块二氧化碳\开始{代码}{-# 选项--不带-K#-}

模块 准备工作。顺序 哪里

打开 进口 准备工作。集合与函数 躲藏 (_+_)
打开 进口 准备工作。自然编号
打开 进口 准备工作。布尔值\结束{代码}无限序列定义为函数:\开始{代码}₂ℕ : 设置
₂ℕ =   

 : ₂ℕ
  = 
 : ₂ℕ
  = \结束{代码}有限序列定义为向量:\开始{代码}中缀 50_∷_数据 翅片 :   设置 哪里
 ⟨⟩ : 翅片 0
 _∷_ : {n个 : }    翅片 n个  翅片 (成功 n个)

 : {n个 : }  翅片 (成功 n个)  
 (b条  _) = b条

 : {n个 : }  翅片 (成功 n个)  翅片 n个
 (_ Ş ) = 

翅片-≡ : ∀{n个 : } { s’ : 翅片 (成功 n个)}
          选择  s’    选择  s’   选择 s’
翅片-≡ {n个} {x个  X轴} {.x个 Ş .X轴} 回流 回流 = 回流

₀⟩ : 翅片 1
₀⟩ =   ⟨⟩
₁⟩ : 翅片 1
₁⟩ =   ⟨⟩

飞走 : (n个 k个 : )  翅片 (n个 + k个)  翅片 k个
飞走 n个 0        v(v)       = ⟨⟩
飞走 n个 (成功 k个) (小时  t吨) = 小时  飞走 n个 k个 t吨

fdrop公司 : (n个 k个 : )  翅片 (n个 + k个)  翅片 n个
f下降 n个 0        v(v)       = v(v)
fdrop公司 n个 (成功 k个) (小时  t吨) = fdrop公司 n个 k个 t吨

 : ( : )  ₂ℕ  翅片 
 0 α = ⟨⟩
 (成功 n个) α = α 0   n个 (α  成功)

 :   ₂ℕ  ₂ℕ
 0 α = α
 (成功 ) α =   (α  成功)

引理[drop+] : ∀(n个 : )  ∀(α : 二氧化碳)  ∀( : )   n个 α  选择 α ( + n个)
引理[滴漏+] 0        α  = 回流
引理[drop+] (成功 n个) α  = 引理[drop+] n个 (α  成功) 

同构-翅片 : ∀(X(X) : 设置)  ∀(n个 : )  ((f) : 翅片 (成功 n个)  X(X)) 
                    Σ \( :   翅片 n个  X(X)) 
                     ∀( : 翅片 (成功 n个))  (f)  选择  ( ) ( )
同构-翅片 X(X) n个 (f) =   公共关系基金
 哪里
   :   翅片 n个  X(X)
   b条  = (f) (b条  )
  公共关系基金 : ∀( : 翅片 (成功 n个))  (f)  选择  ( ) ( )
  公共关系基金 (b条  ) = 回流

max-fin(最大值) : {n个 : }  ((f) : 翅片 n个  ) 
           Σ \( : )  ∀( : 翅片 n个)  (f)   
max-fin(最大值) {0} (f) = ((f) ⟨⟩)  公共关系基金
 哪里
  公共关系基金 : ∀( : 二氧化碳翅片 0)  (f)   (f) ⟨⟩
  公共关系基金 ⟨⟩ = ≤-回流
max-fin(最大值) {成功 n个} (f) =   公共关系基金
 哪里
   :   翅片 n个  
   = 公共关系 (同构-翅片  n个 (f))
   : 
   = 公共关系 (max-fin(最大值) ( ))
  prf公司 : ∀( : 二氧化碳翅片 n个)      
  公共关系基金 = 公共关系 (max-fin(最大值) ( ))
   : 
   = 公共关系 (max-fin(最大值) ( ))
  公共关系基金 : ∀( : 翅片 n个)      
  公共关系基金 = 公共关系 (max-fin(最大值) ( ))
   : 
   = 最大值  
  公共关系基金 : ∀( : 翅片 (成功 n个))  (f)   
  公共关系基金 (  ) = ≤-反式 (公共关系基金 ) (最大光谱  )
  公共关系基金 (  ) = ≤-反式 (公共关系基金 ) (最大光谱  )\结束{代码}无限序列上的逐点等式:\开始{代码}中缀 10_≣__≣_ : ₂ℕ  ₂ℕ  设置
α  β = ∀( : )  α  选择 β 

引理[\8803;-take] : ∀(n个 : )  ∀(α β : ₂ℕ)  α  β   n个 α 选择  n个 β
引理[\8803;-take] 0        α β e(电子) = 回流
引理[\8803;-take] (成功 n个) α β e(电子) = 翅片-≡ (e(电子) 0) (引理[\8803;-take] n个 (α  成功) (β  成功)    e(电子) (成功 )))

引理[\8803;-drop] : ∀(n个 : )  ∀(α β : ₂ℕ)  α  β   n个 α   n个 β
引理[\8803;-drop] 0        α β e(电子) = e(电子)
柠檬[≣-滴] (成功 n个) α β e(电子) = 柠檬[≣-滴] n个 (α  成功) (β  成功)    e(电子) (成功 ))\结束{代码}无限序列上的“Agree with”关系,这是一个等价关系
关系和可判定类型:\开始{代码}中缀 10_≡[_]_数据 _≡[_]_ {X(X) : 设置} : (  X(X))    (  X(X))  设置 哪里
 ≡[零] : {α β :   X(X)}  α ≡[ 0 ] β
 ≡[成功] : {α β :   X(X)}{n个 : }  α ≡[ n个 ] β  α n个 选择 β n个  α ≡[ 成功 n个 ] β

≡[]ref : {n个 : }{α : ₂ℕ}  α ≡[ n个 ] α
≡[]ref {0}      = ≡[零]
≡[]ref {成功 n个} = ≡[成功] ≡[]ref 回流

≡[]-sym : {n个 : }{α β : ₂ℕ}  α ≡[ n个 ] β  β ≡[ n个 ] α
≡[]-sym {0}      ≡[零]        = ≡[零]
≡[]-sym {成功 n个} (选择[成功] 英语 e(电子)) = ≡[成功] (≡[]-sym 英语) (e(电子) ¹)

≡[]-反式 : {n个 : }{α α α : ₂ℕ}  α ≡[ n个 ] α  α ≡[ n个 ] α  α ≡[ n个 ] α
lect[]-反式 {0}      ≠[零]        ≡[零]          = ≡[零]
≡[]-反式 {成功 n个} (≡[成功] 英语 e(电子)) (≡[成功] 恩' e’) = ≡[成功] (≡[]-反式 英语 恩') (e(电子) · e’)

引理[≡[suc]] : {α β : ₂ℕ}{n个 : }  α ≡[ 成功 n个 ] β  α ≡[ n个 ] β
引理[≡[suc]] (≡[成功] 英语 _) = 英语

引理[≡[suc]] : {α β : ₂ℕ}{n个 : }  α ≡[ 成功 n个 ] β  α n个 选择 β n个
引理[≡[suc]] (≡[成功] _ e(电子)) = e(电子)

引理[≡[]-可判定] : { : }  ∀(α β : ₂ℕ)  可判定的 (α ≡[  ] β)
引理[lect[]-可判定] {0}      α β = 英制 ≡[零]
引理[≡[]-可判定] {成功 } α β = 案例 声称 声称 IH公司
 哪里
  IH公司 : 可判定的 (α ≡[  ] β)
  IH公司 = 引理[≡[]-可判定] {} α β
  声称 : α ≡[  ] β  可判定的 (α ≡[ 成功  ] β)
  声称 相对长度单位 = 案例 c(c) c(c) (₂-离散的 (α ) (β ))
   哪里
    c(c) : α  选择 β   可判定的 (α ≡[ 成功  ] β)
    c(c) e(电子) = 英制 (≡[成功] 相对长度单位 e(电子))
    c(c) : ¬ (α  选择 β )  可判定的 (α ≡[ 成功  ] β)
    c(c) (f) = 内部收益率  e(电子)  (f) (引理[≡[suc]] e(电子)))
  声称 : ¬ (α 选择[  ] β)  可判定的 (α 选择[ 成功  ] β)
  声称 (f) = 内部收益率  e(电子)  (f)(引理[≡[suc]] e(电子)))

引理[≡[]-zero] : ∀{n个 : }{α β : ₂ℕ}  α ≡[ 成功 n个 ] β  α 0 选择 β 0
引理[≡[]-zero] {0}      (≡[成功] ≡[零] e(电子)) = e(电子)
引理[≡[]-zero] {成功 n个} (≡[成功] 英语 e(电子))      = 引理[≡[]-zero] 英语

引理[≡[]-suck] : ∀{n个 : }{α β : ₂ℕ}  α ≡[ 成功 n个 ] β  (α  成功) ≡[ n个 ] (β  成功)
引理[≡[]-suck] {0}      _              = ≡[零]
引理[≡[]-suck] {成功 n个} (≡[成功] 英语 e(电子)) = ≡[成功] (引理[≡[]-suck] 英语) e(电子)\结束{代码}以下引理给出了_≡[_]_的等价定义:\开始{代码}引理[<-≡[]] : ∀{n个 : }{α β : ₂ℕ}  (∀( : )   < n个  α  选择 β )  α ≡[ n个 ] β
引理[<-≡[]] {0}        {α} {β} (f) = ≠[零]
引理[<-≡[]] {(成功 n个)} {α} {β} (f) = ≡[成功] IH公司 声称
 哪里
  f’ : ∀( : )   < n个  α  选择 β 
  f’  第页 = (f)  (≤-反式 第页 (引理[n≤n+1] n个))
  IH公司 : α ≡[ n个 ] β
  IH公司 = 引理[<-≡[]] {n个} {α} {β} f’
  声称 : α n个 选择 β n个
  声称 = (f) n个 ≤-回流

引理[≡[]-<] : ∀{n个 : }{α β : ₂ℕ}  α ≡[ n个 ] β  ∀( : )   < n个  α  选择 β 
引理[≡[]-<] {0}      _         ()
引理[≡[]-<] {成功 n个} e(电子) 0        第页          = 引理[lect[]-zero] e(电子)
引理[lect[]-<] {成功 n个} e(电子) (成功 ) (≤-succ 第页) = 引理[≡[]-<] (引理[≡[]-suck] e(电子))  第页\结束{代码}关于_≡[_]_的一些有用引理:\开始{代码}引理[≡[]-≤] : ∀{n个  : }{α β : ₂ℕ}  α ≡[ n个 ] β    n个  α ≡[  ] β
引理[≡[]-≤] {n个} {} {α} {β} 英语 第页 = 引理[<-≡[]] 声称
 哪里
  声称 : ∀( : )   < n个  α  选择 β 
  声称 = 引理[≡[]-<] 英语
  声称 : ∀( : )   <   α  选择 β 
  声称  r’ = 声称  (≤-反式 r’ 第页)

引理[≡[]-take] : ∀{n个 : }{α β : ₂ℕ}  α ≡[ n个 ] β   n个 α 选择  n个 β
引理[≡[]-take] {0}      {α} {β} _  = 回流
引理[≡[]-take] {成功 n个} {α} {β} 英语 = 翅片-≡ 基础 IH公司
 哪里
  基础 : α 0 选择 β 0
  基础 = 引理[≡[]-zero] 英语
  IH公司 :  n个 (α  成功) 选择  n个 (β  成功)
  IH公司 = 引理[≡[]-take] (引理[≡[]-suck] 英语)

引理[≡[]-drop] : ∀{n个  : }{α β : ₂ℕ}  α ≡[ n个 +  ] β   n个 α ≡[  ]  n个 β
引理[≡[]-drop] {n个} {0}      {α} {β} _               = ≠[零]
引理[≡[]-drop] {n个} {成功 } {α} {β} (≡[成功] 环境管理 e(电子)) = ≡[成功] IH公司 声称
 哪里
  IH公司 :  n个 α ≡[  ]  n个 β
  IH公司 = 引理[≡[]-drop] 环境管理
  声称 :  n个 α  选择 α (n个 + )
  声称 = 运输  k个   n个 α  选择 α k个) (引理[n+m=m+n]  n个) (引理[drop+] n个 α )
  声称 :  n个 β  选择 β (n个 + )
  声称 = 运输  k个   n个 β  选择 β k个) (引理[n+m=m+n]  n个) (引理[drop+] n个 β )
  声称 :  n个 α  选择  n个 β 
  声称 = 声称 · e(电子) · 声称 ¹\结束{代码}级联图:\开始{代码}欺骗 : { : }  二氧化碳翅片   二氧化碳  ₂ℕ
欺骗 ⟨⟩      α          = α 
欺骗 (小时  _) α 0        = 小时
欺骗 (_  t吨) α (成功 ) = 欺骗 t吨 α 

欺骗 : ₂ℕ  ₂ℕ
欺骗 α 0        = 
欺骗 α (成功 ) = α 
欺骗 : ₂ℕ  ₂ℕ
欺骗 α 0        = 
欺骗 α (成功 ) = α 

引理[cons-take-drop] : ∀(n个 : )  ∀(α : ₂ℕ)  欺骗 ( n个 α) ( n个 α)  α
引理[cons-take-drop] 0        α         = 回流
引理[cons-take-drop] (成功 n个) α 0        = 回流
引理[cons-take-drop] (成功 n个) α (成功 ) = 引理[cons-take-drop] n个 (α  成功) 

引理[cons-≣] : ∀{ : }  ∀( : 翅片 )  ∀(α β : ₂ℕ)  α  β  欺骗  α  欺骗  β
引理[cons-≣] ⟨⟩      α β 等式         = 等式 
引理[cons-≣] (小时  _) α β 等式 0        = 回流
引理[缺点-≣] (_  t吨) α β 等式 (成功 ) = 引理[cons-≣] t吨 α β 等式 

莱马-布拉 : {n个 : }( : 翅片 n个)(α β : ₂ℕ)( : )   < n个  欺骗  α  选择 欺骗  β 
莱马-布拉 ⟨⟩      α β         ()
莱马-布拉 (b条  ) α β 0        第页          = 回流
引理等等 (b条 Ş ) α β (成功 ) (≤-succ 第页) = 莱马-布拉  α β  第页

引理[cons-≡[]] : ∀{n个 : }  ∀( : 翅片 n个)  ∀(α β : ₂ℕ)  欺骗  α ≡[ n个 ] 欺骗  β
引理[cons-≡[]]  α β = 引理[<-≡[]] (莱马-布拉  α β)

引理[cons-take-≡[]] : ∀(n个 : )  ∀(α β : ₂ℕ)  α ≡[ n个 ] 欺骗 ( n个 α) β
引理[cons-take-≡[]] n个 α β = 引理[<-≡[]] (引理 n个 α β)
 哪里
  引理 : ∀(n个 : )  ∀(α β : ₂ℕ)  ∀( : )   < n个  α  选择 欺骗 ( n个 α) β 
  引理 0        α β         ()
  引理 (成功 n个) α β 0        第页          = 回流
  引理 (成功 n个) α β (成功 ) (≤-succ 第页) = 引理 n个 (α  成功) β  第页

引理[cons-fake-fdrop] : ∀(n个 k个 : )  ∀( : 翅片 (n个 + k个))  ∀(α : ₂ℕ) 
                          欺骗 (飞走 n个 k个 ) (欺骗 (fdrop公司 n个 k个 ) α)  欺骗  α
引理[cons-fake-fdrop] n个 0               α         = 回流
引理[cons-fake-fdrop] n个 (成功 k个) (b条  _) α 0        = 回流
引理[cons-fake-fdrop] n个 (成功 k个) (_ Ş ) α (成功 ) = 引理[cons-fake-fdrop] n个 k个  α 

引理[cons-fake-fdrop]² : ∀(n个   k个 : )  (等式 : k个 选择  + ) 
                            ∀( : 翅片 (k个 + n个))  ∀(α : ₂ℕ) 
    欺骗 (飞走 k个 n个 ) 
         (欺骗 (飞走   (运输 翅片 等式 (fdrop公司 k个 n个 )))
               (欺骗 (fdrop公司   ((运输 翅片 等式 (f下降 k个 n个 )))) α))
   欺骗  α
引理[cons-fake-fdrop]² n个   k个 等式  α = 目标
 哪里
  不锈钢 : 翅片 k个
  不锈钢 = fdrop公司 k个 n个 
  ss’ : 翅片 ( + )
  ss’ = 运输 翅片 等式 不锈钢
   : ( : )  翅片    设置
    t吨 = 欺骗 (飞走 k个 n个 ) (欺骗 t吨 α)  欺骗  α
  声称 : 欺骗 (飞走 k个 n个 ) (欺骗 不锈钢 α)  欺骗  α
  声称 = 引理[cons-fake-fdrop] k个 n个  α
  声称 : 欺骗 (飞走 k个 n个 ) (欺骗 ss’ α)  欺骗  α
  声称 = 运输² 翅片  等式 声称
  声称 : 欺骗 (飞走   ss’) (欺骗 (fdrop公司   ss’) α)  欺骗 ss’ α
  声称二氧化碳 = 引理[cons-fake-fdrop]   ss’ α
  声称 :  欺骗 (飞走 k个 n个 ) (欺骗 (飞走   ss’) (欺骗 (fdrop公司   ss’) α))
           欺骗 (飞走 k个 n个 ) (欺骗 ss’ α)
  声称 = 引理[缺点-≣] (自由贸易区 k个 n个 )
                         (欺骗 (飞走   ss’) (欺骗 (fdrop公司   ss’) α))
                         (欺骗 ss’ α) 声称
  目标 : 欺骗 (飞走 k个 n个 ) (欺骗 (飞走   ss’) (欺骗 (fdrop公司   ss’) α))  欺骗  α
  目标  = (声称 ) · (声称 )

引理[cons-≡[]-≤] : {n个  : }{α β : ₂ℕ}  ( : 翅片 n个)    n个  欺骗  α ≡[  ] 欺骗  β
引理[cons-≡[]-≤] _ ≤-零     = ≡[零]
引理[cons-≡[]-≤]  (≤-succ 第页) = ≡[成功] (引理[cons-≡[]-≤]  (≤-r-suck 第页)) (引理  第页)
 哪里
  引理 : {n个  : }{α β : ₂ℕ}  ( : 翅片 (成功 n个))    n个  欺骗  α  选择 欺骗  β 
  引理 (b条  ) ≤-零     = 回流
  引理 (b条  ) (≤-succ 第页) = 引理  第页

引理[lect[]-cons take] : {α β : ₂ℕ}  ∀(n个 : )  α ≡[ n个 ] 欺骗 ( n个 α) β
引理[≡[]-cons-take] {α} {β} n个 = 引理 n个 n个 ≤-回流
 哪里
  引理 : ∀(α β : ₂ℕ)( k个 : )  成功   k个  α  选择 欺骗 ( k个 α) β 
  引理 α β         0        ()
  引理 α β 0        (成功 k个) 第页          = 回流
  引理 α β (成功 ) (成功 k个) (≤-succ 第页) = 引理 (α  成功) β  k个 第页
  引理 : ∀( k个 : )    k个  α ≡[  ] 欺骗 ( k个 α) β
  引理 0        k个        ≤-零     = ≡[零]
  引理 (成功 ) 0        ()
  引理 (成功 ) (成功 k个) (≤-succ 第页) = ≡[成功] (引理  (成功 k个) (≤-r-suck 第页))
                                                (引理 α β  (成功 k个) (≤-succ 第页))

引理[≡[]-≡[]-take] : {α β γ : ₂ℕ}  ∀(n个 : )  α ≡[ n个 ] β  β 选择[ n个 ] 欺骗 ( n个 α) γ
引理[lect[]-lect[]-取] n个 英语 = ≡[]-反式 (≡[]-sym 英语) (引理[≡[]-cons-take] n个)

引理[cons-take-0] : {α β : ₂ℕ}  ∀(n个 : )  β 0 选择 欺骗 ( n个 α) β n个
引理[cons-take-0]  0       = 回流
引理[cons-take-0] (成功 n个) = 引理[cons-take-0] n个\结束{代码}覆盖地图:\开始{代码}覆盖 : ₂ℕ      ₂ℕ
覆盖 α 0        b条 0        = b条
覆盖 α 0        b条 (成功 ) = α (成功 )
覆盖 α (成功 n个) b条 0        = α 0
覆盖 α (成功 n个) b条 (成功 ) = 覆盖 (α  成功) n个 b条 

引理[overwrite] : ∀(α : ₂ℕ)  ∀(n个 : )  ∀(b条 : )  覆盖 α n个 b条 n个 选择 b条
引理[overwrite] α 0        b条 = 回流
引理[overwrite] α (成功 n个) b条 = 引理[overwrite] (α  成功) n个 b条

引理[改写-≠] : ∀(α : ₂ℕ)  ∀(n个 : )  ∀(b条 : )  ∀( : )    n个  α  选择 覆盖 α n个 b条 
引理[overwrite-≠] α 0        b条 0        第页 = ∅-埃利姆 (第页 回流)
引理[overwrite-≠] α 0        b条 (成功 ) 第页 = 回流
引理[overwrite-≠] α (成功 n个) b条 0        第页 = 回流
引理[overwrite-≠] α (成功 n个) b条 (成功 ) 第页 = 引理[overwrite-≠] (α  成功) n个 b条   e(电子)  第页 (应用程序 成功 e(电子)))

引理[overwrite-≡[]] : ∀(α : 二氧化碳)  ∀(n个 : )  ∀(b条 : 二氧化碳)  α ≡[ n个 ] 覆盖 α n个 b条
引理[overwrite-≡[]] α n个 b条 = 引理[<-≡[]] 声称
 哪里
  声称 : ∀( : )   < n个  α  选择 覆盖 α n个 b条 
  声称  第页 = 引理[overwrite-≠] α n个 b条  (引理[m<nm≠n] 第页)\结束{代码}由有限序列索引的可判定集族的乘积,
也是可以决定的。\开始{代码}引理[财务可判定性] : (n个 : )  (Y(Y) : 翅片 n个  设置)
                          (∀   可判定的 (Y(Y) ))  可判定的 (∀   Y(Y) )
引理[财务可判定性] 0 Y(Y) 12月 = 案例 c(c) c(c) (12月 ⟨⟩)
 哪里
  c(c) : Y(Y) ⟨⟩     Y(Y) 
  c(c)  ⟨⟩ = 
  c(c) : ¬ (Y(Y) ⟨⟩)  ¬ (∀   Y(Y) )
  c(c) (f)  = (f) ( ⟨⟩) 
引理[财务可判定性] (成功 n个) Y(Y) 十二月 = 案例 c(c) c(c) IH公司
 哪里
  Y(Y) : 翅片 n个  设置
  Y(Y)  = Y(Y) (  )
  12月 :    可判定的 (Y(Y) )
  12月  = 12月 (  )
  IH公司 : 可判定的 (∀   Y(Y) )
  IH公司 = 引理[财务可判定性] n个 Y(Y) 12月
  Y(Y) : 二氧化碳翅片 n个  设置
  Y(Y)  = Y(Y) ( Ş )
  12月 :    可判定的 (Y(Y) )
  12月  = 12月 (  )
  IH公司 : 可判定的 (∀   Y(Y) )
  IH公司 = 引理[财务可判定性] n个 Y(Y) 12月
  c(c) : (∀   Y(Y) )  可判定的 (∀   Y(Y) )
  c(c)  = 案例 供应链 供应链 IH公司
   哪里
    供应链 : (∀   Y(Y) )     Y(Y) 
    供应链  (  ) =  
    供应链  (  ) =  
    供应链 : ¬ (∀   Y(Y) )  ¬ (∀   Y(Y) )
    供应链 (f)  = (f)     (  ))
  c(c) : ¬ (∀   Y(Y) )  可判定的 (∀   Y(Y) )
  c(c) (f) = 内部收益率    (f)     (  )))\结束{代码}