Step
*
1
1
of Lemma
decidable-bar-rec_wf
.....assertion..... 
1. B : n:ℕ ⟶ (ℕn ⟶ ℕ) ⟶ ℙ
2. Q : n:ℕ ⟶ (ℕn ⟶ ℕ) ⟶ ℙ
3. bar : ∀s:ℕ ⟶ ℕ. (↓∃n:ℕ. B[n;s])
4. dec : ∀n:ℕ. ∀s:ℕn ⟶ ℕ.  (B[n;s] ∨ (¬B[n;s]))
5. base : ∀n:ℕ. ∀s:ℕn ⟶ ℕ.  (B[n;s] 
⇒ Q[n;s])
6. ind : ∀n:ℕ. ∀s:ℕn ⟶ ℕ.  ((∀m:ℕ. Q[n + 1;s.m@n]) 
⇒ Q[n;s])
⊢ ↓decidable-bar-rec(dec;base;ind;0;seq-normalize(0;⊥)) ∈ Q[0;seq-normalize(0;⊥)]
BY
{ ((Assert ⌜decidable-bar-rec(dec;base;ind;0;seq-normalize(0;⊥)) ∈ Q[0;seq-normalize(0;⊥)] 
            ~ (λn,s. (decidable-bar-rec(dec;base;ind;n;s) ∈ Q[n;s])) 0 seq-normalize(0;⊥)⌝⋅
    THENA (Reduce 0 THEN Auto)
    )
   THEN RWO "-1" 0
   THEN Thin (-1)
   THEN Refine_SquashedBarInduction ℕ B `n1' `s1' `m' `x' `w'⋅
   THEN AllReduce) }
1
1. B : n:ℕ ⟶ (ℕn ⟶ ℕ) ⟶ ℙ
2. Q : n:ℕ ⟶ (ℕn ⟶ ℕ) ⟶ ℙ
3. bar : ∀s:ℕ ⟶ ℕ. (↓∃n:ℕ. B[n;s])
4. dec : ∀n:ℕ. ∀s:ℕn ⟶ ℕ.  (B[n;s] ∨ (¬B[n;s]))
5. base : ∀n:ℕ. ∀s:ℕn ⟶ ℕ.  (B[n;s] 
⇒ Q[n;s])
6. ind : ∀n:ℕ. ∀s:ℕn ⟶ ℕ.  ((∀m:ℕ. Q[n + 1;s.m@n]) 
⇒ Q[n;s])
7. n1 : ℕ
8. s1 : ℕn1 ⟶ ℕ
⊢ B n1 s1 ∈ Type
2
1. B : n:ℕ ⟶ (ℕn ⟶ ℕ) ⟶ ℙ
2. Q : n:ℕ ⟶ (ℕn ⟶ ℕ) ⟶ ℙ
3. bar : ∀s:ℕ ⟶ ℕ. (↓∃n:ℕ. B[n;s])
4. dec : ∀n:ℕ. ∀s:ℕn ⟶ ℕ.  (B[n;s] ∨ (¬B[n;s]))
5. base : ∀n:ℕ. ∀s:ℕn ⟶ ℕ.  (B[n;s] 
⇒ Q[n;s])
6. ind : ∀n:ℕ. ∀s:ℕn ⟶ ℕ.  ((∀m:ℕ. Q[n + 1;s.m@n]) 
⇒ Q[n;s])
7. s1 : ℕ ⟶ ℕ
⊢ ↓∃n1:ℕ. (B n1 seq-normalize(n1;s1))
3
1. B : n:ℕ ⟶ (ℕn ⟶ ℕ) ⟶ ℙ
2. Q : n:ℕ ⟶ (ℕn ⟶ ℕ) ⟶ ℙ
3. bar : ∀s:ℕ ⟶ ℕ. (↓∃n:ℕ. B[n;s])
4. dec : ∀n:ℕ. ∀s:ℕn ⟶ ℕ.  (B[n;s] ∨ (¬B[n;s]))
5. base : ∀n:ℕ. ∀s:ℕn ⟶ ℕ.  (B[n;s] 
⇒ Q[n;s])
6. ind : ∀n:ℕ. ∀s:ℕn ⟶ ℕ.  ((∀m:ℕ. Q[n + 1;s.m@n]) 
⇒ Q[n;s])
7. n1 : ℕ
8. s1 : ℕn1 ⟶ ℕ
9. w : B n1 s1
⊢ decidable-bar-rec(dec;base;ind;n1;s1) ∈ Q[n1;s1]
4
1. B : n:ℕ ⟶ (ℕn ⟶ ℕ) ⟶ ℙ
2. Q : n:ℕ ⟶ (ℕn ⟶ ℕ) ⟶ ℙ
3. bar : ∀s:ℕ ⟶ ℕ. (↓∃n:ℕ. B[n;s])
4. dec : ∀n:ℕ. ∀s:ℕn ⟶ ℕ.  (B[n;s] ∨ (¬B[n;s]))
5. base : ∀n:ℕ. ∀s:ℕn ⟶ ℕ.  (B[n;s] 
⇒ Q[n;s])
6. ind : ∀n:ℕ. ∀s:ℕn ⟶ ℕ.  ((∀m:ℕ. Q[n + 1;s.m@n]) 
⇒ Q[n;s])
7. n1 : ℕ
8. s1 : ℕn1 ⟶ ℕ
9. w : ∀m:ℕ
         (decidable-bar-rec(dec;base;ind;n1 + 1;λx.if x=n1 then m else (s1 x))
          ∈ Q[n1 + 1;λx.if x=n1 then m else (s1 x)])
