Step * 1 of Lemma decidable__squash-list-match


1. [A] Type
2. [B] Type
3. [R] A ⟶ B ⟶ ℙ
4. ∀a:A. ∀b:B.  Dec(R[a;b])
5. ∀bs:B List. ∀as:A List. ∀used:ℤ List.  Dec(↓list-match-aux(as;bs;used;a,b.R[a;b]))
⊢ ∀as:A List. ∀bs:B List.  Dec(↓list-match(as;bs;a,b.R[a;b]))
BY
(Intros THEN (InstHyp [⌜bs⌝;⌜as⌝;⌜[]⌝(-3)⋅ THENA Auto) THEN Repeat (ParallelLast)) }

1
1. Type
2. Type
3. A ⟶ B ⟶ ℙ
4. ∀a:A. ∀b:B.  Dec(R[a;b])
5. ∀bs:B List. ∀as:A List. ∀used:ℤ List.  Dec(↓list-match-aux(as;bs;used;a,b.R[a;b]))
6. as List
7. bs List
8. list-match-aux(as;bs;[];a,b.R[a;b])
⊢ list-match(as;bs;a,b.R[a;b])

2
1. Type
2. Type
3. A ⟶ B ⟶ ℙ
4. ∀a:A. ∀b:B.  Dec(R[a;b])
5. ∀bs:B List. ∀as:A List. ∀used:ℤ List.  Dec(↓list-match-aux(as;bs;used;a,b.R[a;b]))
6. as List
7. bs List
8. list-match(as;bs;a,b.R[a;b])
⊢ list-match-aux(as;bs;[];a,b.R[a;b])


Latex:


Latex:

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.  \mforall{}bs:B  List.  \mforall{}as:A  List.  \mforall{}used:\mBbbZ{}  List.    Dec(\mdownarrow{}list-match-aux(as;bs;used;a,b.R[a;b]))
\mvdash{}  \mforall{}as:A  List.  \mforall{}bs:B  List.    Dec(\mdownarrow{}list-match(as;bs;a,b.R[a;b]))


By


Latex:
(Intros  THEN  (InstHyp  [\mkleeneopen{}bs\mkleeneclose{};\mkleeneopen{}as\mkleeneclose{};\mkleeneopen{}[]\mkleeneclose{}]  (-3)\mcdot{}  THENA  Auto)  THEN  Repeat  (ParallelLast))




Home Index