Documentation

Acmoi.Exercise1_11

def power' (u : List (Fin 2)) (k : ) :
List (Fin 2)
Equations
Instances For
    theorem power_length' (u : List (Fin 2)) (k : ) :
    (power' u k).length = k * u.length
    Equations
    Instances For
      def c' :
      List (Fin 2)
      Equations
      Instances For
        def primitive' (x : List (Fin 2)) :
        Equations
        Instances For
          theorem short_primitive' (x : List (Fin 2)) (h : x.length 1) :
          theorem repeat_is_power' {k : } :
          List.replicate k.succ.succ 0 = power' [0] k.succ.succ
          theorem List_nil_length :
          [].length = 0
          theorem List_ne_nil (x : List (Fin 2)) (h : x.length 0) :
          x []
          theorem middle_of_List_repeat {b : Fin 2} {v : List (Fin 2)} {u : List (Fin 2)} :
          List.replicate (u.length + v.length).succ 1 = u ++ b :: vb = 1
          theorem why_01n_is_primitive (u : List (Fin 2)) (v : List (Fin 2)) (a : Fin 2) (b : Fin 2) (h : 0 :: List.replicate (u.length + v.length).succ 1 = a :: u ++ b :: v) :
          a = 0 b = 1
          theorem power_manipulations (l : ) {u : List (Fin 2)} {v : List (Fin 2)} {a : Fin 2} (hv : u = a :: v) :
          power' u l.succ.succ = a :: v ++ a :: (v ++ power' u l)
          theorem power_succ (l : ) (u : List (Fin 2)) :
          (power' u l.succ.succ).length = (power' u l).length + u.length + u.length
          theorem length_manipulations {k : } {l : } {u : List (Fin 2)} {v : List (Fin 2)} {a : Fin 2} (hv : u = a :: v) (hu2 : 0 :: List.replicate k.succ 1 = power' u l.succ.succ) :
          0 :: List.replicate (v.length + (v ++ power' u l).length).succ 1 = a :: v ++ a :: (v ++ power' u l)
          theorem primitive_words_of_length_two_or_more (k : ) :
          ∃ (x : List (Fin 2)), x.length = k.succ.succ primitive' x
          theorem succ_succ {n : } (h : n 0) (hn : n 1) :
          ∃ (k : ), n = k.succ.succ
          theorem primitive_words_of_every_length (n : ) :
          ∃ (x : List (Fin 2)), x.length = n primitive' x