Step
*
of Lemma
concat-lifting-loc-3_wf
∀[A,B,C,D:Type]. ∀[f:Id ─→ A ─→ B ─→ C ─→ bag(D)].
(concat-lifting-loc-3(f) ∈ Id ─→ bag(A) ─→ bag(B) ─→ bag(C) ─→ bag(D))
BY
{ (ProveWfLemma
THEN InstLemma `concat-lifting-loc_wf` [⌈D⌉; ⌈3⌉; ⌈λn.[A; B; C][n]⌉; ⌈λn.[a; b; c][n]⌉; ⌈l⌉; ⌈f⌉]⋅
THEN Try (Complete (Auto))
THEN Try (Complete (((MemCD THENA Auto) THEN IntSegCases (-1) THEN Reduce 0 THEN Auto)))
THEN Unfold `funtype` 0⋅
THEN Repeat (((RWO "primrec-unroll" 0 THENM Reduce 0) THEN Auto))) }
Latex:
Latex:
\mforall{}[A,B,C,D:Type]. \mforall{}[f:Id {}\mrightarrow{} A {}\mrightarrow{} B {}\mrightarrow{} C {}\mrightarrow{} bag(D)].
(concat-lifting-loc-3(f) \mmember{} Id {}\mrightarrow{} bag(A) {}\mrightarrow{} bag(B) {}\mrightarrow{} bag(C) {}\mrightarrow{} bag(D))
By
Latex:
(ProveWfLemma
THEN InstLemma `concat-lifting-loc\_wf` [\mkleeneopen{}D\mkleeneclose{}; \mkleeneopen{}3\mkleeneclose{}; \mkleeneopen{}\mlambda{}n.[A; B; C][n]\mkleeneclose{}; \mkleeneopen{}\mlambda{}n.[a; b; c][n]\mkleeneclose{}; \mkleeneopen{}l\mkleeneclose{}; \mkleeneopen{}f\mkleeneclose{}]\mcdot{}
THEN Try (Complete (Auto))
THEN Try (Complete (((MemCD THENA Auto) THEN IntSegCases (-1) THEN Reduce 0 THEN Auto)))
THEN Unfold `funtype` 0\mcdot{}
THEN Repeat (((RWO "primrec-unroll" 0 THENM Reduce 0) THEN Auto)))
Home
Index