Step
*
1
of Lemma
decidable__list-match
.....decidable?..... 
1. [A] : Type
2. [B] : Type
3. [R] : A ⟶ B ⟶ ℙ
4. ∀a:A. ∀b:B.  Dec(R[a;b])
5. as : A List
6. bs : B List
⊢ Dec(list-match(as;bs;a,b.R[a;b]))
BY
{ (Assert list-match(as;bs;a,b.R[a;b]) 
⇐⇒ list-match-aux(as;bs;[];a,b.R[a;b]) BY
         (Auto THEN D -1 THEN ExRepD THEN D 0 With ⌜f⌝  THEN Auto)) }
1
1. [A] : Type
2. [B] : Type
3. [R] : A ⟶ B ⟶ ℙ
4. ∀a:A. ∀b:B.  Dec(R[a;b])
5. as : A List
6. bs : B List
7. list-match(as;bs;a,b.R[a;b]) 
⇐⇒ list-match-aux(as;bs;[];a,b.R[a;b])
⊢ Dec(list-match(as;bs;a,b.R[a;b]))
Latex:
Latex:
.....decidable?..... 
1.  [A]  :  Type
2.  [B]  :  Type
3.  [R]  :  A  {}\mrightarrow{}  B  {}\mrightarrow{}  \mBbbP{}
4.  \mforall{}a:A.  \mforall{}b:B.    Dec(R[a;b])
5.  as  :  A  List
6.  bs  :  B  List
\mvdash{}  Dec(list-match(as;bs;a,b.R[a;b]))
By
Latex:
(Assert  list-match(as;bs;a,b.R[a;b])  \mLeftarrow{}{}\mRightarrow{}  list-match-aux(as;bs;[];a,b.R[a;b])  BY
              (Auto  THEN  D  -1  THEN  ExRepD  THEN  D  0  With  \mkleeneopen{}f\mkleeneclose{}    THEN  Auto))
Home
Index