⊢ decidable-bar-rec(dec;base;ind;n1;s1) ∈ Q[n1;s1]
Latex:
Latex:
.....assertion..... 
1.  B  :  n:\mBbbN{}  {}\mrightarrow{}  (\mBbbN{}n  {}\mrightarrow{}  \mBbbN{})  {}\mrightarrow{}  \mBbbP{}
2.  Q  :  n:\mBbbN{}  {}\mrightarrow{}  (\mBbbN{}n  {}\mrightarrow{}  \mBbbN{})  {}\mrightarrow{}  \mBbbP{}
3.  bar  :  \mforall{}s:\mBbbN{}  {}\mrightarrow{}  \mBbbN{}.  (\mdownarrow{}\mexists{}n:\mBbbN{}.  B[n;s])
4.  dec  :  \mforall{}n:\mBbbN{}.  \mforall{}s:\mBbbN{}n  {}\mrightarrow{}  \mBbbN{}.    (B[n;s]  \mvee{}  (\mneg{}B[n;s]))
5.  base  :  \mforall{}n:\mBbbN{}.  \mforall{}s:\mBbbN{}n  {}\mrightarrow{}  \mBbbN{}.    (B[n;s]  {}\mRightarrow{}  Q[n;s])
6.  ind  :  \mforall{}n:\mBbbN{}.  \mforall{}s:\mBbbN{}n  {}\mrightarrow{}  \mBbbN{}.    ((\mforall{}m:\mBbbN{}.  Q[n  +  1;s.m@n])  {}\mRightarrow{}  Q[n;s])
\mvdash{}  \mdownarrow{}decidable-bar-rec(dec;base;ind;0;seq-normalize(0;\mbot{}))  \mmember{}  Q[0;seq-normalize(0;\mbot{})]
By
Latex:
((Assert  \mkleeneopen{}decidable-bar-rec(dec;base;ind;0;seq-normalize(0;\mbot{}))  \mmember{}  Q[0;seq-normalize(0;\mbot{})] 
                    \msim{}  (\mlambda{}n,s.  (decidable-bar-rec(dec;base;ind;n;s)  \mmember{}  Q[n;s]))  0  seq-normalize(0;\mbot{})\mkleeneclose{}\mcdot{}
    THENA  (Reduce  0  THEN  Auto)
    )
  THEN  RWO  "-1"  0
  THEN  Thin  (-1)
  THEN  Refine\_SquashedBarInduction  \mBbbN{}  B  `n1'  `s1'  `m'  `x'  `w'\mcdot{}
  THEN  AllReduce)
Home
Index