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 2) i^(n ÷ 2) 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 ÷ 2) rem m)
7. : ℕ
⊢ i^n (i^(n rem 2) i^(n ÷ 2) 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 ÷ 2) rem m)
7. : ℕ
8. i^n (i^(n rem 2) i^(n ÷ 2) i^(n ÷ 2)) ∈ ℤ
⊢ eval n' n ÷ in
  eval exp-rem(i;n';m) in
    if rem 2=0 then rem 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