Step * of Lemma exp-rem-property

[m:ℕ+]. ∀[n,i:ℕ].  (exp-rem(i;n;m) i^n rem m)
BY
((D THENA Auto)
   THEN CompleteInductionOnNat
   THEN RecUnfold `exp-rem` 0
   THEN Reduce 0
   THEN CaseNat `n'
   THEN Reduce 0
   THEN Try (Trivial)
   THEN (CaseNat `n'
         THEN Reduce 0
         THEN Try ((RepUR ``exp`` THEN Complete (Auto)))
         THEN (InstHyp [⌜n ÷ 2⌝3⋅ THENA (Auto THEN (MemTypeCD THEN Auto) THEN BLemma `div_mono1`  THEN Auto))
         THEN (D THENA Auto)
         THEN Assert ⌜i^n (i^n rem i^n ÷ i^n ÷ 2) ∈ ℤ⌝⋅)) }

1
.....assertion..... 
1. : ℕ+
2. : ℕ
3. ∀n:ℕn. ∀[i:ℕ]. (exp-rem(i;n;m) i^n rem m)
4. ¬(n 0 ∈ ℤ)
5. ¬(n 1 ∈ ℤ)
6. ∀[i:ℕ]. (exp-rem(i;n ÷ 2;m) i^n ÷ rem m)
7. : ℕ
⊢ i^n (i^n rem i^n ÷ i^n ÷ 2) ∈ ℤ

2
1. : ℕ+
2. : ℕ
3. ∀n:ℕn. ∀[i:ℕ]. (exp-rem(i;n;m) i^n rem m)
4. ¬(n 0 ∈ ℤ)
5. ¬(n 1 ∈ ℤ)
6. ∀[i:ℕ]. (exp-rem(i;n ÷ 2;m) i^n ÷ rem m)
7. : ℕ
8. i^n (i^n rem i^n ÷ i^n ÷ 2) ∈ ℤ
⊢ eval n' n ÷ in
  eval exp-rem(i;n';m) in
    if rem 2=0  then rem m  else (i rem m) i^n rem m


Latex:


Latex:
\mforall{}[m:\mBbbN{}\msupplus{}].  \mforall{}[n,i:\mBbbN{}].    (exp-rem(i;n;m)  \msim{}  i\^{}n  rem  m)


By


Latex:
((D  0  THENA  Auto)
  THEN  CompleteInductionOnNat
  THEN  RecUnfold  `exp-rem`  0
  THEN  Reduce  0
  THEN  CaseNat  0  `n'
  THEN  Reduce  0
  THEN  Try  (Trivial)
  THEN  (CaseNat  1  `n'
              THEN  Reduce  0
              THEN  Try  ((RepUR  ``exp``  0  THEN  Complete  (Auto)))
              THEN  (InstHyp  [\mkleeneopen{}n  \mdiv{}  2\mkleeneclose{}]  3\mcdot{}
                          THENA  (Auto  THEN  (MemTypeCD  THEN  Auto)  THEN  BLemma  `div\_mono1`    THEN  Auto)
                          )
              THEN  (D  0  THENA  Auto)
              THEN  Assert  \mkleeneopen{}i\^{}n  =  (i\^{}n  rem  2  *  i\^{}n  \mdiv{}  2  *  i\^{}n  \mdiv{}  2)\mkleeneclose{}\mcdot{}))




Home Index