Step * 2 1 1 1 of Lemma least-equiv-is-equiv-1


1. [A] Type
2. [R] A ⟶ A ⟶ ℙ
3. A
4. A
5. {L:(a:A × b:A × ((R b) ∨ (R a))) List| rel_path(A;L;a;b) ∧ 0 < ||L||} 
⊢ {L:(a:A × b:A × ((R b) ∨ (R a))) List| rel_path(A;L;b;a) ∧ 0 < ||L||} 
BY
(UseWitness ⌜rev(map(λt.let a,b,r in <b, a, case of inl(x) => inr x  inr(x) => inl x>;L))⌝⋅ THEN -1) }

1
1. Type
2. A ⟶ A ⟶ ℙ
3. A
4. A
5. (a:A × b:A × ((R b) ∨ (R a))) List
6. rel_path(A;L;a;b) ∧ 0 < ||L||
⊢ rev(map(λt.let a,b,r in 
             <b, a, case of inl(x) => inr x  inr(x) => inl x>;L)) ∈ {L:(a:A × b:A × ((R b) ∨ (R 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