Step
*
1
of Lemma
omega_start_wf
1. n : ℕ
2. eqs : {L:ℤ List| ||L|| = (n + 1) ∈ ℤ}  List
3. ineqs : {L:ℤ List| ||L|| = (n + 1) ∈ ℤ}  List
4. xxx : {L:ℤ List| ||L|| = (n + 1) ∈ ℤ}  List?
5. gcd-reduce-eq-constraints([];eqs) = xxx ∈ ({L:ℤ List| ||L|| = (n + 1) ∈ ℤ}  List?)
6. yyy : {L:ℤ List| ||L|| = (n + 1) ∈ ℤ}  List?
7. gcd-reduce-ineq-constraints([];ineqs) = yyy ∈ ({L:ℤ List| ||L|| = (n + 1) ∈ ℤ}  List?)
⊢ case xxx of inl(eqs') => case yyy of inl(ineqs') => inl <eqs', ineqs'> | inr(x) => inr x  | inr(x) => inr x 
  ∈ IntConstraints
BY
{ (DVar `xxx' THEN Reduce 0) }
1
1. n : ℕ
2. eqs : {L:ℤ List| ||L|| = (n + 1) ∈ ℤ}  List
3. ineqs : {L:ℤ List| ||L|| = (n + 1) ∈ ℤ}  List
4. x : {L:ℤ List| ||L|| = (n + 1) ∈ ℤ}  List
5. gcd-reduce-eq-constraints([];eqs) = (inl x) ∈ ({L:ℤ List| ||L|| = (n + 1) ∈ ℤ}  List?)
6. yyy : {L:ℤ List| ||L|| = (n + 1) ∈ ℤ}  List?
7. gcd-reduce-ineq-constraints([];ineqs) = yyy ∈ ({L:ℤ List| ||L|| = (n + 1) ∈ ℤ}  List?)
⊢ case yyy of inl(ineqs') => inl <x, ineqs'> | inr(x) => inr x  ∈ IntConstraints
2
1. n : ℕ
2. eqs : {L:ℤ List| ||L|| = (n + 1) ∈ ℤ}  List
3. ineqs : {L:ℤ List| ||L|| = (n + 1) ∈ ℤ}  List
4. y : Unit
5. gcd-reduce-eq-constraints([];eqs) = (inr y ) ∈ ({L:ℤ List| ||L|| = (n + 1) ∈ ℤ}  List?)
6. yyy : {L:ℤ List| ||L|| = (n + 1) ∈ ℤ}  List?
7. gcd-reduce-ineq-constraints([];ineqs) = yyy ∈ ({L:ℤ List| ||L|| = (n + 1) ∈ ℤ}  List?)
⊢ inr y  ∈ IntConstraints
Latex:
Latex:
1.  n  :  \mBbbN{}
2.  eqs  :  \{L:\mBbbZ{}  List|  ||L||  =  (n  +  1)\}    List
3.  ineqs  :  \{L:\mBbbZ{}  List|  ||L||  =  (n  +  1)\}    List
4.  xxx  :  \{L:\mBbbZ{}  List|  ||L||  =  (n  +  1)\}    List?
5.  gcd-reduce-eq-constraints([];eqs)  =  xxx
6.  yyy  :  \{L:\mBbbZ{}  List|  ||L||  =  (n  +  1)\}    List?
7.  gcd-reduce-ineq-constraints([];ineqs)  =  yyy
\mvdash{}  case  xxx
      of  inl(eqs')  =>
      case  yyy  of  inl(ineqs')  =>  inl  <eqs',  ineqs'>  |  inr(x)  =>  inr  x 
      |  inr(x)  =>
      inr  x    \mmember{}  IntConstraints
By
Latex:
(DVar  `xxx'  THEN  Reduce  0)
Home
Index