Step
*
2
1
of Lemma
iterate-rotate-by
1. n : ℕ
2. i : ℕ
3. k : ℤ
4. 0 < k
5. rotate-by(n;i)^k - 1 = rotate-by(n;(k - 1) * i) ∈ (ℕn ⟶ ℕn)
⊢ (λx.(rotate-by(n;i) (rotate-by(n;(k - 1) * i) x))) = rotate-by(n;k * i) ∈ (ℕn ⟶ ℕn)
BY
{ ((Assert (rotate-by(n;i) o rotate-by(n;(k - 1) * i)) = rotate-by(n;k * i) ∈ (ℕn ⟶ ℕn) BY
          (RWO "compose-rotate-by" 0 THEN Auto))
   THEN Auto
   ) }
Latex:
Latex:
1.  n  :  \mBbbN{}
2.  i  :  \mBbbN{}
3.  k  :  \mBbbZ{}
4.  0  <  k
5.  rotate-by(n;i)\^{}k  -  1  =  rotate-by(n;(k  -  1)  *  i)
\mvdash{}  (\mlambda{}x.(rotate-by(n;i)  (rotate-by(n;(k  -  1)  *  i)  x)))  =  rotate-by(n;k  *  i)
By
Latex:
((Assert  (rotate-by(n;i)  o  rotate-by(n;(k  -  1)  *  i))  =  rotate-by(n;k  *  i)  BY
                (RWO  "compose-rotate-by"  0  THEN  Auto))
  THEN  Auto
  )
Home
Index