Step
*
2
1
1
1
of Lemma
least-equiv-is-equiv-1
1. [A] : Type
2. [R] : A ⟶ A ⟶ ℙ
3. a : A
4. b : A
5. L : {L:(a:A × b:A × ((R a b) ∨ (R b a))) List| rel_path(A;L;a;b) ∧ 0 < ||L||} 
⊢ {L:(a:A × b:A × ((R a b) ∨ (R b a))) List| rel_path(A;L;b;a) ∧ 0 < ||L||} 
BY
{ (UseWitness ⌜rev(map(λt.let a,b,r = t in <b, a, case r of inl(x) => inr x  | inr(x) => inl x>L))⌝⋅ THEN D -1) }
1
1. A : Type
2. R : A ⟶ A ⟶ ℙ
3. a : A
4. b : A
5. L : (a:A × b:A × ((R a b) ∨ (R b a))) List
6. rel_path(A;L;a;b) ∧ 0 < ||L||
⊢ rev(map(λt.let a,b,r = t in 
             <b, a, case r of inl(x) => inr x  | inr(x) => inl x>L)) ∈ {L:(a:A × b:A × ((R a b) ∨ (R b a))) List| 
                                                                         rel_path(A;L;b;a) ∧ 0 < ||L||} 
Latex:
Latex:
1.  [A]  :  Type
2.  [R]  :  A  {}\mrightarrow{}  A  {}\mrightarrow{}  \mBbbP{}
3.  a  :  A
4.  b  :  A
5.  L  :  \{L:(a:A  \mtimes{}  b:A  \mtimes{}  ((R  a  b)  \mvee{}  (R  b  a)))  List|  rel\_path(A;L;a;b)  \mwedge{}  0  <  ||L||\} 
\mvdash{}  \{L:(a:A  \mtimes{}  b:A  \mtimes{}  ((R  a  b)  \mvee{}  (R  b  a)))  List|  rel\_path(A;L;b;a)  \mwedge{}  0  <  ||L||\} 
By
Latex:
(UseWitness  \mkleeneopen{}rev(map(\mlambda{}t.let  a,b,r  =  t  in  <b,  a,  case  r  of  inl(x)  =>  inr  x    |  inr(x)  =>  inl  x>L))\mkleeneclose{}\mcdot{}  \000CTHEN  D  -1)
Home
Index